Function Graph 0Basic Block 0Opcode: 55sub_804a140:Opcode: 55push    ebpOpcode: 53push    ebxOpcode: 57push    ediOpcode: 56push    esiOpcode: 83 ec 2csub     esp0x2c {var_3c}Opcode: 31 f6xor     esiesi  {0x0}Opcode: 8b 6c 24 44mov     ebpdword [esp+0x44 {arg_8}]Opcode: 85 edtest    ebpebpOpcode: 0f 88 bf 04 00 00js      0x804a614Basic Block 1Opcode: 89 f0mov     eaxesiOpcode: 83 c4 2cadd     esp0x2c {var_10}Opcode: 5epop     esiOpcode: 5fpop     ediOpcode: 5bpop     ebxOpcode: 5dpop     ebpOpcode: c3retn    Basic Block 2Opcode: 8b 7c 24 40mov     edidword [esp+0x40 {arg_4}]Opcode: 83 c5 03add     ebp0x3Opcode: 89 ebmov     ebxebpOpcode: 83 e3 fcand     ebx0xfffffffcOpcode: 83 fb 03cmp     ebx0x3Opcode: 77 11ja      0x804a177Basic Block 3Opcode: 83 fb 0fcmp     ebx0xfOpcode: 77 1cja      0x804a198Basic Block 4Opcode: 8b 07mov     eaxdword [edi]Opcode: 85 c0test    eaxeaxOpcode: 74 50je      0x804a1bcBasic Block 5Opcode: 81 fb ff ff 01 00cmp     ebx0x1ffffOpcode: 77 32ja      0x804a1d2Basic Block 6Opcode: c1 ed 02shr     ebp0x2Opcode: 8b 44 af fcmov     eaxdword [edi+ebp*4-0x4]Opcode: 85 c0test    eaxeaxOpcode: 0f 84 84 00 00 00je      0x804a20fBasic Block 7Opcode: 8b 87 0c 12 00 00mov     eaxdword [edi+0x120c]Opcode: 85 c0test    eaxeaxOpcode: 74 64je      0x804a22aBasic Block 8Opcode: 8b 08mov     ecxdword [eax]Opcode: 89 0fmov     dword [edi]ecxOpcode: 89 c6mov     esieaxOpcode: e9 9d 04 00 00jmp     0x804a614Basic Block 9Opcode: 81 c3 07 10 00 00add     ebx0x1007Opcode: 81 e3 00 f0 ff ffand     ebx0xfffff000Opcode: 8d 44 24 28lea     eax[esp+0x28] {var_14}Opcode: 89 44 24 08mov     dword [esp+0x8 {var_34}]eaxOpcode: 89 1c 24mov     dword [esp {var_3c}]ebxOpcode: c7 44 24 04 00 00 00 00mov     dword [esp+0x4 {var_38}]0x0Opcode: e8 93 1e 00 00call    sub_804c089Opcode: 85 c0test    eaxeaxOpcode: 0f 85 16 04 00 00jne     0x804a614Basic Block 10Opcode: 83 c3 17add     ebx0x17Opcode: 89 ddmov     ebpebxOpcode: 83 e5 f0and     ebp0xfffffff0Opcode: 83 fd 0fcmp     ebp0xfOpcode: 0f 87 f4 00 00 00ja      0x804a2a5Basic Block 11Opcode: 8b 84 af 08 12 00 00mov     eaxdword [edi+ebp*4+0x1208]Opcode: 85 c0test    eaxeaxOpcode: 0f 84 9e 00 00 00je      0x804a2bcBasic Block 12Opcode: 8b 08mov     ecxdword [eax]Opcode: 89 4c af fcmov     dword [edi+ebp*4-0x4]ecxOpcode: 89 c6mov     esieaxOpcode: e9 7c 04 00 00jmp     0x804a614Basic Block 13Opcode: 8b 9f 18 12 00 00mov     ebxdword [edi+0x1218]Opcode: 85 dbtest    ebxebxOpcode: 0f 84 1a 01 00 00je      0x804a352Basic Block 14Opcode: 0f b7 50 02movzx   edxword [eax+0x2]Opcode: 0f b7 08movzx   ecxword [eax]Opcode: e9 aa 00 00 00jmp     0x804a27cBasic Block 15Opcode: 8b 74 24 28mov     esidword [esp+0x28 {var_14}]Opcode: 89 3emov     dword [esi]ediOpcode: 89 5e 04mov     dword [esi+0x4]ebxOpcode: 83 c6 08add     esi0x8Opcode: e9 05 04 00 00jmp     0x804a614Basic Block 16Opcode: 81 fd 00 02 00 00cmp     ebp0x200Opcode: 0f 87 8b 00 00 00ja      0x804a33cBasic Block 17Opcode: 89 ebmov     ebxebpOpcode: c1 eb 02shr     ebx0x2Opcode: 4bdec     ebxOpcode: e9 e2 01 00 00jmp     0x804a39eBasic Block 18Opcode: 8b 97 18 12 00 00mov     edxdword [edi+0x1218]Opcode: 85 d2test    edxedxOpcode: 0f 84 6f 02 00 00je      0x804a539Basic Block 19Opcode: 0f b7 50 02movzx   edxword [eax+0x2]Opcode: 0f b7 08movzx   ecxword [eax]Opcode: e9 e2 00 00 00jmp     0x804a30cBasic Block 20Opcode: 8d 44 24 20lea     eax[esp+0x20] {var_1c}Opcode: 89 44 24 08mov     dword [esp+0x8 {var_34}]eaxOpcode: c7 44 24 04 00 00 00 00mov     dword [esp+0x4 {var_38}]0x0Opcode: c7 04 24 00 00 20 00mov     dword [esp {var_3c}]0x200000Opcode: e8 1b 1d 00 00call    sub_804c089Opcode: 85 c0test    eaxeaxOpcode: 0f 84 f6 01 00 00je      0x804a56cBasic Block 21Opcode: 8b 8f 1c 12 00 00mov     ecxdword [edi+0x121c]Basic Block 22Opcode: 8d 34 10lea     esi[eax+edx]Opcode: 83 c2 04add     edx0x4Opcode: 66 89 50 02mov     word [eax+0x2]dxOpcode: 0f b7 c2movzx   eaxdxOpcode: 01 c8add     eaxecxOpcode: 3d 01 10 00 00cmp     eax0x1001Opcode: 0f 8c 7e 03 00 00jl      0x804a614Basic Block 23Opcode: 81 fd 00 12 00 00cmp     ebp0x1200Opcode: 77 41ja      0x804a385Basic Block 24Opcode: c1 eb 04shr     ebx0x4Opcode: 83 c3 02add     ebx0x2Opcode: e9 e2 00 00 00jmp     0x804a39eBasic Block 25Opcode: 31 c0xor     eaxeax  {0x0}Opcode: 81 fb 82 00 00 00cmp     ebx0x82Opcode: 7f 33jg      0x804a3dbBasic Block 26Opcode: 8d 44 24 20lea     eax[esp+0x20] {var_1c}Opcode: 89 44 24 08mov     dword [esp+0x8 {var_34}]eaxOpcode: c7 44 24 04 00 00 00 00mov     dword [esp+0x4 {var_38}]0x0Opcode: c7 04 24 00 00 20 00mov     dword [esp {var_3c}]0x200000Opcode: e8 34 1b 00 00call    sub_804c089Opcode: 85 c0test    eaxeaxOpcode: 0f 84 c1 00 00 00je      0x804a61eBasic Block 27Opcode: 8b 8f 1c 12 00 00mov     ecxdword [edi+0x121c]Basic Block 28Opcode: 0f b7 d2movzx   edxdxOpcode: 8d 34 10lea     esi[eax+edx]Opcode: 01 d3add     ebxedxOpcode: 66 89 58 02mov     word [eax+0x2]bxOpcode: 0f b7 c3movzx   eaxbxOpcode: 0f b7 c9movzx   ecxcxOpcode: 01 c1add     ecxeaxOpcode: 81 f9 01 10 00 00cmp     ecx0x1001Opcode: 0f 8c e8 02 00 00jl      0x804a614Basic Block 29Opcode: 8b 7c 24 20mov     edidword [esp+0x20 {var_1c}]Opcode: 8d af ff ff 0f 00lea     ebp[edi+0xfffff]Opcode: 89 ebmov     ebxebpOpcode: 81 e3 00 00 f0 ffand     ebx0xfff00000Opcode: 89 d8mov     eaxebxOpcode: 29 f8sub     eaxediOpcode: 76 0cjbe     0x804a590Basic Block 30Opcode: c7 87 18 12 00 00 00 00 00 00mov     dword [edi+0x1218]0x0Opcode: e9 8f 02 00 00jmp     0x804a614Basic Block 31Opcode: ba 04 00 00 00mov     edx0x4Basic Block 32Opcode: c7 87 18 12 00 00 00 00 00 00mov     dword [edi+0x1218]0x0Basic Block 33Opcode: c7 87 0c 12 00 00 00 00 00 00mov     dword [edi+0x120c]0x0Opcode: e9 6f 03 00 00jmp     0x804a614Basic Block 34Opcode: bb 82 00 00 00mov     ebx0x82Opcode: 81 fd 00 00 02 00cmp     ebp0x20000Opcode: 77 1eja      0x804a3b0Basic Block 35Opcode: 8d 9d 00 fe ff fflea     ebx[ebp-0x200]Opcode: c1 eb 07shr     ebx0x7Opcode: 83 c3 22add     ebx0x22Opcode: eb 4cjmp     0x804a39eBasic Block 36Opcode: 81 fb 83 00 00 00cmp     ebx0x83Opcode: 0f 85 dd 00 00 00jne     0x804a4c4Basic Block 37Opcode: 0f 1f 84 00 00 00 00 00mmxnop  dword [eax+eax]Basic Block 38Opcode: 8b 7c 24 20mov     edidword [esp+0x20 {var_1c}]Opcode: 8d 97 ff ff 0f 00lea     edx[edi+0xfffff]Opcode: 89 54 24 1cmov     dword [esp+0x1c {var_20}]edxOpcode: 81 e2 00 00 f0 ffand     edx0xfff00000Opcode: 89 d0mov     eaxedxOpcode: 29 f8sub     eaxediOpcode: 76 14jbe     0x804a64cBasic Block 39Opcode: c7 87 18 12 00 00 00 00 00 00mov     dword [edi+0x1218]0x0Opcode: e9 a8 00 00 00jmp     0x804a614Basic Block 40Opcode: 66 89 d9mov     cxbxOpcode: 66 89 damov     dxbxBasic Block 41Opcode: c7 87 18 12 00 00 00 00 00 00mov     dword [edi+0x1218]0x0Basic Block 42Opcode: c7 84 af 08 12 00 00 00 00 00 00mov     dword [edi+ebp*4+0x1208]0x0Opcode: e9 d8 02 00 00jmp     0x804a614Basic Block 43Opcode: 8d 83 00 00 10 00lea     eax[ebx+0x100000]Opcode: 81 c7 00 00 20 00add     edi0x200000Opcode: 29 c7sub     edieaxOpcode: 76 0cjbe     0x804a5acBasic Block 44Opcode: 89 44 24 04mov     dword [esp+0x4 {var_38}]eaxOpcode: 89 3c 24mov     dword [esp {var_3c}]ediOpcode: e8 13 1b 00 00call    sub_804c0a3Basic Block 45Opcode: 8b 04 9fmov     eaxdword [edi+ebx*4]Opcode: eb 0ejmp     0x804a3c3Basic Block 46Opcode: 8d 9d 00 ee ff fflea     ebx[ebp-0x1200]Opcode: c1 eb 0bshr     ebx0xbOpcode: 83 c3 42add     ebx0x42Basic Block 47Opcode: 8b 70 04mov     esidword [eax+0x4]Opcode: 83 e6 feand     esi0xfffffffeOpcode: 89 70 04mov     dword [eax+0x4]esiOpcode: 8b 48 08mov     ecxdword [eax+0x8]Opcode: 85 c9test    ecxecxOpcode: 74 06je      0x804a4daBasic Block 48Opcode: 8d 44 24 24lea     eax[esp+0x24] {var_18}Opcode: 89 44 24 08mov     dword [esp+0x8 {var_34}]eaxOpcode: c7 44 24 04 00 00 00 00mov     dword [esp+0x4 {var_38}]0x0Opcode: c7 04 24 00 00 20 00mov     dword [esp {var_3c}]0x200000Opcode: e8 86 1c 00 00call    sub_804c089Opcode: 85 c0test    eaxeaxOpcode: 0f 85 09 02 00 00jne     0x804a614Basic Block 49Opcode: 85 c0test    eaxeaxOpcode: 74 09je      0x804a3d0Basic Block 50Opcode: 8d 82 00 00 10 00lea     eax[edx+0x100000]Opcode: 81 c7 00 00 20 00add     edi0x200000Opcode: 29 c7sub     edieaxOpcode: 76 10jbe     0x804a66cBasic Block 51Opcode: 89 44 24 04mov     dword [esp+0x4 {var_38}]eaxOpcode: 89 3c 24mov     dword [esp {var_3c}]ediOpcode: 89 54 24 18mov     dword [esp+0x18 {var_24}]edxOpcode: e8 5b 1a 00 00call    sub_804c0a3Opcode: 8b 54 24 18mov     edxdword [esp+0x18 {var_24}]Basic Block 52Opcode: c1 ed 14shr     ebp0x14Opcode: 8b 7c 24 40mov     edidword [esp+0x40 {arg_4}]Opcode: c6 84 2f 0c 02 00 00 01mov     byte [edi+ebp+0x20c]0x1Opcode: 85 dbtest    ebxebxOpcode: 89 9f 18 12 00 00mov     dword [edi+0x1218]ebxOpcode: 74 4fje      0x804a614Basic Block 53Opcode: 89 7c 24 04mov     dword [esp+0x4 {var_38}]ediOpcode: 89 04 24mov     dword [esp {var_3c}]eaxOpcode: e8 f7 1a 00 00call    sub_804c0a3Basic Block 54Opcode: 8b 50 0cmov     edxdword [eax+0xc]Opcode: 85 d2test    edxedxOpcode: 74 03je      0x804a4e4Basic Block 55Opcode: 8b 50 0cmov     edxdword [eax+0xc]Opcode: 89 51 0cmov     dword [ecx+0xc]edxBasic Block 56Opcode: 8b 7c 24 24mov     edidword [esp+0x24 {var_18}]Opcode: 8d 8f ff ff 0f 00lea     ecx[edi+0xfffff]Opcode: 89 cbmov     ebxecxOpcode: 81 e3 00 00 f0 ffand     ebx0xfff00000Opcode: 89 d8mov     eaxebxOpcode: 29 f8sub     eaxediOpcode: 76 14jbe     0x804a437Basic Block 57Opcode: 43inc     ebxOpcode: 31 c0xor     eaxeax  {0x0}Opcode: 81 fb 83 00 00 00cmp     ebx0x83Opcode: 7c d5jl      0x804a3b0Basic Block 58Opcode: 39 68 04cmp     dword [eax+0x4]ebpOpcode: 72 f4jb      0x804a3c0Basic Block 59Opcode: 8b 44 24 1cmov     eaxdword [esp+0x1c {var_20}]Opcode: c1 e8 14shr     eax0x14Opcode: 8b 7c 24 40mov     edidword [esp+0x40 {arg_4}]Opcode: c6 84 07 0c 02 00 00 01mov     byte [edi+eax+0x20c]0x1Opcode: 85 d2test    edxedxOpcode: 89 97 18 12 00 00mov     dword [edi+0x1218]edxOpcode: 74 8bje      0x804a614Basic Block 60Opcode: 89 7c 24 04mov     dword [esp+0x4 {var_38}]ediOpcode: 89 04 24mov     dword [esp {var_3c}]eaxOpcode: 89 d7mov     ediedxOpcode: e8 39 1a 00 00call    sub_804c0a3Opcode: 89 famov     edxediBasic Block 61Opcode: c7 87 1c 12 00 00 00 00 00 00mov     dword [edi+0x121c]0x0Opcode: 31 c9xor     ecxecx  {0x0}Opcode: e9 68 fc ff ffjmp     0x804a23eBasic Block 62Opcode: 39 04 9fcmp     dword [edi+ebx*4]eaxOpcode: 75 03jne     0x804a4ecBasic Block 63Opcode: 89 4a 08mov     dword [edx+0x8]ecxBasic Block 64Opcode: 8d 83 00 00 10 00lea     eax[ebx+0x100000]Opcode: 81 c7 00 00 20 00add     edi0x200000Opcode: 29 c7sub     edieaxOpcode: 76 10jbe     0x804a457Basic Block 65Opcode: 89 44 24 04mov     dword [esp+0x4 {var_38}]eaxOpcode: 89 3c 24mov     dword [esp {var_3c}]ediOpcode: 89 4c 24 1cmov     dword [esp+0x1c {var_20}]ecxOpcode: e8 70 1c 00 00call    sub_804c0a3Opcode: 8b 4c 24 1cmov     ecxdword [esp+0x1c {var_20}]Basic Block 66Opcode: 8b 40 0cmov     eaxdword [eax+0xc]Basic Block 67Opcode: eb 0djmp     0x804a3dbBasic Block 68Opcode: c7 87 1c 12 00 00 00 00 00 00mov     dword [edi+0x121c]0x0Opcode: 31 c9xor     ecxecx  {0x0}Opcode: e9 36 fc ff ffjmp     0x804a2d0Basic Block 69Opcode: 8d 04 0blea     eax[ebx+ecx]Opcode: 89 87 0c 12 00 00mov     dword [edi+0x120c]eaxOpcode: 66 c7 04 0b 04 00mov     word [ebx+ecx]0x4Opcode: 66 c7 44 0b 02 04 00mov     word [ebx+ecx+0x2]0x4Opcode: 81 c1 00 10 00 00add     ecx0x1000Opcode: 81 f9 00 00 10 00cmp     ecx0x100000Opcode: 89 8f 1c 12 00 00mov     dword [edi+0x121c]ecxOpcode: b9 04 00 00 00mov     ecx0x4Opcode: 75 0ajne     0x804a277Basic Block 70Opcode: 89 f2mov     edxesiOpcode: 29 easub     edxebpOpcode: 83 fa 21cmp     edx0x21Opcode: 0f 82 16 01 00 00jb      0x804a60fBasic Block 71Opcode: 89 14 9fmov     dword [edi+ebx*4]edxBasic Block 72Opcode: c1 e9 14shr     ecx0x14Opcode: 8b 7c 24 40mov     edidword [esp+0x40 {arg_4}]Opcode: c6 84 0f 0c 02 00 00 02mov     byte [edi+ecx+0x20c]0x2Opcode: 85 dbtest    ebxebxOpcode: 0f 84 a6 01 00 00je      0x804a614Basic Block 73Opcode: 89 7c 24 04mov     dword [esp+0x4 {var_38}]ediOpcode: 89 04 24mov     dword [esp {var_3c}]eaxOpcode: 89 cfmov     ediecxOpcode: e8 4e 1c 00 00call    sub_804c0a3Opcode: 89 f9mov     ecxediBasic Block 74Opcode: 8d 04 0alea     eax[edx+ecx]Opcode: 89 84 af 08 12 00 00mov     dword [edi+ebp*4+0x1208]eaxOpcode: 66 89 1c 0amov     word [edx+ecx]bxOpcode: 66 89 5c 0a 02mov     word [edx+ecx+0x2]bxOpcode: b9 00 10 00 00mov     ecx0x1000Opcode: 03 8f 1c 12 00 00add     ecxdword [edi+0x121c]Opcode: 81 f9 00 00 10 00cmp     ecx0x100000Opcode: 89 8f 1c 12 00 00mov     dword [edi+0x121c]ecxOpcode: 75 0ajne     0x804a306Basic Block 75Opcode: 83 c0 08add     eax0x8Opcode: 89 c6mov     esieaxBasic Block 76Opcode: 8d 0c 28lea     ecx[eax+ebp]Opcode: 89 68 04mov     dword [eax+0x4]ebpOpcode: 89 2c 28mov     dword [eax+ebp]ebpOpcode: 89 54 28 04mov     dword [eax+ebp+0x4]edxOpcode: 81 fa 00 02 00 00cmp     edx0x200Opcode: 89 14 06mov     dword [esi+eax]edxOpcode: 77 0bja      0x804a51cBasic Block 77Opcode: 89 d8mov     eaxebxOpcode: 83 c8 10or      eax0x10Opcode: c7 00 00 00 00 00mov     dword [eax]0x0Opcode: 89 d9mov     ecxebxOpcode: 29 c1sub     ecxeaxOpcode: 81 c1 f0 ff 0f 00add     ecx0xffff0Opcode: 89 48 04mov     dword [eax+0x4]ecxOpcode: 81 cb f0 ff 0f 00or      ebx0xffff0Opcode: 89 0bmov     dword [ebx]ecxOpcode: c7 43 04 00 00 00 00mov     dword [ebx+0x4]0x0Opcode: 80 48 04 01or      byte [eax+0x4]0x1Opcode: c7 40 08 00 00 00 00mov     dword [eax+0x8]0x0Opcode: 8b 8f 08 02 00 00mov     ecxdword [edi+0x208]Opcode: 89 48 0cmov     dword [eax+0xc]ecxOpcode: 89 87 08 02 00 00mov     dword [edi+0x208]eaxOpcode: 8b 48 0cmov     ecxdword [eax+0xc]Opcode: 85 c9test    ecxecxOpcode: 74 09je      0x804a4bfBasic Block 78Opcode: 81 fa 00 12 00 00cmp     edx0x1200Opcode: 0f 87 ae 00 00 00ja      0x804a5d6Basic Block 79Opcode: c1 ea 04shr     edx0x4Opcode: 83 c2 02add     edx0x2Opcode: e9 d3 00 00 00jmp     0x804a5efBasic Block 80Opcode: bb 82 00 00 00mov     ebx0x82Basic Block 81Opcode: 89 41 08mov     dword [ecx+0x8]eaxOpcode: 8b 87 08 02 00 00mov     eaxdword [edi+0x208]Basic Block 82Opcode: be 82 00 00 00mov     esi0x82Opcode: 81 fa 00 00 02 00cmp     edx0x20000Opcode: 77 0eja      0x804a5f1Basic Block 83Opcode: 81 c2 00 fe ff ffadd     edx0xfffffe00Opcode: c1 ea 07shr     edx0x7Opcode: 83 c2 22add     edx0x22Opcode: e9 b6 00 00 00jmp     0x804a5efBasic Block 84Opcode: 89 d6mov     esiedxBasic Block 85Opcode: 80 49 04 01or      byte [ecx+0x4]0x1Opcode: c7 41 08 00 00 00 00mov     dword [ecx+0x8]0x0Opcode: 8b 14 b7mov     edxdword [edi+esi*4]Opcode: 89 51 0cmov     dword [ecx+0xc]edxOpcode: 89 0c b7mov     dword [edi+esi*4]ecxOpcode: 8b 51 0cmov     edxdword [ecx+0xc]Opcode: 85 d2test    edxedxOpcode: 74 03je      0x804a60fBasic Block 86Opcode: 81 c2 00 ee ff ffadd     edx0xffffee00Opcode: c1 ea 0bshr     edx0xbOpcode: 83 c2 42add     edx0x42Basic Block 87Opcode: 89 4a 08mov     dword [edx+0x8]ecx