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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x65020e26
sub esp, 0x6c
mov ebx, dword [esp + 0x80]
cmp ebx, 0x102
jl 0x65020bcd
mov ebx, 0x102
mov ebp, dword [esp + 0x70]
test byte [ebp], al
mov esi, dword [ebp + 0xa003c]
mov edx, dword [ebp + 0xa0044]
mov eax, dword [esp + 0x74]
lea ecx, [ebx + eax]
cmp edx, ecx
jb 0x65020e20
mov edi, dword [ebp + 0xc]
cmp ebx, edi
jg 0x65020bf8
mov edi, ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x34], edi
mov edi, dword [ebp + 0x10]
mov ebx, dword [esp + 0x7c]
cmp dword [ebp + 4], ebx
jg 0x65020c0f
sar edi, 2
lea ebp, [ebx + eax]
cmp ebp, ecx
jae 0x65020e19
movzx ebp, byte [esi + ebp]
cmp eax, ecx
ja 0x65020e14
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x64], esi
sub edx, eax
mov dword [esp + 0x2c], edx
neg edx
sar edx, 0x1f
and edx, eax
add edx, esi
mov dword [esp + 0x68], edx
lea edx, [eax - 0x8000]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x40], eax
mov dword [esp + 0x54], ecx
xor ecx, ecx
mov dword [esp + 0x48], ecx
xor ecx, ecx
mov byte [esp + 0x23], cl
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x54]
jmp 0x65020c90
mov esi, dword [esp + 0x30]
dec esi
mov dword [esp + 0x40], ebx
mov ebx, eax
mov dword [esp + 0x48], ebp
mov eax, dword [esp + 0x74]
mov ebp, edi
mov edi, esi
mov esi, dword [esp + 0x64]
test edi, edi
jle 0x65020ddb
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x40]
lea edx, [edi + ebx]
cmp edx, ecx
jae 0x65020e0d
add edx, esi
xchg ebp, eax
cmp byte [edx], al
xchg ebp, eax
je 0x65020cc4
mov edx, eax
mov eax, ebx
mov ebx, edi
mov edi, ebp
mov ebp, dword [esp + 0x48]
jmp 0x65020d99
cmp edi, ecx
ja 0x65020e06
mov dword [esp + 0x44], ebx
xchg ebp, eax
mov byte [esp + 0x22], al
xchg ebp, eax
mov eax, dword [esp + 0x28]
sub eax, edi
mov ebx, eax
neg eax
sar eax, 0x1f
and eax, edi
add eax, esi
mov dword [esp], eax
sub ecx, edi
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x68]
mov dword [esp + 0xc], ecx
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x10], ebx
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebx
call fcn.65020fb0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x44]
cmp ecx, eax
jge 0x65020d7a
cmp eax, 4
jle 0x65020d30
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x74]
jmp 0x65020d44
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x40]
mov ebp, edx
sub edx, ebx
cmp edx, 0x1000
jg 0x65020d82
mov edx, ebp
sub ebp, ebx
mov esi, dword [esp + 0x34]
cmp esi, eax
jle 0x65020dc6
lea edi, [eax + edx]
mov ecx, dword [esp + 0x24]
cmp edi, ecx
jae 0x65020dff
mov esi, dword [esp + 0x64]
movzx edi, byte [esi + edi]
mov dword [esp + 0x4c], eax
mov eax, 1
mov byte [esp + 0x23], al
mov eax, dword [esp + 0x4c]
jmp 0x65020d99
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x74]
mov ecx, dword [esp + 0x24]
mov edx, ebp
mov esi, dword [esp + 0x64]
movzx edi, byte [esp + 0x22]
mov ebp, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x3c]
cmp ebx, edx
je 0x65020dd4
and ebx, 0x7fff
mov esi, dword [esp + 0x70]
mov ebx, dword [esi + ebx*4 + 0x80034]
sub ebx, dword [esi + 0xa0034]
cmp ebx, edx
jl 0x65020dcd
test ebx, ebx
jge 0x65020c75
jmp 0x65020dcd
mov ecx, 1
jmp 0x65020de6
movzx ecx, byte [esp + 0x23]
jmp 0x65020de6
movzx ecx, byte [esp + 0x23]
jmp 0x65020de6
mov eax, ebx
mov ebp, dword [esp + 0x48]
movzx ecx, byte [esp + 0x23]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ebp
mov byte [esp + 0x8c], cl
add esp, 0x6c
ret
mov eax, edi
call fcn.64fda100
mov eax, edi
call fcn.64fda160
mov eax, edx
call fcn.64fda100
call fcn.64fda160
mov eax, ebp
call fcn.64fda100
call fcn.64fda140
nop
call fcn.64fd8c20
jmp fcn.65020ba0