Function Graph 0Basic Block 0Opcode: 55sub_804e5c0:Opcode: 55push    ebpOpcode: 89 e5mov     ebp, espOpcode: 57push    ediOpcode: 56push    esiOpcode: 83 ec 50sub     esp, 0x50 {var_5c}Opcode: 8b 45 10mov     eax, dword [ebp+0x10 {arg_c}]Opcode: 8b 4d 0cmov     ecx, dword [ebp+0xc {arg_8}]Opcode: 8b 55 08mov     edx, dword [ebp+0x8 {arg_4}]Opcode: 89 55 f4mov     dword [ebp-0xc {var_10}], edxOpcode: 89 4d f0mov     dword [ebp-0x10 {var_14}], ecxOpcode: 89 45 ecmov     dword [ebp-0x14 {var_18}], eaxOpcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 89 45 e8mov     dword [ebp-0x18 {var_1c}], eaxOpcode: c7 45 e4 01 00 00 00mov     dword [ebp-0x1c {var_20}], 0x1Opcode: c7 45 e0 01 00 00 00mov     dword [ebp-0x20 {var_24}], 0x1Opcode: c7 45 dc 00 00 00 00mov     dword [ebp-0x24 {var_28}], 0x0Opcode: c7 45 d4 00 00 00 00mov     dword [ebp-0x2c {var_30}], 0x0Opcode: c7 45 d0 00 00 00 00mov     dword [ebp-0x30 {var_34}], 0x0Basic Block 1Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 3d 2b 00 00 00cmp     eax, 0x2bOpcode: 0f 85 17 00 00 00jne     0x804e66aBasic Block 2Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 3d 00 00 00 00cmp     eax, 0x0Opcode: 0f 85 05 00 00 00jne     0x804e632Basic Block 3Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 3d 2d 00 00 00cmp     eax, 0x2dOpcode: 0f 85 12 00 00 00jne     0x804e68dBasic Block 4Opcode: c7 45 e4 01 00 00 00mov     dword [ebp-0x1c {var_20}], 0x1Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 05 01 00 00 00add     eax, 0x1Opcode: 89 45 f4mov     dword [ebp-0xc {var_10}], eaxOpcode: e9 28 00 00 00jmp     0x804e692Basic Block 5Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 05 01 00 00 00add     eax, 0x1Opcode: 89 45 f4mov     dword [ebp-0xc {var_10}], eaxOpcode: e9 c1 ff ff ffjmp     0x804e603Basic Block 6Opcode: e9 a8 02 00 00jmp     0x804e8daBasic Block 7Opcode: e9 00 00 00 00jmp     0x804e692Basic Block 8Opcode: c7 45 e4 ff ff ff ffmov     dword [ebp-0x1c {var_20}], 0xffffffffOpcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 05 01 00 00 00add     eax, 0x1Opcode: 89 45 f4mov     dword [ebp-0xc {var_10}], eaxBasic Block 9Opcode: 81 7d ec 10 00 00 00cmp     dword [ebp-0x14 {var_18}], 0x10Opcode: 0f 85 3b 00 00 00jne     0x804e6daBasic Block 10Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 89 04 24mov     dword [esp {var_5c}], eaxOpcode: e8 6f c1 ff ffcall    sub_804a780Opcode: 3d 00 00 00 00cmp     eax, 0x0Opcode: 0f 84 26 00 00 00je      0x804e642Basic Block 11Opcode: 81 7d f0 00 00 00 00cmp     dword [ebp-0x10 {var_14}], 0x0Opcode: 0f 84 26 00 00 00je      0x804e90dBasic Block 12Opcode: 81 7d ec 00 00 00 00cmp     dword [ebp-0x14 {var_18}], 0x0Opcode: 0f 85 c7 00 00 00jne     0x804e7aeBasic Block 13Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 3d 30 00 00 00cmp     eax, 0x30Opcode: 0f 85 25 00 00 00jne     0x804e6d5Basic Block 14Opcode: 81 7d e4 00 00 00 00cmp     dword [ebp-0x1c {var_20}], 0x0Opcode: 0f 8d 53 00 00 00jge     0x804e96dBasic Block 15Opcode: 81 7d e0 00 00 00 00cmp     dword [ebp-0x20 {var_24}], 0x0Opcode: 0f 84 0b 00 00 00je      0x804e8ffBasic Block 16Opcode: e9 00 00 00 00jmp     0x804e7b3Basic Block 17Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 3d 30 00 00 00cmp     eax, 0x30Opcode: 0f 85 3b 00 00 00jne     0x804e733Basic Block 18Opcode: e9 d9 00 00 00jmp     0x804e7b3Basic Block 19Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 40 01movsx   eax, byte [eax+0x1]Opcode: 89 04 24mov     dword [esp {var_5c}], eaxOpcode: e8 91 c2 ff ffcall    sub_804a950Opcode: 3d 78 00 00 00cmp     eax, 0x78Opcode: 0f 85 0b 00 00 00jne     0x804e6d5Basic Block 20Opcode: 81 7d dc 00 00 00 00cmp     dword [ebp-0x24 {var_28}], 0x0Opcode: 0f 84 12 00 00 00je      0x804e98cBasic Block 21Opcode: 8b 45 d0mov     eax, dword [ebp-0x30 {var_34}]  {0x0}Opcode: 8b 4d d4mov     ecx, dword [ebp-0x2c {var_30}]  {0x0}Opcode: 89 camov     edx, ecx  {0x0}Opcode: c1 ea 1fshr     edx, 0x1f  {0x0}Opcode: 0f a4 c1 01shld    ecx, eax, 0x1Opcode: 09 d1or      ecx, edx  {0x0}Opcode: 89 4d bcmov     dword [ebp-0x44 {var_48}], ecxOpcode: 0f 84 27 00 00 00je      0x804e95bBasic Block 22Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 89 45 c0mov     dword [ebp-0x40 {var_44}], eaxBasic Block 23Opcode: 8b 45 e8mov     eax, dword [ebp-0x18 {var_1c}]Opcode: 89 45 c0mov     dword [ebp-0x40 {var_44}], eaxOpcode: e9 06 00 00 00jmp     0x804e905Basic Block 24Opcode: e9 00 00 00 00jmp     0x804e7b8Basic Block 25Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 3d 30 00 00 00cmp     eax, 0x30Opcode: 0f 85 31 00 00 00jne     0x804e775Basic Block 26Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 40 01movsx   eax, byte [eax+0x1]Opcode: 3d 30 00 00 00cmp     eax, 0x30Opcode: 0f 8c 29 00 00 00jl      0x804e733Basic Block 27Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 05 02 00 00 00add     eax, 0x2Opcode: 89 45 f4mov     dword [ebp-0xc {var_10}], eaxBasic Block 28Opcode: 8b 45 d0mov     eax, dword [ebp-0x30 {var_34}]  {0x0}Opcode: 8b 4d d4mov     ecx, dword [ebp-0x2c {var_30}]Opcode: 89 45 b4mov     dword [ebp-0x4c {var_50}], eaxOpcode: 89 4d b0mov     dword [ebp-0x50 {var_54}], ecxBasic Block 29Opcode: 31 c0xor     eax, eax  {0x0}Opcode: b9 ff ff ff ffmov     ecx, 0xffffffffOpcode: 89 4d b4mov     dword [ebp-0x4c {var_50}], ecxOpcode: 89 45 b0mov     dword [ebp-0x50 {var_54}], eaxOpcode: e9 0c 00 00 00jmp     0x804e998Basic Block 30Opcode: 8b 45 d0mov     eax, dword [ebp-0x30 {var_34}]  {0x0}Opcode: 8b 4d d4mov     ecx, dword [ebp-0x2c {var_30}]  {0x0}Opcode: 31 d2xor     edx, edx  {0x0}Opcode: f7 d8neg     eax  {0x0}Opcode: 19 casbb     edx, ecxOpcode: 89 45 d0mov     dword [ebp-0x30 {var_34}], eaxOpcode: 89 55 d4mov     dword [ebp-0x2c {var_30}], edxBasic Block 31Opcode: e9 00 00 00 00jmp     0x804e939Basic Block 32Opcode: 8b 45 c0mov     eax, dword [ebp-0x40 {var_44}]Opcode: 8b 4d f0mov     ecx, dword [ebp-0x10 {var_14}]Opcode: 89 01mov     dword [ecx], eaxBasic Block 33Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 80 38 00cmp     byte [eax], 0x0Opcode: 0f 84 11 01 00 00je      0x804e8d5Basic Block 34Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 89 04 24mov     dword [esp {var_5c}], eaxOpcode: e8 dd be ff ffcall    sub_804a660Opcode: 3d 00 00 00 00cmp     eax, 0x0Opcode: 0f 84 0c 00 00 00je      0x804e79aBasic Block 35Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 40 01movsx   eax, byte [eax+0x1]Opcode: 89 04 24mov     dword [esp {var_5c}], eaxOpcode: e8 fd c1 ff ffcall    sub_804a950Opcode: 3d 78 00 00 00cmp     eax, 0x78Opcode: 0f 85 17 00 00 00jne     0x804e775Basic Block 36Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 40 01movsx   eax, byte [eax+0x1]Opcode: 3d 37 00 00 00cmp     eax, 0x37Opcode: 0f 8f 17 00 00 00jg      0x804e733Basic Block 37Opcode: 8b 45 b0mov     eax, dword [ebp-0x50 {var_54}]Opcode: 8b 4d b4mov     ecx, dword [ebp-0x4c {var_50}]Opcode: 89 45 acmov     dword [ebp-0x54 {var_58}], eaxOpcode: 89 c8mov     eax, ecxOpcode: 83 c4 50add     esp, 0x50 {var_c}Opcode: 5epop     esiOpcode: 5fpop     ediOpcode: 5dpop     ebpOpcode: c3retn    Basic Block 38Opcode: 8b 45 d0mov     eax, dword [ebp-0x30 {var_34}]  {0x0}Opcode: 8b 4d d4mov     ecx, dword [ebp-0x2c {var_30}]  {0x0}Opcode: 35 00 00 00 80xor     eax, 0x80000000Opcode: 09 c8or      eax, ecx  {0x80000000}Opcode: 89 45 b8mov     dword [ebp-0x48 {var_4c}], eaxOpcode: 0f 84 0c 00 00 00je      0x804e95bBasic Block 39Opcode: e9 00 00 00 00jmp     0x804e8daBasic Block 40Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 89 04 24mov     dword [esp {var_5c}], eaxOpcode: e8 8e be ff ffcall    sub_804a660Opcode: 3d 00 00 00 00cmp     eax, 0x0Opcode: 0f 84 13 00 00 00je      0x804e7f0Basic Block 41Opcode: e9 3b 01 00 00jmp     0x804e8daBasic Block 42Opcode: c7 45 ec 0a 00 00 00mov     dword [ebp-0x14 {var_18}], 0xaOpcode: e9 05 00 00 00jmp     0x804e79fBasic Block 43Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 05 02 00 00 00add     eax, 0x2Opcode: 89 45 f4mov     dword [ebp-0xc {var_10}], eaxOpcode: c7 45 ec 10 00 00 00mov     dword [ebp-0x14 {var_18}], 0x10Opcode: e9 2f 00 00 00jmp     0x804e7a4Basic Block 44Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 05 01 00 00 00add     eax, 0x1Opcode: 89 45 f4mov     dword [ebp-0xc {var_10}], eaxOpcode: c7 45 ec 08 00 00 00mov     dword [ebp-0x14 {var_18}], 0x8Opcode: e9 76 00 00 00jmp     0x804e7a9Basic Block 45Opcode: e9 00 00 00 00jmp     0x804e954Basic Block 46Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 89 04 24mov     dword [esp {var_5c}], eaxOpcode: e8 22 bf ff ffcall    sub_804a720Opcode: 3d 00 00 00 00cmp     eax, 0x0Opcode: 0f 84 18 00 00 00je      0x804e821Basic Block 47Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 2d 30 00 00 00sub     eax, 0x30Opcode: 89 45 ccmov     dword [ebp-0x34 {var_38}], eaxOpcode: e9 71 00 00 00jmp     0x804e861Basic Block 48Opcode: e9 00 00 00 00jmp     0x804e7a4Basic Block 49Opcode: e9 00 00 00 00jmp     0x804e7a9Basic Block 50Opcode: e9 00 00 00 00jmp     0x804e7aeBasic Block 51Opcode: c7 45 dc 01 00 00 00mov     dword [ebp-0x24 {var_28}], 0x1Basic Block 52Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 89 04 24mov     dword [esp {var_5c}], eaxOpcode: e8 21 bf ff ffcall    sub_804a750Opcode: 3d 00 00 00 00cmp     eax, 0x0Opcode: 0f 84 18 00 00 00je      0x804e852Basic Block 53Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 2d 61 00 00 00sub     eax, 0x61Opcode: 05 0a 00 00 00add     eax, 0xaOpcode: 89 45 ccmov     dword [ebp-0x34 {var_38}], eaxOpcode: e9 3b 00 00 00jmp     0x804e85cBasic Block 54Opcode: 8b 45 ccmov     eax, dword [ebp-0x34 {var_38}]Opcode: 3b 45 eccmp     eax, dword [ebp-0x14 {var_18}]Opcode: 0f 8c 05 00 00 00jl      0x804e872Basic Block 55Opcode: e9 83 00 00 00jmp     0x804e8daBasic Block 56Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 0f be 00movsx   eax, byte [eax]Opcode: 2d 41 00 00 00sub     eax, 0x41Opcode: 05 0a 00 00 00add     eax, 0xaOpcode: 89 45 ccmov     dword [ebp-0x34 {var_38}], eaxOpcode: e9 05 00 00 00jmp     0x804e857Basic Block 57Opcode: e9 00 00 00 00jmp     0x804e861Basic Block 58Opcode: c7 45 e0 00 00 00 00mov     dword [ebp-0x20 {var_24}], 0x0Opcode: 8b 45 d0mov     eax, dword [ebp-0x30 {var_34}]  {0x0}Opcode: 8b 4d d4mov     ecx, dword [ebp-0x2c {var_30}]  {0x0}Opcode: 8b 55 ecmov     edx, dword [ebp-0x14 {var_18}]Opcode: 89 d6mov     esi, edxOpcode: c1 fe 1fsar     esi, 0x1fOpcode: 89 45 c8mov     dword [ebp-0x38 {var_3c}], eaxOpcode: 89 55 c4mov     dword [ebp-0x3c {var_40}], edxOpcode: f7 e2mul     edx  {0x0}Opcode: 8b 7d c8mov     edi, dword [ebp-0x38 {var_3c}]  {0x0}Opcode: 0f af feimul    edi, esi  {0x0}Opcode: 01 faadd     edx, edi  {0x0}Opcode: 8b 75 c4mov     esi, dword [ebp-0x3c {var_40}]Opcode: 0f af ceimul    ecx, esi  {0x0}Opcode: 01 caadd     edx, ecx  {0x0}Opcode: 8b 4d ccmov     ecx, dword [ebp-0x34 {var_38}]Opcode: 89 cfmov     edi, ecxOpcode: c1 ff 1fsar     edi, 0x1fOpcode: 01 c8add     eax, ecxOpcode: 11 faadc     edx, ediOpcode: 85 d2test    edx, edxOpcode: 89 45 d0mov     dword [ebp-0x30 {var_34}], eaxOpcode: 89 55 d4mov     dword [ebp-0x2c {var_30}], edxOpcode: 0f 84 0c 00 00 00je      0x804e8c5Basic Block 59Opcode: e9 68 00 00 00jmp     0x804e8daBasic Block 60Opcode: e9 00 00 00 00jmp     0x804e85cBasic Block 61Opcode: 8b 45 f4mov     eax, dword [ebp-0xc {var_10}]Opcode: 05 01 00 00 00add     eax, 0x1Opcode: 89 45 f4mov     dword [ebp-0xc {var_10}], eaxOpcode: e9 e3 fe ff ffjmp     0x804e7b8Basic Block 62Opcode: e9 00 00 00 00jmp     0x804e8beBasic Block 63Opcode: c7 45 dc 01 00 00 00mov     dword [ebp-0x24 {var_28}], 0x1