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

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x581faf
push eax
mov eax, 0x403c
mov dword fs:[0], esp
call fcn.00573b80
mov edx, dword [esp + 0x404c]
push ebx
push ebp
mov ebp, dword [esp + 0x4058]
push esi
lea eax, [edx + 0x18]
push edi
mov ecx, 0x1000
mov esi, eax
lea edi, [esp + 0x4c]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [edx + 4]
xor ebx, ebx
mov dword [ebp + 0x64], ecx
xor ecx, ecx
mov cx, word [edx + 2]
lea edx, [esp + 0x24]
push edx
push 0x3a
push eax
mov dword [esp + 0x34], ebx
mov dword [ebp + 0x68], ecx
call fcn.0043c830
mov esi, eax
add esp, 0xc
cmp esi, ebx
jne 0x49c9b3
xor eax, eax
jmp 0x49d159
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push esi
repne scasb al, byte es:[edi]
mov edi, dword [sym.imp.MSVCRT.dll_atoi]
not ecx
mov dword [esp + 0x4c], ecx
call edi
add esp, 4
cmp eax, 1
mov dword [ebp + 0x6c], eax
je 0x49c9dd
xor eax, eax
jmp 0x49d159
push esi
lea ecx, [esp + 0x14]
mov dword [esp + 0x34], ebx
call sub.MFC42.DLL_CString::CString_3
push str._lbt
lea ecx, [esp + 0x14]
mov dword [esp + 0x4058], ebx
call sub.MFC42.DLL_CString::Find
cmp eax, 0xffffffff
je 0x49ce1e
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x1c]
mov ecx, dword [ecx - 8]
sub ecx, eax
push ecx
push edx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x4058], 1
call fcn.00572d3c
lea ecx, [esp + 0x1c]
mov byte [esp + 0x4054], 0
call sub.MFC42.DLL_CString::CString
push 0x5f3788
push str._lbt
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Replace
push 0x5e2e24
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
mov ebx, eax
cmp ebx, 0xffffffff
je 0x49ce06
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x18]
mov eax, dword [eax - 8]
sub eax, ebx
push eax
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Right
push 0x5f3788
push 0x5e2e24
lea ecx, [esp + 0x20]
mov byte [esp + 0x405c], 2
call sub.MFC42.DLL_CString::Replace
lea ecx, [esp + 0x40]
call sub.MFC42.DLL_CString::CString_5
lea ecx, [esp + 0x38]
mov byte [esp + 0x4054], 3
call sub.MFC42.DLL_CString::CString_5
lea ecx, [esp + 0x20]
mov byte [esp + 0x4054], 4
call sub.MFC42.DLL_CString::CString_5
lea ecx, [esp + 0x3c]
mov byte [esp + 0x4054], 5
call sub.MFC42.DLL_CString::CString_5
lea ecx, [esp + 0x2c]
mov byte [esp + 0x4054], 6
call sub.MFC42.DLL_CString::CString_5
lea ecx, [esp + 0x34]
mov byte [esp + 0x4054], 7
call sub.MFC42.DLL_CString::CString_5
lea ecx, [esp + 0x14]
mov byte [esp + 0x4054], 8
call sub.MFC42.DLL_CString::CString_5
lea edx, [esp + 0x40]
lea eax, [esp + 0x18]
push edx
push 1
push 0
push 0x5e90f0
push eax
mov byte [esp + 0x4068], 9
call fcn.004405a0
lea ecx, [esp + 0x4c]
lea edx, [esp + 0x2c]
push ecx
push 2
push 1
push 0x5e90f0
push edx
call fcn.004405a0
lea eax, [esp + 0x48]
lea ecx, [esp + 0x40]
push eax
push 3
push 2
push 0x5e90f0
push ecx
call fcn.004405a0
lea edx, [esp + 0x78]
lea eax, [esp + 0x54]
push edx
push 4
push 3
push 0x5e90f0
push eax
call fcn.004405a0
add esp, 0x50
lea ecx, [esp + 0x2c]
lea edx, [esp + 0x18]
push ecx
push 5
push 4
push 0x5e90f0
push edx
call fcn.004405a0
lea eax, [esp + 0x48]
lea ecx, [esp + 0x2c]
push eax
push 6
push 5
push 0x5e90f0
push ecx
call fcn.004405a0
lea edx, [esp + 0x3c]
lea eax, [esp + 0x40]
push edx
push 7
push 6
push 0x5e90f0
push eax
call fcn.004405a0
mov ecx, dword [esp + 0x7c]
push ecx
call edi
mov edx, dword [esp + 0x78]
add esp, 0x40
mov dword [ebp + 0x74], eax
push 0xa
push 0
push edx
call dword [sym.imp.MSVCRT.dll_strtoul]
mov dword [ebp + 0x78], eax
mov eax, dword [esp + 0x2c]
add esp, 0xc
mov eax, dword [eax - 8]
cmp eax, 0xc
jle 0x49cc26
lea ecx, [esp + 0x1c]
push 0xc
push ecx
lea ecx, [esp + 0x28]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4058], 0xa
call fcn.00572d3c
lea ecx, [esp + 0x1c]
mov byte [esp + 0x4054], 9
call sub.MFC42.DLL_CString::CString
mov edi, 0x5f3788
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp + 0x7c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [esp + 0x20]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x3c]
mov esi, dword [sym.imp.MSVCRT.dll_atoi]
push ecx
call esi
mov edx, dword [esp + 0x30]
mov dword [ebp + 0x8c], eax
push edx
call esi
mov dword [ebp + 0x90], eax
mov eax, dword [esp + 0x3c]
push eax
call esi
add esp, 0xc
lea ecx, [esp + 0x1c]
mov dword [esp + 0x30], eax
push ebx
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x4058], 0xb
call fcn.00572d3c
lea ecx, [esp + 0x1c]
mov byte [esp + 0x4054], 9
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::TrimLeft
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::TrimRight
mov edx, dword [esp + 0x14]
cmp dword [edx - 8], 4
jle 0x49cd1b
lea eax, [esp + 0x44]
push 4
push eax
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x4058], 0xc
call fcn.00572d3c
lea ecx, [esp + 0x44]
mov byte [esp + 0x4054], 9
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x14]
push 0x5f3788
push ecx
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x49cd40
push 0x5e90ec
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::operator_2
mov edi, dword [esp + 0x14]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp + 0x94]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov byte [esp + 0x4054], 8
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x34]
mov byte [esp + 0x4054], 7
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x2c]
mov byte [esp + 0x4054], 6
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x3c]
mov byte [esp + 0x4054], 5
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x20]
mov byte [esp + 0x4054], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov byte [esp + 0x4054], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x40]
mov byte [esp + 0x4054], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x18]
mov byte [esp + 0x4054], 0
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x10]
mov edi, dword [sym.imp.MSVCRT.dll_atoi]
push ecx
call edi
add esp, 4
mov dword [ebp + 0x70], eax
xor ebx, ebx
jmp 0x49ce4c
mov ecx, dword [esp + 0x10]
mov dword [ebp + 0x74], 0
push ecx
call edi
add esp, 4
mov dword [ebp + 0x70], eax
xor ebx, ebx
jmp 0x49ce4c
mov edi, 0x5f3788
or ecx, 0xffffffff
xor eax, eax
mov dword [ebp + 0x70], ebx
mov dword [ebp + 0x74], ebx
lea edx, [ebp + 0x94]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
push ecx
push 0x3a
push ebx
call fcn.0043c830
mov edi, eax
add esp, 0xc
cmp edi, ebx
jne 0x49ce7d
lea ecx, [esp + 0x10]
mov dword [esp + 0x4054], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor eax, eax
jmp 0x49d159
mov ebx, dword [sym.imp.MSVCRT.dll_atol]
push edi
call ebx
mov dword [ebp + 0xa0], eax
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x4c]
repne scasb al, byte es:[edi]
not ecx
lea eax, [esp + 0x28]
dec ecx
push eax
push 0x3a
push 0
lea esi, [edx + ecx + 1]
call fcn.0043c830
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x49ced0
lea ecx, [esp + 0x10]
mov dword [esp + 0x4054], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor eax, eax
jmp 0x49d159
push 0x32
push edi
push ebp
call fcn.0043bab0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea esi, [esi + ecx + 1]
lea ecx, [esp + 0x30]
push ecx
push 0x3a
push eax
call fcn.0043c830
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x49cf18
lea ecx, [esp + 0x10]
mov dword [esp + 0x4054], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor eax, eax
jmp 0x49d159
push 0x32
lea edx, [ebp + 0x32]
push edi
push edx
call fcn.0043bab0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
lea eax, [esp + 0x30]
dec ecx
push eax
push 0x3a
push 0
lea esi, [esi + ecx + 1]
call fcn.0043c830
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x49cf64
lea ecx, [esp + 0x10]
mov dword [esp + 0x4054], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor eax, eax
jmp 0x49d159
push edi
call ebx
mov dword [ebp + 0xa4], eax
or ecx, 0xffffffff
xor eax, eax
add esp, 4
repne scasb al, byte es:[edi]
mov ebx, dword [esp + 0x30]
xor edx, edx
not ecx
dec ecx
lea eax, [esi + ecx + 1]
xor esi, esi
cmp ebx, edx
jne 0x49cfb1
lea edi, [esp + 0x4c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edi, dword [esp + 0x405c]
not ecx
dec ecx
mov dword [esp + 0x1c], ecx
lea eax, [ecx + 1]
cmp dword [edi + 0x14], eax
jle 0x49cfcf
lea ecx, [esp + ecx + 0x4d]
jmp 0x49cfcb
mov edi, dword [esp + 0x405c]
lea ecx, [ebx + eax]
mov dword [esp + 0x1c], ecx
inc ecx
cmp dword [edi + 0x14], ecx
jle 0x49cfcf
lea ecx, [esp + ebx + 0x4d]
add ecx, eax
mov dword [esp + 0x28], ecx
lea edi, [ebp + 0xb0]
cmp ebx, edx
mov byte [edi], 0
jne 0x49d034
lea eax, [esp + 0x24]
push eax
push edx
push edx
call fcn.0043c830
add esp, 0xc
test eax, eax
je 0x49d02a
mov cl, byte [eax]
test cl, cl
je 0x49d022
mov dl, 0xd
cmp esi, 0x3fff
jge 0x49d022
mov byte [edi + esi], cl
inc esi
inc eax
cmp cl, 0xa
jne 0x49d01c
cmp esi, 0x3fff
mov byte [esi + ebp + 0xaf], dl
jge 0x49d01c
mov byte [edi + esi], cl
inc esi
mov cl, byte [eax]
test cl, cl
jne 0x49cff7
mov byte [esi + ebp + 0xb0], 0
mov dword [ebp + 0xa8], esi
xor edx, edx
jmp 0x49d062
cmp ebx, 0x3fff
mov eax, 0x3fff
jg 0x49d043
mov eax, ebx
mov esi, dword [esp + 0x24]
mov ecx, eax
mov ebx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
mov ebx, dword [esp + 0x30]
and ecx, 3
inc eax
rep movsb byte es:[edi], byte [esi]
mov dword [ebp + 0xa8], eax
mov eax, dword [ebp + 0x70]
mov esi, dword [esp + 0x28]
cmp eax, edx
mov dword [ebp + 0x40b0], edx
je 0x49d0ce
cmp esi, edx
je 0x49d140
test dword [ebp + 0xa4], 0x200000
je 0x49d0ce
mov ecx, dword [esp + 0x405c]
mov eax, dword [esp + 0x1c]
mov ecx, dword [ecx + 0x14]
sub ecx, eax
dec ecx
cmp ecx, edx
jle 0x49d0bc
mov eax, dword [ebp + 0xa8]
inc eax
mov dword [ebp + 0xa8], eax
lea edi, [eax + ecx]
cmp edi, 0x3fff
jge 0x49d0bc
mov dword [ebp + 0x40b0], ecx
jmp 0x49d12b
cmp ebx, edx
je 0x49d0c6
dec dword [ebp + 0xa8]
mov dword [ebp + 0x40b0], edx
jmp 0x49d140
cmp esi, edx
je 0x49d140
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
cmp ecx, 0x3fff
jge 0x49d140
mov eax, dword [ebp + 0xa8]
inc eax
mov dword [ebp + 0xa8], eax
lea edi, [eax + ecx]
cmp edi, 0x4000
jl 0x49d114
mov eax, 0x4000
sub eax, ecx
mov dword [ebp + 0xa8], eax
mov byte [eax + ebp + 0xaf], 0
jmp 0x49d125
cmp ebx, edx
je 0x49d11f
dec eax
mov dword [ebp + 0xa8], eax
mov dword [ebp + 0x40b0], edx
mov eax, dword [ebp + 0xa8]
mov edx, ecx
lea edi, [eax + ebp + 0xb0]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x10]
mov dword [esp + 0x4054], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 1
mov ecx, dword [esp + 0x404c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x4048
ret 8