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

Disassembly:
mov ecx, dword [0xe11d80]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x642524
sub esp, 0x40
movzx edx, byte [esp + 0x6c]
test dl, dl
je 0x642277
mov eax, 6
jmp 0x64227c
mov eax, 4
mov ecx, eax
mov ebx, 1
shl ebx, cl
lea ebp, [eax - 0x20]
mov ecx, ebp
mov esi, 1
shl esi, cl
neg ecx
mov edi, 1
shr edi, cl
cmp al, 0x20
sbb eax, eax
and ebx, eax
cmp cl, 0x20
sbb eax, eax
and edi, eax
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
sbb ebp, ebp
and esi, ebp
or edi, esi
mov ebp, ebx
add ebx, 0xffffffff
mov esi, edi
adc edi, 0xffffffff
mov edx, dword [esp + 0x68]
cmp edx, edi
xchg edi, ebx
sete bl
xchg edi, ebx
setb cl
mov edx, dword [esp + 0x64]
cmp ebx, edx
seta al
and edi, eax
or edi, ecx
xchg edi, eax
test al, al
xchg edi, eax
jne 0x64237e
mov eax, dword [esp + 0x48]
lea edi, [eax + 1]
mov ecx, esi
mov esi, dword [esp + 0x4c]
cmp esi, edi
jb 0x642307
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x34]
jmp 0x64235f
mov dword [esp + 0x20], ebx
mov dword [esp + 0x30], ebp
mov dword [esp + 0x2c], ecx
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x8d9fa0]
mov dword [esp + 0x10], eax
call fcn.0044e860
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x3c], eax
mov esi, ecx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x3c]
mov byte [edi + edx - 1], bl
mov ebx, dword [esp + 0x64]
sub ebx, ebp
mov ebp, dword [esp + 0x68]
sbb ebp, ecx
add ebx, 1
adc ebp, 0
jmp 0x642473
mov eax, dword [esp + 0x48]
lea ebx, [eax + 1]
mov ebp, dword [esp + 0x4c]
cmp ebp, ebx
jb 0x642393
mov ecx, dword [esp + 0x44]
jmp 0x6423d1
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x8d9fa0]
mov dword [esp + 0x10], eax
call fcn.0044e860
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x64]
mov ebp, ecx
mov ecx, eax
mov eax, dword [esp + 0x48]
mov byte [ebx + ecx - 1], dl
movzx edx, byte [esp + 0x60]
test dl, dl
je 0x6423e5
mov edx, 0x10
jmp 0x6423f7
movzx edx, byte [esp + 0x6c]
test dl, dl
je 0x6423f5
mov edx, 0x40
jmp 0x6423f7
xor edx, edx
cmp eax, ebx
jae 0x642444
movzx esi, byte [ecx + eax]
or esi, edx
xchg esi, ebx
mov byte [ecx + eax], bl
xchg esi, ebx
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.00642530
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], edx
add esp, 0x40
ret
mov ecx, ebx
call fcn.004696f0
mov eax, ebx
shr eax, 7
mov ecx, dword [esp + 0x28]
mov edi, ecx
shl ecx, 0x19
and ebx, 0x7f
or ebx, 0x80
mov byte [ebp + edx - 1], bl
or ecx, eax
shr edi, 7
mov ebx, ecx
mov eax, ebp
mov ebp, edi
mov edi, eax
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebp
test ebp, ebp
seta cl
sete al
cmp ebx, 0x80
xchg ebp, ebx
setae bl
xchg ebp, ebx
and ebp, eax
or ebp, ecx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x6424d8
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x64244b
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x8d9fa0]
mov dword [esp + 0x10], eax
call fcn.0044e860
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x24]
jmp 0x64244b
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x642511
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x8d9fa0]
mov dword [esp + 0x10], eax
call fcn.0044e860
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x24]
mov byte [ebp + edx - 1], bl
mov eax, dword [esp + 0x48]
mov ebx, ebp
mov ecx, edx
mov ebp, esi
jmp 0x6423d5
call fcn.00468280
jmp fcn.00642250