Function Graph 0Basic Block 0Opcode: 55sub_804887a:Opcode: 55push    ebpOpcode: 53push    ebxOpcode: 57push    ediOpcode: 56push    esiOpcode: 81 ec 3c 0c 00 00sub     esp, 0xc3c {var_c4c}Opcode: 8b 9c 24 50 0c 00 00mov     ebx, dword [esp+0xc50 {arg_4}]Opcode: 8b 03mov     eax, dword [ebx]Opcode: 89 44 24 08mov     dword [esp+data_8 {var_c44}], eaxOpcode: 8d 84 24 34 0c 00 00lea     eax, [esp+0xc34] {var_18}Opcode: 89 04 24mov     dword [esp {var_c4c}], eaxOpcode: c7 44 24 04 04 00 00 00mov     dword [esp+data_4 {var_c48}], data_4Opcode: e8 85 f8 ff ffcall    sub_804812dOpcode: 90nop     Opcode: 83 f8 04cmp     eax, data_4Opcode: 0f 85 93 ff ff ffjne     0x8048845Basic Block 1Opcode: c6 44 24 18 02mov     byte [esp+0x18 {var_c34}], 0x2Opcode: 8b 43 04mov     eax, dword [ebx+data_4]Opcode: 89 44 24 08mov     dword [esp+data_8 {var_c44}], eaxOpcode: 8d 44 24 18lea     eax, [esp+0x18] {var_c34}Opcode: 89 04 24mov     dword [esp {var_c4c}], eaxOpcode: c7 44 24 04 01 00 00 00mov     dword [esp+data_4 {var_c48}], data_1Opcode: e8 0e fa ff ffcall    sub_8048273Opcode: 90nop     Basic Block 2Opcode: 83 7b 0c 00cmp     dword [ebx+data_c], data_0Opcode: 0f 84 89 ff ff ffje      0x8048845Basic Block 3Opcode: 81 24 24 ff ff ff 7fand     dword [esp], 0x7fffffffOpcode: 8b 0c 24mov     ecx, dword [esp]Opcode: 80 39 90cmp     byte [ecx], 0x90Opcode: 0f 85 3a 04 00 00jne     0x804952eBasic Block 4Opcode: 8b 8c 24 34 0c 00 00mov     ecx, dword [esp+0xc34 {var_18}]Opcode: 69 d1 65 92 15 14imul    edx, ecx, 0x14159265Opcode: 89 c8mov     eax, ecxOpcode: c1 e8 10shr     eax, 0x10Opcode: 31 c8xor     eax, ecxOpcode: 31 d0xor     eax, edxOpcode: 31 d2xor     edx, edx  {data_0}Opcode: f7 73 10div     dword [ebx+data_10]Opcode: 8b 43 14mov     eax, dword [ebx+data_14]Opcode: 8b 04 90mov     eax, dword [eax+edx*4]Opcode: eb 00jmp     0x80488dfBasic Block 5Opcode: 59pop     ecxOpcode: 80 79 ff f4cmp     byte [ecx-0x1], 0xf4Opcode: 75 e6jne     0x804951bBasic Block 6Opcode: c3retn    Basic Block 7Opcode: 85 c0test    eax, eaxOpcode: 0f 84 5e ff ff ffje      0x8048845Basic Block 8Opcode: 81 f9 a0 80 04 08cmp     ecx, 0x80480a0Opcode: 0f 84 b8 fa ff ffje      0x8048fdfBasic Block 9Opcode: 81 e1 ff ff ff 7fand     ecx, 0x7fffffffOpcode: ff e1jmp     ecxBasic Block 10Opcode: 8b 50 04mov     edx, dword [eax+data_4]Opcode: 39 cacmp     edx, ecxOpcode: 0f 85 b0 35 00 00jne     0x804bea2Basic Block 11Opcode: 83 ec 0csub     esp, data_cOpcode: a1 7c 2e 06 08mov     eax, dword [data_8062e7c]Opcode: 85 c0test    eax, eaxOpcode: 75 c8jne     0x8048fb3Basic Block 12Opcode: b8 01 00 00 00mov     eax, data_1Opcode: cd 80int     0x80Opcode: cd 80{ Does not return }Basic Block 13Opcode: 8b 40 08mov     eax, dword [eax+data_8]Opcode: e9 35 ca ff ffjmp     0x80488dfBasic Block 14Opcode: 8b 30mov     esi, dword [eax]Opcode: 85 f6test    esi, esiOpcode: 0f 84 49 ff ff ffje      0x8048845Basic Block 15Opcode: 89 04 24mov     dword [esp], eaxOpcode: c7 44 24 04 d0 d6 04 08mov     dword [esp+data_4], data_804d6d0  {"namespace"}Opcode: e8 35 00 00 00call    sub_8048ff8Opcode: 90nop     Opcode: a3 68 2e 06 08mov     dword [data_8062e68], eaxOpcode: a1 7c 2e 06 08mov     eax, dword [data_8062e7c]Opcode: 85 c0test    eax, eaxOpcode: 75 99jne     0x8048f6bBasic Block 16Opcode: e8 1c ff ff ffcall    sub_8048f0cOpcode: 90nop     Opcode: a1 7c 2e 06 08mov     eax, dword [data_8062e7c]Opcode: eb bbjmp     0x8048fb3Basic Block 17Opcode: 8d 84 24 32 0c 00 00lea     eax, [esp+0xc32] {var_1a}Opcode: 89 44 24 04mov     dword [esp+data_4 {var_c48}], eaxOpcode: 89 1c 24mov     dword [esp {var_c4c}], ebxOpcode: e8 3a 26 00 00call    sub_804af49Opcode: 90nop     Opcode: 85 c0test    eax, eaxOpcode: 0f 84 d6 3f 00 00je      0x804c8eeBasic Block 18Opcode: 89 04 24mov     dword [esp], eaxOpcode: c7 44 24 04 da d6 04 08mov     dword [esp+data_4], data_804d6da  {"spec"}Opcode: e8 7d 00 00 00call    sub_8048ff8Opcode: 90nop     Opcode: a3 6c 2e 06 08mov     dword [data_8062e6c], eaxOpcode: a1 7c 2e 06 08mov     eax, dword [data_8062e7c]Opcode: 85 c0test    eax, eaxOpcode: 75 0bjne     0x8048f95Basic Block 19Opcode: e8 35 ff ff ffcall    sub_8048f0cOpcode: 90nop     Opcode: a1 7c 2e 06 08mov     eax, dword [data_8062e7c]Opcode: eb 8cjmp     0x8048f6bBasic Block 20Opcode: 31 c0xor     eax, eax  {data_0}Opcode: e9 73 bf ff ffjmp     0x8048868Basic Block 21Opcode: 0f b7 8c 24 32 0c 00 00movzx   ecx, word [esp+0xc32 {var_1a}]Opcode: 89 4c 24 08mov     dword [esp+data_8 {var_c44}], ecxOpcode: 89 44 24 04mov     dword [esp+data_4 {var_c48}], eaxOpcode: 8d 6c 24 18lea     ebp, [esp+0x18] {var_c34}Opcode: 89 2c 24mov     dword [esp {var_c4c}], ebpOpcode: e8 ab 3f 00 00call    sub_804c8dfOpcode: 90nop     Opcode: 83 bc 24 24 0c 00 00 00cmp     dword [esp+0xc24 {var_28}], data_0Opcode: 0f 84 5d 38 00 00je      0x804c1a0Basic Block 22Opcode: 89 04 24mov     dword [esp], eaxOpcode: c7 44 24 04 df d6 04 08mov     dword [esp+data_4], data_804d6df  {"version"}Opcode: e8 53 00 00 00call    sub_8048ff8Opcode: 90nop     Opcode: a3 70 2e 06 08mov     dword [data_8062e70], eaxOpcode: 83 c4 0cadd     esp, data_cOpcode: e9 2e 01 00 00jmp     0x80490e1Basic Block 23Opcode: e8 7d ff ff ffcall    sub_8048f0cOpcode: 90nop     Opcode: a1 7c 2e 06 08mov     eax, dword [data_8062e7c]Basic Block 24Opcode: 0f b6 c0movzx   eax, alOpcode: 81 c4 3c 0c 00 00add     esp, 0xc3c {var_10}Opcode: 5epop     esiOpcode: 5fpop     ediOpcode: 5bpop     ebxOpcode: 5dpop     ebpOpcode: e9 67 08 00 00jmp     0x80490e1Basic Block 25Opcode: 89 74 24 04mov     dword [esp+data_4 {var_c48}], esiOpcode: 89 2c 24mov     dword [esp {var_c4c}], ebpOpcode: e8 32 06 00 00call    sub_804c7deOpcode: 90nop     Opcode: 89 c6mov     esi, eaxOpcode: 85 f6test    esi, esiOpcode: 74 70je      0x804c223Basic Block 26Opcode: c6 84 24 38 0c 00 00 04mov     byte [esp+0xc38 {var_14}], 0x4Opcode: e9 db 38 00 00jmp     0x804c22bBasic Block 27Opcode: c6 84 24 38 0c 00 00 05mov     byte [esp+0xc38 {var_14}], 0x5Basic Block 28Opcode: 8b 84 24 24 0c 00 00mov     eax, dword [esp+0xc24 {var_28}]Opcode: 85 c0test    eax, eaxOpcode: 75 65jne     0x804c223Basic Block 29Opcode: 8b 43 04mov     eax, dword [ebx+data_4]Opcode: 89 44 24 08mov     dword [esp+data_8 {var_c44}], eaxOpcode: 8d 84 24 38 0c 00 00lea     eax, [esp+0xc38] {var_14}Opcode: 89 04 24mov     dword [esp {var_c4c}], eaxOpcode: c7 44 24 04 01 00 00 00mov     dword [esp+data_4 {var_c48}], data_1Opcode: e9 80 fe ff ffjmp     0x804c0c9Basic Block 30Opcode: e8 a5 c1 ff ffcall    sub_8048273Opcode: 90nop     Opcode: 89 2c 24mov     dword [esp {var_c4c}], ebpOpcode: e8 06 00 00 00call    sub_804c0ddOpcode: 90nop     Opcode: e9 89 c7 ff ffjmp     0x8048866Basic Block 31Opcode: c6 84 24 38 0c 00 00 00mov     byte [esp+0xc38 {var_14}], 0x0Opcode: 8b 43 04mov     eax, dword [ebx+data_4]Opcode: 89 44 24 08mov     dword [esp+data_8 {var_c44}], eaxOpcode: 8d 84 24 38 0c 00 00lea     eax, [esp+0xc38] {var_14}Opcode: 89 04 24mov     dword [esp {var_c4c}], eaxOpcode: c7 44 24 04 01 00 00 00mov     dword [esp+data_4 {var_c48}], data_1Opcode: e8 8f c0 ff ffcall    sub_8048273Opcode: 90nop     Opcode: 8b 7b 08mov     edi, dword [ebx+data_8]Opcode: 47inc     ediOpcode: 89 7b 08mov     dword [ebx+data_8], ediOpcode: 8d 53 0clea     edx, [ebx+data_c]Opcode: 8b 43 0cmov     eax, dword [ebx+data_c]Opcode: 40inc     eaxOpcode: 89 43 0cmov     dword [ebx+data_c], eaxOpcode: 83 7b 14 00cmp     dword [ebx+data_14], data_0Opcode: 75 87jne     0x804c183Basic Block 32Opcode: b0 01mov     al, 0x1Basic Block 33Opcode: 01 c0add     eax, eaxOpcode: 8b 4b 10mov     ecx, dword [ebx+data_10]Opcode: 39 c8cmp     eax, ecxOpcode: 76 99jbe     0x804c125Basic Block 34Opcode: 8b 43 10mov     eax, dword [ebx+data_10]Opcode: c7 43 10 00 00 00 00mov     dword [ebx+data_10], data_0Opcode: 89 44 24 04mov     dword [esp+data_4 {var_c48}], eaxOpcode: 89 14 24mov     dword [esp {var_c4c}], edxOpcode: 89 54 24 14mov     dword [esp+data_14 {var_c38}], edxOpcode: e8 68 e3 ff ffcall    sub_804a57eOpcode: 90nop     Opcode: 8b 54 24 14mov     edx, dword [esp+data_14 {var_c38}]Opcode: 8b 43 0cmov     eax, dword [ebx+data_c]Opcode: e9 60 ff ff ffjmp     0x804c183Basic Block 35Opcode: 69 d7 65 92 15 14imul    edx, edi, 0x14159265Opcode: 89 f8mov     eax, ediOpcode: c1 e8 10shr     eax, 0x10Opcode: 31 f8xor     eax, ediOpcode: 31 d0xor     eax, edxOpcode: 31 d2xor     edx, edx  {data_0}Opcode: f7 f1div     ecxOpcode: 89 54 24 14mov     dword [esp+data_14 {var_c38}], edxOpcode: c7 04 24 0c 00 00 00mov     dword [esp {var_c4c}], data_cOpcode: e8 ad cf ff ffcall    sub_80490f5Opcode: 90nop     Opcode: 89 30mov     dword [eax], esiOpcode: 89 78 04mov     dword [eax+data_4], ediOpcode: 8b 4b 14mov     ecx, dword [ebx+data_14]Opcode: 8b 74 24 14mov     esi, dword [esp+data_14 {var_c38}]Opcode: 8b 14 b1mov     edx, dword [ecx+esi*4]Opcode: 89 50 08mov     dword [eax+data_8], edxOpcode: 89 04 b1mov     dword [ecx+esi*4], eaxOpcode: 89 bc 24 38 0c 00 00mov     dword [esp+0xc38 {var_14}], ediOpcode: 8b 43 04mov     eax, dword [ebx+data_4]Opcode: 89 44 24 08mov     dword [esp+data_8 {var_c44}], eaxOpcode: 8d 84 24 38 0c 00 00lea     eax, [esp+0xc38] {var_14}Opcode: 89 04 24mov     dword [esp {var_c4c}], eaxOpcode: c7 44 24 04 04 00 00 00mov     dword [esp+data_4 {var_c48}], data_4Opcode: e9 46 ff ff ffjmp     0x804c0c9Basic Block 36Opcode: 01 c9add     ecx, ecxOpcode: 89 4c 24 04mov     dword [esp+data_4 {var_c48}], ecxOpcode: 89 14 24mov     dword [esp {var_c4c}], edxOpcode: e8 e4 e3 ff ffcall    sub_804a57eOpcode: 90nop     Opcode: 8b 4b 10mov     ecx, dword [ebx+data_10]Opcode: eb 85jmp     0x804c125