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

Disassembly:
mov ecx, dword [0x98cddc]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x65cd52
sub esp, 0x40
movzx edx, byte [esp + 0x6c]
test dl, dl
je 0x65caa7
mov eax, 6
jmp 0x65caac
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 ecx, edi
test cl, cl
jne 0x65cbac
mov eax, dword [esp + 0x48]
lea edi, [eax + 1]
mov ecx, esi
mov esi, dword [esp + 0x4c]
cmp esi, edi
jb 0x65cb35
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x2c]
jmp 0x65cb8d
mov dword [esp + 0x38], ebp
mov dword [esp + 0x34], ecx
mov dword [esp + 0x20], ebx
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, [0x6e06e0]
mov dword [esp + 0x10], eax
call fcn.0046cad0
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 + 0x38]
mov dword [esp + 0x3c], eax
mov esi, ecx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x34]
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 0x65cca1
mov eax, dword [esp + 0x48]
lea ebx, [eax + 1]
mov ebp, dword [esp + 0x4c]
cmp ebp, ebx
jb 0x65cbc1
mov ecx, dword [esp + 0x44]
jmp 0x65cbff
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, [0x6e06e0]
mov dword [esp + 0x10], eax
call fcn.0046cad0
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 0x65cc13
mov edx, 0x10
jmp 0x65cc25
movzx edx, byte [esp + 0x6c]
test dl, dl
je 0x65cc23
mov edx, 0x40
jmp 0x65cc25
xor edx, edx
cmp eax, ebx
jae 0x65cc72
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.0065cd60
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.00471b30
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 + 0x28], ebp
mov dword [esp + 0x24], ebx
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 0x65cd06
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x65cc79
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x6e06e0]
mov dword [esp + 0x10], eax
call fcn.0046cad0
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x24]
jmp 0x65cc79
lea ebp, [edi + 1]
cmp esi, ebp
jae 0x65cd3f
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x6e06e0]
mov dword [esp + 0x10], eax
call fcn.0046cad0
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 0x65cc03
call fcn.004706b0
jmp fcn.0065ca80