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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c1141
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 0x58a54c
call fcn.0044c4d0
call fcn.0044c4d0
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 0x589cdc
call sub.MFC42.DLL_AfxGetThread
cmp eax, edi
je 0x589cb4
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x7c]
jmp 0x589cb6
xor eax, eax
push 0x40
push 0x6030cc
push 0x62e6e4
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 0x589cec
mov ecx, ebx
call fcn.0058d1e0
test al, al
jne 0x589d05
mov ecx, ebx
call fcn.0058d410
push edi
call dword [sym.imp.MSVCRT.dll_exit]
jmp 0x589d0e
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 0x589e17
mov dword [esi], 0x5d0270
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 0x589e11
push 0x62e6dc
push 0x65
push edi
call dword [sym.imp.KERNEL32.dll_FindResourceA]
test eax, eax
je 0x589e11
push eax
push edi
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
je 0x589e11
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
test eax, eax
mov dword [ebp - 0x14], eax
je 0x589e11
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 0x589e11
mov eax, dword [ebp - 0x14]
mov al, byte [edi + eax]
cmp al, 0xa
jne 0x589dfb
test edx, edx
je 0x589e09
push 0xc
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [ebp - 0x24], eax
test eax, eax
mov byte [ebp - 4], 2
je 0x589dd2
lea ecx, [ebp - 0x34]
push ecx
mov ecx, eax
call fcn.005922b0
mov ebx, eax
jmp 0x589dd4
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.00582a70
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 0x589e09
cmp al, 0xd
je 0x589e09
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 0x589da0
mov eax, esi
xor edi, edi
jmp 0x589e19
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 0x589e46
mov ecx, eax
call fcn.004a3120
jmp 0x589e48
xor eax, eax
mov dword [ebp - 4], esi
mov dword [ebx + 0x3a8], eax
jmp 0x589e5a
mov ecx, ebx
call fcn.0058c3a0
test al, al
jne 0x589f4c
mov eax, dword [0x637760]
cmp eax, edi
je 0x589ed0
mov cl, byte [eax + 0x40]
test cl, cl
je 0x589ed0
add eax, 0x250
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push edi
push 0x62e6b0
push 0x603774
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x637760]
push str.runtime
push 0x603760
mov edx, dword [ecx + 0x44]
push edx
call fcn.004eb100
mov eax, dword [0x637760]
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 0x62e6b0
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 4
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x603774
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 0x60375c
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63233c]
mov dword [ebp - 4], esi
call fcn.00458d90
push edi
push edi
push 0x62e6b0
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.0058e190
test al, al
jne 0x589f76
push edi
push edi
push 0x62e6a0
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.0058dfc0
test al, al
jne 0x589f92
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.0058db80
test al, al
jne 0x58a078
mov eax, dword [0x637760]
cmp eax, edi
je 0x58a008
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58a008
add eax, 0x250
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push edi
push 0x62e690
push 0x603774
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov eax, dword [0x637760]
push str.runtime
push 0x603760
mov ecx, dword [eax + 0x44]
push ecx
call fcn.004eb100
mov edx, dword [0x637760]
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 0x62e690
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 7
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x603774
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 0x60375c
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63233c]
mov dword [ebp - 4], esi
call fcn.00458d90
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 0x58a081
mov eax, dword [0x637760]
cmp eax, edi
mov edi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
je 0x58a0eb
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58a0eb
add eax, 0x250
push eax
call edi
push 0
push str.________________________________________________________
push 0x60b5c0
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x637760]
push str.runtime
push 0x603760
mov edx, dword [ecx + 0x44]
push edx
call fcn.004eb100
mov eax, dword [0x637760]
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 0x60b5c0
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 0x60375c
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63233c]
mov dword [ebp - 4], esi
call fcn.00458d90
mov eax, dword [0x637760]
test eax, eax
je 0x58a1ac
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58a1ac
add eax, 0x250
push eax
call edi
push 0
push 0x62e644
push 0x60b5c0
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov eax, dword [0x637760]
push str.runtime
push 0x603760
mov ecx, dword [eax + 0x44]
push ecx
call fcn.004eb100
mov edx, dword [0x637760]
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 0x62e644
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x60b5c0
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 0x60375c
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63233c]
mov dword [ebp - 4], esi
call fcn.00458d90
lea esi, [ebx + 0x90]
push 1
mov ecx, esi
call fcn.00497830
mov ecx, esi
call fcn.00497d20
push 1
mov ecx, esi
call fcn.00498140
push 1
mov ecx, esi
call fcn.00498b60
push 1
mov ecx, esi
call fcn.00499500
mov ecx, esi
call fcn.0049d110
mov ecx, esi
call fcn.0049d4a0
mov ecx, esi
call fcn.0049bb00
mov ecx, esi
call fcn.00499d10
mov ecx, esi
call fcn.0049cca0
mov ecx, esi
call fcn.0049a360
lea ecx, [ebx + 0x28]
call fcn.005124d0
mov ecx, ebx
call fcn.0058cfa0
test al, al
jne 0x58a361
mov eax, dword [0x637760]
test eax, eax
je 0x58a2df
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58a2df
add eax, 0x250
push eax
call edi
push 0
push 0x62e634
push 0x603774
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x637760]
push str.runtime
push 0x603760
mov edx, dword [ecx + 0x44]
push edx
call fcn.004eb100
mov eax, dword [0x637760]
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 0x62e634
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 0x10
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x603774
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 0x60375c
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63233c]
mov dword [ebp - 4], 0xffffffff
call fcn.00458d90
push 0
push 0
push 0x62e634
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.004ea3a0
push eax
lea ecx, [ebx + 0x1d0]
call sub.MFC42.DLL_CString::operator
mov ecx, ebx
mov dword [ebx + 0x294], 0
call fcn.0058dd70
mov ecx, ebx
call fcn.00591b10
call fcn.0044c4d0
mov cl, byte [eax + 0xc7]
test cl, cl
je 0x58a3c7
mov al, byte [ebx + 0x5f]
test al, al
je 0x58a3c7
call sub.MFC42.DLL_AfxGetThread
test eax, eax
je 0x58a3b2
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x7c]
jmp 0x58a3b4
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 [0x637760]
test eax, eax
je 0x58a42b
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58a42b
add eax, 0x250
push eax
call edi
push 0
push 0x62e624
push 0x60b5c0
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x637760]
push str.runtime
push 0x603760
mov edx, dword [ecx + 0x44]
push edx
call fcn.004eb100
mov eax, dword [0x637760]
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 0x62e624
call sub.MFC42.DLL_CString::CString_3
push ecx
mov dword [ebp - 4], 0x13
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x60b5c0
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 0x60375c
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63233c]
or esi, 0xffffffff
mov dword [ebp - 4], esi
call fcn.00458d90
mov eax, dword [0x637760]
test eax, eax
je 0x58a4ef
mov cl, byte [eax + 0x40]
test cl, cl
je 0x58a4ef
add eax, 0x250
push eax
call edi
push 0
push str.________________________________________________________
push 0x60b5c0
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push str..scc.
call sub.MFC42.DLL_CString::CString_3
mov eax, dword [0x637760]
push str.runtime
push 0x603760
mov ecx, dword [eax + 0x44]
push ecx
call fcn.004eb100
mov edx, dword [0x637760]
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 0x60b5c0
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 0x60375c
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x63233c]
mov dword [ebp - 4], esi
call fcn.00458d90
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