Function at 0x486180
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x5a8d60
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x28
push ebx
push ebp
mov ebp, dword [ecx + 4]
push esi
push edi
push 0x612a8c
mov eax, dword [ebp + 0x78]
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], ebp
mov esi, dword [eax + 0x10c]
call sub.MFC42.DLL_CString::CString_3
xor edi, edi
lea ecx, [esp + 0x18]
mov dword [esp + 0x40], edi
call sub.MFC42.DLL_CString::CString_1
lea ecx, [esp + 0x24]
mov byte [esp + 0x40], 1
call sub.MFC42.DLL_CString::CString_1
lea ecx, [esp + 0x20]
mov byte [esp + 0x40], 2
call sub.MFC42.DLL_CString::CString_1
lea ecx, [esp + 0x30]
mov byte [esp + 0x40], 3
call sub.MFC42.DLL_CString::CString_1
lea ecx, [esp + 0x10]
mov byte [esp + 0x40], 4
call sub.MFC42.DLL_CString::CString_1
lea ecx, [esp + 0x1c]
mov byte [esp + 0x40], 5
call sub.MFC42.DLL_CString::CString_1
mov ecx, dword [0x635400]
mov byte [esp + 0x40], 6
add ecx, 0x210
push ecx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edx, dword [0x635400]
xor ecx, ecx
mov eax, dword [edx + 0x2f0]
cmp eax, edi
jle 0x4863ec
mov ebp, dword [edx + 0x2ec]
mov ebx, dword [ebp]
cmp dword [ebx], esi
je 0x486257
inc ecx
add ebp, 4
cmp ecx, eax
jl 0x486243
jmp 0x4863e8
mov eax, dword [ebx + 0x20]
test eax, eax
jle 0x4863e8
xor ebp, ebp
mov edx, dword [ebx + 0x1c]
lea ecx, [esp + 0x24]
mov esi, dword [edx + ebp]
mov eax, dword [esi + 0x70]
add eax, 0xa8
push eax
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x24]
push 0xa
push ecx
call fcn.004ec930
mov edx, dword [esi + 0x70]
add esp, 8
lea ecx, [esp + 0x20]
push edx
call sub.MFC42.DLL_CString::operator_1
lea eax, [esp + 0x20]
push 0xa
push eax
call fcn.004ec930
mov eax, dword [esi + 0x74]
add esp, 8
add eax, 0xfffffffd
cmp eax, 0x1c
ja case.0x4862be.12
xor ecx, ecx
mov cl, byte [eax + 0x4866c0]
jmp dword [ecx*4 + 0x486698]
push 0x612a84
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::operator
jmp 0x48634c
mov al, byte [esi + 0x12a]
test al, al
jne 0x4862ed
push 0x612a7c
lea ecx, [esp + 0x14]
call fcn.005928ca
push 0x60d788
jmp 0x486343
push 0x612a70
jmp 0x486343
push 0x612a64
jmp 0x486343
push 0x612a58
jmp 0x486343
push 0x612a50
jmp 0x486343
push 0x612a48
jmp 0x486343
push 0x612a3c
jmp 0x486343
mov al, byte [esi + 0x128]
test al, al
mov eax, 0x612a30
jne 0x486332
mov eax, 0x612a24
push eax
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::operator
jmp 0x48634c
push 0x612a18
lea ecx, [esp + 0x14]
call fcn.005928ca
lea edx, [esp + 0x10]
push 8
push edx
call fcn.004ec930
mov eax, dword [esi + 0x70]
add esp, 8
mov cl, byte [eax + 0x57]
test cl, cl
je 0x486371
lea ecx, [esp + 0x1c]
push 0x612a10
push ecx
jmp 0x48637b
lea edx, [esp + 0x1c]
push 0x612a08
push edx
call sub.MFC42.DLL_CString::Format
mov eax, dword [esi + 0x34]
add esp, 8
inc edi
mov ecx, dword [eax + 0x70]
mov esi, dword [eax + 0x74]
mov edx, dword [eax + 0x6c]
sub ecx, esi
mov esi, dword [eax + 0x68]
sub ecx, edx
mov edx, dword [eax + 0x78]
add ecx, esi
push ecx
mov ecx, dword [esp + 0x20]
push edx
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x34]
push ecx
push edx
push eax
push edi
lea ecx, [esp + 0x38]
push str.__4d__s__s__s__s__s__8d__8d_r
push ecx
call sub.MFC42.DLL_CString::Format
add esp, 0x28
lea edx, [esp + 0x18]
lea ecx, [esp + 0x14]
push edx
call fcn.00592b6a
mov eax, dword [ebx + 0x20]
add ebp, 4
cmp edi, eax
jl 0x486264
mov edx, dword [0x635400]
mov ebp, dword [esp + 0x28]
mov eax, dword [edx + 0x208]
lea ecx, [edx + 0x208]
call dword [eax + 0x1c]
push str.____________________________________________________________________________r
lea ecx, [esp + 0x18]
call fcn.005928ca
push edi
lea ecx, [esp + 0x1c]
push 0x61280c
push ecx
call sub.MFC42.DLL_CString::Format
add esp, 0xc
lea edx, [esp + 0x18]
lea ecx, [esp + 0x14]
push edx
call fcn.00592b6a
push 0x6129d4
lea ecx, [esp + 0x18]
call fcn.005928ca
push 0x6129b8
lea ecx, [esp + 0x18]
call fcn.005928ca
push 0x61299c
lea ecx, [esp + 0x18]
call fcn.005928ca
mov ecx, dword [esp + 0x14]
mov eax, dword [ebp]
push 0
push ecx
mov ecx, ebp
call dword [eax + 0x90]
mov eax, dword [0x635400]
test eax, eax
je 0x4864d1
mov cl, byte [eax + 0x40]
test cl, cl
je 0x4864d1
add eax, 0x250
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edx, dword [esp + 0x14]
mov eax, dword [ebp + 0x78]
push edx
push str._RX_
push 0
push ecx
add eax, 0x3c
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call sub.MFC42.DLL_CString::CString_2
mov ecx, dword [0x635400]
push str.command
push str.esms
mov edx, dword [ecx + 0x44]
push edx
call fcn.004eb7d0
mov eax, dword [0x635400]
add esp, 0x1c
mov edx, dword [eax + 0x248]
lea ecx, [eax + 0x248]
call dword [edx + 0x1c]
call fcn.0044c560
mov eax, dword [eax + 0xd0]
cmp byte [eax], 0
je 0x48651f
mov ecx, dword [esp + 0x14]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push str._RX_
call sub.MFC42.DLL_CString::CString_3
mov edx, dword [ebp + 0x78]
push ecx
add edx, 0x3c
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
mov byte [esp + 0x50], 7
call sub.MFC42.DLL_CString::CString_2
mov ecx, dword [0x62fc58]
mov byte [esp + 0x4c], 6
call fcn.00401140
mov eax, dword [0x62fc60]
test eax, eax
je 0x48661c
mov ecx, dword [eax + 0x50]
xor edi, edi
test ecx, ecx
jle 0x48661c
mov ebx, dword [sym.imp.MSVCRT.dll__mbsicmp]
mov ecx, dword [eax + 0x4c]
mov esi, dword [ecx + edi*4]
test esi, esi
je 0x486610
mov cl, byte [esi + 0x88]
test cl, cl
je 0x486610
call fcn.0044c560
mov edx, dword [eax + 0xd0]
mov al, byte [edx + 2]
test al, al
je 0x48660b
mov eax, dword [esi + 0x84]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x48660b
mov ecx, dword [ebp + 0x78]
add ecx, 0x3c
push ecx
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::CString_2
mov edx, dword [esp + 0x2c]
mov byte [esp + 0x40], 8
mov eax, dword [edx - 8]
test eax, eax
je 0x4865fd
mov al, byte [esi + 0x80]
test al, al
jne 0x4865fd
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 0x84]
mov eax, dword [eax + 0x3c]
push eax
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x4865fd
mov ecx, dword [esp + 0x14]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str._RX_
call sub.MFC42.DLL_CString::CString_3
mov edx, dword [ebp + 0x78]
push ecx
add edx, 0x3c
mov ecx, esp
mov dword [esp + 0x40], esp
push edx
mov byte [esp + 0x50], 9
call sub.MFC42.DLL_CString::CString_2
mov ecx, esi
mov byte [esp + 0x4c], 8
call fcn.004024b0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x40], 6
call sub.MFC42.DLL_CString::CString
mov eax, dword [0x62fc60]
mov ecx, dword [eax + 0x50]
inc edi
cmp edi, ecx
jl 0x48653f
lea ecx, [esp + 0x1c]
mov byte [esp + 0x40], 5
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x40], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x30]
mov byte [esp + 0x40], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x20]
mov byte [esp + 0x40], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
mov byte [esp + 0x40], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x18]
mov byte [esp + 0x40], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
mov dword [esp + 0x40], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x38]
pop edi
pop esi
pop ebp
mov al, 1
mov dword fs:[0], ecx
pop ebx
add esp, 0x34
ret 4
adc bh, bh
invalid