Function at 0x58d930
Capabilities:
Extract resource via kernel32 functions
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c43e1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x28
push ebx
mov ebx, ecx
push esi
push edi
mov al, byte [ebx + 0x18]
mov dword [ebp - 0x1c], ebx
cmp al, 1
je 0x58e22c
call fcn.0044c870
call fcn.0044c870
mov eax, dword [eax + 0xd0]
xor edi, edi
push edi
mov byte [eax + 0x10], 0
mov byte [ebx + 0x18], 1
call sub.MFC42.DLL_AfxSocketInit
test eax, eax
jne 0x58d9bc
call sub.MFC42.DLL_AfxGetThread
cmp eax, edi
je 0x58d994
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x7c]
jmp 0x58d996
xor eax, eax
push 0x40
push 0x6060cc
push 0x631f80
mov ecx, eax
call sub.MFC42.DLL_CWnd::MessageBoxA
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push edi
call dword [sym.imp.ole32.dll_CoInitialize]
jmp 0x58d9cc
mov ecx, ebx
call fcn.00590ec0
test al, al
jne 0x58d9e5
mov ecx, ebx
call fcn.005910f0
push edi
call dword [sym.imp.MSVCRT.dll_exit]
jmp 0x58d9ee
push 0x14
call sub.MFC42.DLL_operatornew
mov esi, eax
add esp, 4
mov dword [ebp - 0x20], esi
cmp esi, edi
mov dword [ebp - 4], edi
je 0x58daf7
mov dword [esi], 0x5d3338
mov dword [esi + 4], edi
mov dword [esi + 0x10], edi
mov dword [esi + 0xc], edi
mov dword [esi + 8], edi
mov byte [ebp - 4], 1
call sub.MFC42.DLL_AfxGetModuleState
mov edi, dword [eax + 8]
test edi, edi
je 0x58daf1
push 0x631f78
push 0x65
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceA]
test eax, eax
je 0x58daf1
push eax
push edi
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x58daf1
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
test eax, eax
mov dword [ebp - 0x14], eax
je 0x58daf1
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
test ecx, ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x10], edi
jle 0x58daf1
mov eax, dword [ebp - 0x14]
mov al, byte [edi + eax]
cmp al, 0xa
jne 0x58dadb
test edx, edx
je 0x58dae9
push 0xc
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [ebp - 0x24], eax
test eax, eax
mov byte [ebp - 4], 2
je 0x58dab2
lea ecx, [ebp - 0x34]
push ecx
mov ecx, eax
call fcn.00596030
mov ebx, eax
jmp 0x58dab4
xor ebx, ebx
mov edi, dword [esi + 8]
push 0xffffffffffffffff
mov ecx, esi
mov byte [ebp - 4], 1
lea edx, [edi + 1]
push edx
call fcn.0054c510
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0x18]
xor edx, edx
mov dword [eax + edi*4], ebx
mov edi, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x1c]
jmp 0x58dae9
cmp al, 0xd
je 0x58dae9
mov byte [ebp + edx - 0x34], al
inc edx
mov byte [ebp + edx - 0x34], 0
inc edi
cmp edi, ecx
mov dword [ebp - 0x10], edi
jl 0x58da80
mov eax, esi
xor edi, edi
jmp 0x58daf9
xor eax, eax
or esi, 0xffffffff
push 0x34
mov dword [ebp - 4], esi
mov dword [ebx + 0x298], eax
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 3
je 0x58db26
mov ecx, eax
call fcn.004a46a0
jmp 0x58db28
xor eax, eax
mov dword [ebp - 4], esi
mov dword [ebx + 0x3a8], eax
jmp 0x58db3a
mov ecx, ebx
call fcn.00590080
test al, al
jne 0x58dc2c
mov eax, dword [0x63ac20]
cmp eax, edi
je 0x58dbb0
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58dbb0
add eax, 0x250
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push edi
push 0x631f4c
push 0x606790
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63ac20]
push str.runtime
push 0x60677c
mov edx, dword [ecx + 0x44]
push edx
call fcn.004ec710
mov eax, dword [0x63ac20]
add esp, 0x1c
mov edx, dword [eax + 0x248]
lea ecx, [eax + 0x248]
call dword [edx + 0x1c]
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x631f4c
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 4
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x606790
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 6
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x606778
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x6357fc]
mov dword [ebp - 4], esi
call fcn.00458fc0
push edi
push edi
push 0x631f4c
call sub.MFC42.DLL_AfxMessageBox
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, ebx
call fcn.00591e70
test al, al
jne 0x58dc56
push edi
push edi
push 0x631f3c
call sub.MFC42.DLL_AfxMessageBox
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, ebx
call fcn.00591ca0
test al, al
jne 0x58dc72
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, ebx
call fcn.00591860
test al, al
jne 0x58dd58
mov eax, dword [0x63ac20]
cmp eax, edi
je 0x58dce8
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58dce8
add eax, 0x250
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push edi
push 0x631f2c
push 0x606790
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov eax, dword [0x63ac20]
push str.runtime
push 0x60677c
mov ecx, dword [eax + 0x44]
push ecx
call fcn.004ec710
mov edx, dword [0x63ac20]
add esp, 0x1c
mov eax, dword [edx + 0x248]
lea ecx, [edx + 0x248]
call dword [eax + 0x1c]
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x631f2c
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 7
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x606790
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 8
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 9
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x606778
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x6357fc]
mov dword [ebp - 4], esi
call fcn.00458fc0
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
jmp 0x58dd61
mov eax, dword [0x63ac20]
cmp eax, edi
mov edi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
je 0x58ddcb
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58ddcb
add eax, 0x250
push eax
call edi
push 0
push str.________________________________________________________
push 0x60e5d8
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63ac20]
push str.runtime
push 0x60677c
mov edx, dword [ecx + 0x44]
push edx
call fcn.004ec710
mov eax, dword [0x63ac20]
add esp, 0x1c
mov edx, dword [eax + 0x248]
lea ecx, [eax + 0x248]
call dword [edx + 0x1c]
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.________________________________________________________
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 0xa
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x60e5d8
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0xb
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0xc
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x606778
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x6357fc]
mov dword [ebp - 4], esi
call fcn.00458fc0
mov eax, dword [0x63ac20]
test eax, eax
je 0x58de8c
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58de8c
add eax, 0x250
push eax
call edi
push 0
push 0x631ee0
push 0x60e5d8
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov eax, dword [0x63ac20]
push str.runtime
push 0x60677c
mov ecx, dword [eax + 0x44]
push ecx
call fcn.004ec710
mov edx, dword [0x63ac20]
add esp, 0x1c
mov eax, dword [edx + 0x248]
lea ecx, [edx + 0x248]
call dword [eax + 0x1c]
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x631ee0
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x60e5d8
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0xe
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0xf
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x606778
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x6357fc]
mov dword [ebp - 4], esi
call fcn.00458fc0
lea esi, [ebx + 0x90]
push 1
mov ecx, esi
call fcn.00498c20
mov ecx, esi
call fcn.00499110
push 1
mov ecx, esi
call fcn.00499530
push 1
mov ecx, esi
call fcn.00499f50
push 1
mov ecx, esi
call fcn.0049a8f0
mov ecx, esi
call fcn.0049e500
mov ecx, esi
call fcn.0049e890
mov ecx, esi
call fcn.0049cef0
mov ecx, esi
call fcn.0049b100
mov ecx, esi
call fcn.0049e090
mov ecx, esi
call fcn.0049b750
lea ecx, [ebx + 0x28]
call fcn.005148b0
mov ecx, ebx
call fcn.00590c80
test al, al
jne 0x58e041
mov eax, dword [0x63ac20]
test eax, eax
je 0x58dfbf
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58dfbf
add eax, 0x250
push eax
call edi
push 0
push 0x631ed0
push 0x606790
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63ac20]
push str.runtime
push 0x60677c
mov edx, dword [ecx + 0x44]
push edx
call fcn.004ec710
mov eax, dword [0x63ac20]
add esp, 0x1c
mov edx, dword [eax + 0x248]
lea ecx, [eax + 0x248]
call dword [edx + 0x1c]
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x631ed0
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 0x10
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x606790
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0x11
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0x12
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x606778
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x6357fc]
mov dword [ebp - 4], 0xffffffff
call fcn.00458fc0
push 0
push 0
push 0x631ed0
call sub.MFC42.DLL_AfxMessageBox
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.004eb9b0
push eax
lea ecx, [ebx + 0x1d0]
call sub.MFC42.DLL_CString::operator
mov ecx, ebx
mov dword [ebx + 0x294], 0
call fcn.00591a50
mov ecx, ebx
call fcn.00595890
call fcn.0044c870
mov cl, byte [eax + 0xc7]
test cl, cl
je 0x58e0a7
mov al, byte [ebx + 0x5f]
test al, al
je 0x58e0a7
call sub.MFC42.DLL_AfxGetThread
test eax, eax
je 0x58e092
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x7c]
jmp 0x58e094
xor eax, eax
mov eax, dword [eax + 0x20]
push 0
push 4
push 0x485
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [0x63ac20]
test eax, eax
je 0x58e10b
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58e10b
add eax, 0x250
push eax
call edi
push 0
push 0x631ec0
push 0x60e5d8
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63ac20]
push str.runtime
push 0x60677c
mov edx, dword [ecx + 0x44]
push edx
call fcn.004ec710
mov eax, dword [0x63ac20]
add esp, 0x1c
mov edx, dword [eax + 0x248]
lea ecx, [eax + 0x248]
call dword [edx + 0x1c]
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x631ec0
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 0x13
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x60e5d8
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0x14
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x606778
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x6357fc]
or esi, 0xffffffff
mov dword [ebp - 4], esi
call fcn.00458fc0
mov eax, dword [0x63ac20]
test eax, eax
je 0x58e1cf
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58e1cf
add eax, 0x250
push eax
call edi
push 0
push str.________________________________________________________
push 0x60e5d8
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov eax, dword [0x63ac20]
push str.runtime
push 0x60677c
mov ecx, dword [eax + 0x44]
push ecx
call fcn.004ec710
mov edx, dword [0x63ac20]
add esp, 0x1c
mov eax, dword [edx + 0x248]
lea ecx, [edx + 0x248]
call dword [eax + 0x1c]
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.________________________________________________________
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 0x16
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x60e5d8
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0x17
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
push ecx
mov byte [ebp - 4], 0x18
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x606778
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x6357fc]
mov dword [ebp - 4], esi
call fcn.00458fc0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov al, 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret