Function Graph 0 Basic Block 0 Opcode: 55sub_804ae6e: Opcode: 55push    ebp Opcode: 89 e5mov     ebp, esp Opcode: 53push    ebx Opcode: 57push    edi Opcode: 56push    esi Opcode: 81 ec 8c 00 00 00sub     esp, data_8c {var_9c} Opcode: 8b 45 24mov     eax, dword [ebp+data_24 {arg_20}] Opcode: 8b 4d 20mov     ecx, dword [ebp+data_20 {arg_1c}] Opcode: 8b 55 1cmov     edx, dword [ebp+data_1c {arg_18}] Opcode: 8b 75 18mov     esi, dword [ebp+0x18 {arg_14}] Opcode: 8b 7d 14mov     edi, dword [ebp+data_14 {arg_10}] Opcode: 8b 5d 10mov     ebx, dword [ebp+data_10 {arg_c}] Opcode: 89 45 9cmov     dword [ebp-0x64 {var_68}], eax Opcode: 8b 45 0cmov     eax, dword [ebp+data_c {arg_8}] Opcode: 89 45 98mov     dword [ebp-0x68 {var_6c}], eax Opcode: 8b 45 08mov     eax, dword [ebp+data_8 {arg_4}] Opcode: 89 45 f0mov     dword [ebp-0x10 {var_14}], eax Opcode: 8b 45 98mov     eax, dword [ebp-0x68 {var_6c}] Opcode: 89 45 ecmov     dword [ebp-0x14 {var_18}], eax Opcode: 89 5d e8mov     dword [ebp-0x18 {var_1c}], ebx Opcode: 89 7d e4mov     dword [ebp-0x1c {var_20}], edi Opcode: 89 75 e0mov     dword [ebp-0x20 {var_24}], esi Opcode: 89 55 dcmov     dword [ebp-0x24 {var_28}], edx Opcode: 89 4d d8mov     dword [ebp-0x28 {var_2c}], ecx Opcode: 8b 4d 9cmov     ecx, dword [ebp-0x64 {var_68}] Opcode: 89 4d d4mov     dword [ebp-0x2c {var_30}], ecx Opcode: c7 45 d0 00 00 00 00mov     dword [ebp-0x30 {var_34}], data_0 Opcode: c7 45 cc 00 00 00 00mov     dword [ebp-0x34 {var_38}], data_0 Opcode: c6 45 cb 00mov     byte [ebp-0x35 {var_39}], 0x0 Opcode: c7 45 c4 00 00 00 00mov     dword [ebp-0x3c {var_40}], data_0 Opcode: 81 7d e0 0a 00 00 00cmp     dword [ebp-0x20 {var_24}], data_a Opcode: 0f 85 37 ff ff ffjne     0x804ae13 Basic Block 1 Opcode: 8d 45 a4lea     eax, [ebp-0x5c] {var_60} Opcode: 8b 4d e4mov     ecx, dword [ebp-0x1c {var_20}] Opcode: 8b 55 e0mov     edx, dword [ebp-0x20 {var_24}] Opcode: 8b 75 d4mov     esi, dword [ebp-0x2c {var_30}] Opcode: 89 0c 24mov     dword [esp {var_9c}], ecx Opcode: 89 54 24 04mov     dword [esp+data_4 {var_98}], edx Opcode: 89 44 24 08mov     dword [esp+data_8 {var_94}], eax Opcode: 89 74 24 0cmov     dword [esp+data_c {var_90}], esi Opcode: e8 48 fd ff ffcall    sub_804ab7b Opcode: 90nop      Opcode: 89 45 c4mov     dword [ebp-0x3c {var_40}], eax Opcode: 8b 4d d0mov     ecx, dword [ebp-0x30 {var_34}] Opcode: 01 c1add     ecx, eax Opcode: 89 4d d0mov     dword [ebp-0x30 {var_34}], ecx Opcode: 81 7d dc 00 00 00 00cmp     dword [ebp-0x24 {var_28}], data_0 Opcode: 0f 8e b5 00 00 00jle     0x804af01 Basic Block 2 Opcode: 81 7d e4 00 00 00 00cmp     dword [ebp-0x1c {var_20}], data_0 Opcode: 0f 8d 2a ff ff ffjge     0x804ae13 Basic Block 3 Opcode: 81 7d d8 00 00 00 00cmp     dword [ebp-0x28 {var_2c}], data_0 Opcode: 7e 17jle     0x804af21 Basic Block 4 Opcode: 8b 45 d0mov     eax, dword [ebp-0x30 {var_34}] Opcode: 3b 45 dccmp     eax, dword [ebp-0x24 {var_28}] Opcode: 73 15jae     0x804ae69 Basic Block 5 Opcode: b8 00 00 00 00mov     eax, data_0 Opcode: c6 45 cb 01mov     byte [ebp-0x35 {var_39}], 0x1 Opcode: 2b 45 e4sub     eax, dword [ebp-0x1c {var_20}] Opcode: 89 45 e4mov     dword [ebp-0x1c {var_20}], eax Opcode: 83 45 d0 01add     dword [ebp-0x30 {var_34}], data_1 Opcode: e9 12 ff ff ffjmp     0x804ae13 Basic Block 6 Opcode: 8b 45 d4mov     eax, dword [ebp-0x2c {var_30}] Opcode: 25 01 00 00 00and     eax, data_1 Opcode: 85 c0test    eax, eax Opcode: 0f 85 a3 00 00 00jne     0x804afd4 Basic Block 7 Opcode: 83 4d d4 04or      dword [ebp-0x2c {var_30}], data_4 Opcode: 8b 45 c4mov     eax, dword [ebp-0x3c {var_40}] Opcode: 3b 45 d8cmp     eax, dword [ebp-0x28 {var_2c}] Opcode: 73 09jae     0x804af1f Basic Block 8 Opcode: e9 93 00 00 00jmp     0x804af01 Basic Block 9 Opcode: 8b 45 dcmov     eax, dword [ebp-0x24 {var_28}] Opcode: eb 0ajmp     0x804ae63 Basic Block 10 Opcode: 80 7d cb 00cmp     byte [ebp-0x35 {var_39}], 0x0 Opcode: 74 2dje      0x804b007 Basic Block 11 Opcode: 0f be 45 cbmovsx   eax, byte [ebp-0x35 {var_39}] Opcode: 85 c0test    eax, eax Opcode: 74 42je      0x804af7b Basic Block 12 Opcode: eb 00jmp     0x804af21 Basic Block 13 Opcode: 8b 45 d8mov     eax, dword [ebp-0x28 {var_2c}] Opcode: 2b 45 c4sub     eax, dword [ebp-0x3c {var_40}] Opcode: 89 45 ccmov     dword [ebp-0x34 {var_38}], eax Basic Block 14 Opcode: 2b 45 d0sub     eax, dword [ebp-0x30 {var_34}] Opcode: 89 45 ccmov     dword [ebp-0x34 {var_38}], eax Basic Block 15 Opcode: 8b 45 c4mov     eax, dword [ebp-0x3c {var_40}] Opcode: 89 45 a0mov     dword [ebp-0x60 {var_64}], eax Basic Block 16 Opcode: b8 2d 00 00 00mov     eax, data_2d Opcode: 8b 4d ecmov     ecx, dword [ebp-0x14 {var_18}] Opcode: 8b 55 f0mov     edx, dword [ebp-0x10 {var_14}] Opcode: 8b 75 e8mov     esi, dword [ebp-0x18 {var_1c}] Opcode: 89 14 24mov     dword [esp {var_9c}], edx Opcode: c7 44 24 04 2d 00 00 00mov     dword [esp+data_4 {var_98}], data_2d Opcode: 89 74 24 08mov     dword [esp+data_8 {var_94}], esi Opcode: 89 45 88mov     dword [ebp-0x78 {var_7c}], eax Opcode: e8 4c 00 00 00call    sub_804b04b Opcode: 90nop      Opcode: 89 45 e8mov     dword [ebp-0x18 {var_1c}], eax Opcode: c6 45 cb 00mov     byte [ebp-0x35 {var_39}], 0x0 Basic Block 17 Opcode: eb 00jmp     0x804af7d Basic Block 18 Opcode: 81 7d cc 00 00 00 00cmp     dword [ebp-0x34 {var_38}], data_0 Opcode: 76 39jbe     0x804af7b Basic Block 19 Opcode: 8b 45 d4mov     eax, dword [ebp-0x2c {var_30}] Opcode: 25 01 00 00 00and     eax, data_1 Opcode: 85 c0test    eax, eax Opcode: 74 baje      0x8049518 Basic Block 20 Opcode: 8b 45 ecmov     eax, dword [ebp-0x14 {var_18}] Opcode: 8b 4d f0mov     ecx, dword [ebp-0x10 {var_14}] Opcode: 8b 55 a0mov     edx, dword [ebp-0x60 {var_64}] Opcode: 81 ea 01 00 00 00sub     edx, data_1 Opcode: 0f be 54 15 a4movsx   edx, byte [ebp+edx-0x5c] {var_4} Opcode: 8b 75 e8mov     esi, dword [ebp-0x18 {var_1c}] Opcode: 89 0c 24mov     dword [esp {var_9c}], ecx Opcode: 89 54 24 04mov     dword [esp+data_4 {var_98}], edx Opcode: 89 74 24 08mov     dword [esp+data_8 {var_94}], esi Opcode: e8 47 4d 00 00call    sub_804fd88 Opcode: 90nop      Opcode: 89 45 e8mov     dword [ebp-0x18 {var_1c}], eax Opcode: 83 45 a0 ffadd     dword [ebp-0x60 {var_64}], 0xffffffff Opcode: eb c2jmp     0x804b00d Basic Block 21 Opcode: 8b 45 ccmov     eax, dword [ebp-0x34 {var_38}] Opcode: 89 c1mov     ecx, eax Opcode: 81 c1 ff ff ff ffadd     ecx, 0xffffffff Opcode: 89 4d ccmov     dword [ebp-0x34 {var_38}], ecx Opcode: 3d 00 00 00 00cmp     eax, data_0 Opcode: 0f 86 ab 4f 00 00jbe     0x804ff41 Basic Block 22 Opcode: 8b 45 d4mov     eax, dword [ebp-0x2c {var_30}] Opcode: 25 04 00 00 00and     eax, data_4 Opcode: 85 c0test    eax, eax Opcode: 74 2dje      0x804af7b Basic Block 23 Opcode: 8b 45 e8mov     eax, dword [ebp-0x18 {var_1c}] Opcode: 81 c4 8c 00 00 00add     esp, data_8c {var_10} Opcode: 5epop     esi Opcode: 5fpop     edi Opcode: 5bpop     ebx Opcode: 5dpop     ebp Opcode: e9 56 ff ff ffjmp     0x8049480 Basic Block 24 Opcode: eb 00jmp     0x8049560 Basic Block 25 Opcode: 81 7d a0 00 00 00 00cmp     dword [ebp-0x60 {var_64}], data_0 Opcode: 0f 86 38 e5 ff ffjbe     0x8049552 Basic Block 26 Opcode: e9 8e b0 ff ffjmp     0x804afd4 Basic Block 27 Opcode: 8b 45 d4mov     eax, dword [ebp-0x2c {var_30}] Opcode: 25 04 00 00 00and     eax, data_4 Opcode: 85 c0test    eax, eax Opcode: 0f 84 63 4d 00 00je      0x804fd09 Basic Block 28 Opcode: b8 2d 00 00 00mov     eax, data_2d Opcode: 8b 4d ecmov     ecx, dword [ebp-0x14 {var_18}] Opcode: 8b 55 f0mov     edx, dword [ebp-0x10 {var_14}] Opcode: 8b 75 e8mov     esi, dword [ebp-0x18 {var_1c}] Opcode: 89 14 24mov     dword [esp {var_9c}], edx Opcode: c7 44 24 04 2d 00 00 00mov     dword [esp+data_4 {var_98}], data_2d Opcode: 89 74 24 08mov     dword [esp+data_8 {var_94}], esi Opcode: 89 45 94mov     dword [ebp-0x6c {var_70}], eax Opcode: e8 df 00 00 00call    sub_804b052 Opcode: 90nop      Opcode: 89 45 e8mov     dword [ebp-0x18 {var_1c}], eax Opcode: c6 45 cb 00mov     byte [ebp-0x35 {var_39}], 0x0 Basic Block 29 Opcode: 81 24 24 ff ff ff 7fand     dword [esp], 0x7fffffff Opcode: 8b 0c 24mov     ecx, dword [esp] Opcode: 80 39 90cmp     byte [ecx], 0x90 Opcode: 0f 85 43 1e 00 00jne     0x804b2d6 Basic Block 30 Opcode: 8b 45 ccmov     eax, dword [ebp-0x34 {var_38}] Opcode: 89 c1mov     ecx, eax Opcode: 81 c1 ff ff ff ffadd     ecx, 0xffffffff Opcode: eb 0ajmp     0x8049577 Basic Block 31 Opcode: b8 20 00 00 00mov     eax, data_20 Opcode: 8b 4d ecmov     ecx, dword [ebp-0x14 {var_18}] Opcode: 8b 55 f0mov     edx, dword [ebp-0x10 {var_14}] Opcode: 8b 75 e8mov     esi, dword [ebp-0x18 {var_1c}] Opcode: 89 14 24mov     dword [esp {var_9c}], edx Opcode: c7 44 24 04 20 00 00 00mov     dword [esp+data_4 {var_98}], data_20 Opcode: 89 74 24 08mov     dword [esp+data_8 {var_94}], esi Opcode: 89 45 8cmov     dword [ebp-0x74 {var_78}], eax Opcode: e8 b9 fd ff ffcall    sub_804fae7 Opcode: 90nop      Opcode: 89 45 e8mov     dword [ebp-0x18 {var_1c}], eax Opcode: e9 13 f2 ff ffjmp     0x804ef4a Basic Block 32 Opcode: b8 30 00 00 00mov     eax, data_30 Opcode: 8b 4d ecmov     ecx, dword [ebp-0x14 {var_18}] Opcode: 8b 55 f0mov     edx, dword [ebp-0x10 {var_14}] Opcode: 8b 75 e8mov     esi, dword [ebp-0x18 {var_1c}] Opcode: 89 14 24mov     dword [esp {var_9c}], edx Opcode: c7 44 24 04 30 00 00 00mov     dword [esp+data_4 {var_98}], data_30 Opcode: 89 74 24 08mov     dword [esp+data_8 {var_94}], esi Opcode: 89 45 90mov     dword [ebp-0x70 {var_74}], eax Opcode: e8 a5 47 00 00call    sub_804f770 Opcode: 90nop      Opcode: 89 45 e8mov     dword [ebp-0x18 {var_1c}], eax Opcode: e9 76 3f 00 00jmp     0x804ef4a Basic Block 33 Opcode: 59pop     ecx Opcode: 80 79 ff f4cmp     byte [ecx-0x1], 0xf4 Opcode: 75 08jne     0x804b2e5 Basic Block 34 Opcode: c3retn     Basic Block 35 Opcode: 89 4d ccmov     dword [ebp-0x34 {var_38}], ecx Opcode: 3d 00 00 00 00cmp     eax, data_0 Opcode: 0f 86 c6 69 00 00jbe     0x804ff4b Basic Block 36 Opcode: e9 2e c0 ff ffjmp     0x804af7d Basic Block 37 Opcode: 81 f9 b8 4e 05 08cmp     ecx, 0x8054eb8 Opcode: 74 47je      0x804b334 Basic Block 38 Opcode: 81 e1 ff ff ff 7fand     ecx, 0x7fffffff Opcode: ff e1jmp     ecx Basic Block 39 Opcode: e9 c8 95 ff ffjmp     0x8049518 Basic Block 40 Opcode: b8 20 00 00 00mov     eax, data_20 Opcode: 8b 4d ecmov     ecx, dword [ebp-0x14 {var_18}] Opcode: 8b 55 f0mov     edx, dword [ebp-0x10 {var_14}] Opcode: 8b 75 e8mov     esi, dword [ebp-0x18 {var_1c}] Opcode: 89 14 24mov     dword [esp {var_9c}], edx Opcode: c7 44 24 04 20 00 00 00mov     dword [esp+data_4 {var_98}], data_20 Opcode: 89 74 24 08mov     dword [esp+data_8 {var_94}], esi Opcode: 89 45 84mov     dword [ebp-0x7c {var_80}], eax Opcode: e8 94 67 00 00call    sub_804fd3e Opcode: 90nop      Opcode: 89 45 e8mov     dword [ebp-0x18 {var_1c}], eax Opcode: eb b0jmp     0x8049560 Basic Block 41 Opcode: db 6c 24 04fld     tword [esp+data_4] Opcode: e9 ca 0d 00 00jmp     0x804c107 Basic Block 42 Opcode: 81 f9 db 98 04 08cmp     ecx, sub_804e14e-0x4873 Opcode: 74 48je      0x804b33d Basic Block 43 Opcode: d9 eafldl2e   Opcode: de c9fmulp   st1, st0 Opcode: e9 a5 f2 ff ffjmp     0x804b3b5 Basic Block 44 Opcode: c7 45 fc ff ff ff ffmov     dword [ebp-0x4], 0xffffffff Opcode: e9 3d e9 ff ffjmp     0x8049c86 Basic Block 45 Opcode: 81 f9 d6 98 04 08cmp     ecx, sub_804e14e-0x4878 Opcode: 74 4cje      0x804b349 Basic Block 46 Opcode: d9 c0fld     st0 Opcode: d9 fcfrndint  Opcode: dc e9fsub    st1, st0 Opcode: d9 c9fxch    st0, st1 Opcode: d9 f0f2xm1    Opcode: d9 e8fld1     Opcode: de c1faddp   st1, st0 Opcode: d9 fdfscale   Opcode: dd d9fstp    st1 Opcode: e9 b4 e0 ff ffjmp     0x8049480 Basic Block 47 Opcode: 8b 45 fcmov     eax, dword [ebp-0x4] Opcode: 81 c4 18 01 00 00add     esp, 0x118 Opcode: 5dpop     ebp Opcode: e9 eb f7 ff ffjmp     0x8049480 Basic Block 48 Opcode: e9 31 e9 ff ffjmp     0x8049c7f Basic Block 49 Opcode: 81 f9 fa 85 04 08cmp     ecx, sub_8049761-0x1167 Opcode: 74 49je      0x804b34e Basic Block 50 Opcode: c7 45 fc 00 00 00 00mov     dword [ebp-0x4], data_0 Basic Block 51 Opcode: b8 ff ff ff ffmov     eax, 0xffffffff Opcode: 89 04 24mov     dword [esp], eax Opcode: 89 45 d4mov     dword [ebp-0x2c], eax Opcode: e8 88 0d 00 00call    sub_804c0e6 Opcode: e8 88 0d 00 00{ Does not return } Basic Block 52 Opcode: 81 f9 f5 85 04 08cmp     ecx, sub_8049761-0x116c Opcode: 74 66je      0x804b373 Basic Block 53 Opcode: eb eajmp     0x804b35f Basic Block 54 Opcode: 81 f9 f0 85 04 08cmp     ecx, sub_8049761-0x1171 Opcode: 74 60je      0x804b375 Basic Block 55 Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 8b 40 0cmov     eax, dword [eax+data_c] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 d1 db ff ffcall    sub_8048f3e Opcode: 90nop      Opcode: e9 d7 e0 ff ffjmp     0x804944a Basic Block 56 Opcode: eb e8jmp     0x804b35f Basic Block 57 Opcode: 81 f9 c2 85 04 08cmp     ecx, sub_8049761-0x119f Opcode: 74 5aje      0x804b377 Basic Block 58 Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 81 78 08 00 00 00 00cmp     dword [eax+data_8], data_0 Opcode: 0f 84 d3 fb ff ffje      0x804902d Basic Block 59 Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 8b 40 0cmov     eax, dword [eax+data_c] Opcode: 89 45 e4mov     dword [ebp-0x1c], eax Opcode: 85 c0test    eax, eax Opcode: 74 0fje      0x804b393 Basic Block 60 Opcode: 81 f9 bd 85 04 08cmp     ecx, sub_8049761-0x11a4 Opcode: 74 70je      0x804b395 Basic Block 61 Opcode: eb 09jmp     0x8049038 Basic Block 62 Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 8b 40 08mov     eax, dword [eax+data_8] Opcode: 8b 40 04mov     eax, dword [eax+data_4] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 d3 fa ff ffcall    sub_8048f3e Opcode: 90nop      Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 8b 40 08mov     eax, dword [eax+data_8] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 c4 fa ff ffcall    sub_8048f3e Opcode: 90nop      Opcode: e9 ad fb ff ffjmp     0x804902d Basic Block 63 Opcode: eb cajmp     0x804b35f Basic Block 64 Opcode: 8b 45 e4mov     eax, dword [ebp-0x1c] Opcode: 8b 40 18mov     eax, dword [eax+0x18] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 ac db ff ffcall    sub_8048f3e Opcode: 90nop      Basic Block 65 Opcode: eb c8jmp     0x804b35f Basic Block 66 Opcode: 81 f9 8f 85 04 08cmp     ecx, sub_8049761-0x11d2 Opcode: 74 6aje      0x804b397 Basic Block 67 Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 81 78 04 00 00 00 00cmp     dword [eax+data_4], data_0 Opcode: 74 bdje      0x8049001 Basic Block 68 Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 8b 40 0cmov     eax, dword [eax+data_c] Opcode: 89 45 e8mov     dword [ebp-0x18], eax Opcode: 85 c0test    eax, eax Opcode: 74 0fje      0x804b3b3 Basic Block 69 Opcode: b8 01 00 00 00mov     eax, data_1 Opcode: cd 80int     0x80 Opcode: cd 80{ Does not return } Basic Block 70 Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 8b 00mov     eax, dword [eax] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 30 ff ff ffcall    sub_8048f3e Opcode: 90nop      Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 24 ff ff ffcall    sub_8048f3e Opcode: 90nop      Opcode: 8b 45 fcmov     eax, dword [ebp-0x4] Opcode: c7 00 00 00 00 00mov     dword [eax], data_0 Opcode: 83 c4 38add     esp, 0x38 Opcode: 5dpop     ebp Opcode: e9 53 04 00 00jmp     0x8049480 Basic Block 71 Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 8b 40 04mov     eax, dword [eax+data_4] Opcode: 8b 40 04mov     eax, dword [eax+data_4] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 e9 fe ff ffcall    sub_8048f3e Opcode: 90nop      Opcode: 8b 45 f8mov     eax, dword [ebp-0x8] Opcode: 8b 40 04mov     eax, dword [eax+data_4] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 da fe ff ffcall    sub_8048f3e Opcode: 90nop      Opcode: eb 9ajmp     0x8049001 Basic Block 72 Opcode: eb aajmp     0x804b35f Basic Block 73 Opcode: 8b 45 e8mov     eax, dword [ebp-0x18] Opcode: 8b 40 10mov     eax, dword [eax+data_10] Opcode: 89 04 24mov     dword [esp], eax Opcode: e8 8c db ff ffcall    sub_8048f3e Opcode: 90nop