Function at 0x53eb90
Capabilities:
Access peb ldr_data
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x57c050
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
push ebx
push esi
push edi
mov edi, ecx
lea ecx, [esp + 0x10]
mov dword [esp + 0x30], 0
call sub.MFC42.DLL_CString::CString_3
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 1
call sub.MFC42.DLL_CString::CString_3
push ecx
lea eax, [esp + 0x3c]
mov ecx, esp
mov dword [esp + 0x1c], esp
push eax
mov byte [esp + 0x38], 2
call sub.MFC42.DLL_CString::CString_2
lea ecx, [esp + 0x18]
push ecx
call fcn.004bd7e0
add esp, 8
push eax
lea ecx, [esp + 0x3c]
mov byte [esp + 0x34], 3
call sub.MFC42.DLL_CString::operator_2
lea ecx, [esp + 0x14]
mov byte [esp + 0x30], 2
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x38]
mov edx, dword [eax - 8]
test edx, edx
jne 0x53ec5d
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov dword [esp + 0x30], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 1
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x28
ret 4
xor esi, esi
test edx, edx
jle 0x53ec82
mov cl, byte [esi + eax]
cmp cl, 0x7c
je 0x53ec7d
cmp cl, 0x39
jg 0x53eda4
cmp cl, 0x30
jl 0x53eda4
inc esi
cmp esi, edx
jl 0x53ec63
xor esi, esi
test edx, edx
jle 0x53ecac
mov cl, byte [esi + eax]
cmp cl, 0x7c
je 0x53ecac
mov byte [esp + 0x14], cl
mov edx, dword [esp + 0x14]
push edx
lea ecx, [esp + 0x14]
call fcn.00557258
mov eax, dword [esp + 0x38]
inc esi
cmp esi, dword [eax - 8]
jl 0x53ec88
mov ecx, dword [eax - 8]
inc esi
cmp esi, ecx
jge 0x53ecd3
mov al, byte [esi + eax]
mov byte [esp + 0x14], al
mov ecx, dword [esp + 0x14]
push ecx
lea ecx, [esp + 0x10]
call fcn.00557258
mov eax, dword [esp + 0x38]
inc esi
cmp esi, dword [eax - 8]
jl 0x53ecb4
mov edx, dword [esp + 0xc]
mov eax, dword [edx - 8]
test eax, eax
je 0x53edee
mov ecx, dword [esp + 0x10]
cmp eax, dword [ecx - 8]
jge 0x53ed48
lea edx, [esp + 0xc]
lea eax, [esp + 0x10]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call sub.MFC42.DLL_CString::CString_2
lea ecx, [esp + 0x20]
push ecx
mov ecx, edi
call fcn.0053f410
lea edx, [esp + 0x18]
push eax
push edx
mov byte [esp + 0x3c], 4
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x34], 5
call sub.MFC42.DLL_CString::operator_2
lea ecx, [esp + 0x14]
mov byte [esp + 0x30], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x18]
mov byte [esp + 0x30], 2
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax - 8]
mov edx, dword [ecx - 8]
cmp eax, edx
je 0x53edea
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov dword [esp + 0x30], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 3
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x28
ret 4
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov dword [esp + 0x30], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 2
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x28
ret 4
test eax, eax
jne 0x53ee60
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x1c], esp
push edx
call sub.MFC42.DLL_CString::CString_2
mov ecx, edi
call fcn.0053f060
test eax, eax
jge 0x53ee54
mov esi, 3
lea ecx, [esp + 0xc]
sub esi, eax
mov byte [esp + 0x30], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov dword [esp + 0x30], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, esi
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x28
ret 4
mov dword [edi + 0x78], 1
jmp 0x53ef9d
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::CString_3
lea eax, [esp + 0x10]
lea ecx, [esp + 0x14]
push eax
mov byte [esp + 0x34], 6
mov dword [edi + 0x78], 0
call sub.MFC42.DLL_CString::operator_2
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x53eeb3
test cl, cl
je 0x53eeaf
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x53eeb3
add eax, 2
add esi, 2
test cl, cl
jne 0x53ee8b
xor eax, eax
jmp 0x53eeb8
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jg 0x53ef8f
push ecx
lea eax, [esp + 0x18]
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call sub.MFC42.DLL_CString::CString_2
mov ecx, edi
call fcn.0053f060
test eax, eax
jne 0x53eee1
inc dword [edi + 0x78]
jmp 0x53eeea
cmp eax, 0xfffffffd
je 0x53f000
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 0x5b7d04
call fcn.0055734e
push ecx
mov byte [esp + 0x38], 7
mov ecx, esp
mov dword [esp + 0x28], esp
push 0x5b6c94
call fcn.0055734e
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
mov byte [esp + 0x40], 8
call sub.MFC42.DLL_CString::CString_2
lea eax, [esp + 0x24]
mov byte [esp + 0x3c], 6
push eax
call fcn.004bdff0
add esp, 0x10
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x34], 9
call sub.MFC42.DLL_CString::operator_2
lea ecx, [esp + 0x18]
mov byte [esp + 0x30], 6
call sub.MFC42.DLL_CString::CString
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x53ef82
test cl, cl
je 0x53ef7e
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x53ef82
add eax, 2
add esi, 2
test cl, cl
jne 0x53ef5e
xor eax, eax
jmp 0x53ef87
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jle 0x53eec0
lea ecx, [esp + 0x14]
mov byte [esp + 0x30], 2
call sub.MFC42.DLL_CString::CString
lea eax, [esp + 0x10]
lea ecx, [edi + 0xca8]
push eax
call sub.MFC42.DLL_CString::operator_2
lea ecx, [esp + 0xc]
push ecx
lea ecx, [edi + 0xcac]
call sub.MFC42.DLL_CString::operator_2
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov dword [esp + 0x30], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor eax, eax
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x28
ret 4
lea ecx, [esp + 0x14]
mov byte [esp + 0x30], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0xc]
mov byte [esp + 0x30], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov dword [esp + 0x30], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x28]
pop edi
pop esi
mov eax, 7
mov dword fs:[0], ecx
pop ebx
add esp, 0x28
ret 4