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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x65ba13
sub esp, 0x5c
mov edx, dword [esp + 0x60]
movzx ebx, byte [edx + 4]
test bl, bl
jne 0x65b7bc
mov ebx, dword [edx + 0x74]
xor eax, eax
jmp 0x65b7c3
add esp, 0x5c
ret
inc eax
mov ebx, ecx
cmp ebx, eax
jle 0x65b9a1
mov ebp, dword [edx + 0x70]
mov ecx, dword [edx + 0x74]
cmp eax, ecx
jae 0x65ba0d
mov dword [esp + 0x3c], ebp
imul esi, eax, 0x1c
mov dword [esp + 0x30], esi
lea edi, [esi + ebp]
mov ecx, edi
mov edi, dword [0x707708]
mov edx, dword [ebp + esi + 4]
mov ebp, dword [ebp + esi]
lea esi, [0x707708]
cmp dword [esi + 4], edx
je 0x65b80a
mov edx, dword [esp + 0x60]
mov ecx, ebx
jmp 0x65b7c0
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x34], edi
xor esi, esi
mov dword [esp + 0x24], esi
lea esi, [0x707708]
jmp 0x65b9be
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x2c]
jmp 0x65b7c0
mov dword [esp + 0x28], eax
mov dword [esp + 0x38], ecx
mov eax, dword [esp + 0x60]
mov ecx, dword [eax + 0xa4]
mov edx, dword [eax + 0xa8]
mov ebx, dword [eax + 0xac]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x3c]
mov edi, dword [esi + ebp + 0xc]
mov eax, dword [esi + ebp + 0x10]
mov esi, dword [esi + ebp + 0x14]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], esi
call fcn.0064f410
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x60]
mov dword [ebx + 0xa8], ecx
mov dword [ebx + 0xac], edx
mov ecx, dword [0x900e70]
test ecx, ecx
jne 0x65b8a9
mov dword [ebx + 0xa4], eax
jmp 0x65b8b4
lea edi, [ebx + 0xa4]
call fcn.00456ac0
lea edi, [esp + 0x40]
mov esi, dword [esp + 0x38]
call fcn.0045722a
mov ecx, dword [ebx + 0x74]
mov edx, dword [ebx + 0x70]
mov ebp, dword [ebx + 0x78]
mov eax, dword [esp + 0x28]
cmp eax, ecx
ja 0x65b9ff
mov dword [esp + 0x3c], edx
mov esi, ecx
sub ecx, eax
sub ebp, eax
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
mov ebx, dword [esp + 0x30]
and ebp, ebx
add ebp, edx
lea edx, [eax + 1]
cmp esi, edx
jb 0x65b9f6
lea eax, [0x747e40]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
lea edx, [edi - 1]
neg edx
add ebx, 0x1c
sar edx, 0x1f
and edx, ebx
mov ebx, dword [esp + 0x3c]
add edx, ebx
mov dword [esp + 0xc], edx
dec ecx
mov dword [esp + 0x10], ecx
call fcn.0040fdc0
mov eax, dword [esp + 0x2c]
lea ecx, [eax - 1]
mov edx, dword [esp + 0x60]
mov ebx, dword [edx + 0x74]
mov ebp, dword [edx + 0x70]
cmp ebx, ecx
jbe 0x65b9ed
mov dword [esp + 0x30], ecx
imul ebx, eax, 0x1c
lea edi, [ebx + ebp - 0x1c]
mov ebx, dword [0x900e70]
test ebx, ebx
jne 0x65b969
lea esi, [esp + 0x40]
call fcn.0045722a
jmp 0x65b987
lea eax, [0x747e40]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x40]
mov dword [esp + 8], eax
call fcn.0040fcb0
mov edx, dword [esp + 0x60]
mov ebx, dword [edx + 0x78]
mov ecx, dword [esp + 0x30]
cmp ebx, ecx
jb 0x65b9e6
mov dword [edx + 0x74], ecx
mov ebp, dword [esp + 0x28]
lea eax, [ebp - 1]
jmp 0x65b7c0
mov byte [edx + 4], 1
add esp, 0x5c
ret
lea ebx, [esi + 1]
mov edi, dword [esp + 0x34]
lea esi, [0x707708]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x24]
cmp esi, edx
jge 0x65b82d
jae 0x65ba04
movzx ebx, byte [ebp + esi]
or ebx, 0x20
movzx edi, byte [edi + esi]
or edi, 0x20
xchg edi, eax
cmp al, bl
xchg edi, eax
je 0x65b9a9
jmp 0x65b823
mov edx, ebx
call fcn.00456b80
mov eax, ecx
mov ecx, ebx
call fcn.00456b40
mov eax, edx
mov ecx, esi
call fcn.00456ba0
call fcn.00456ba0
mov eax, esi
mov ecx, edx
call fcn.00456b40
call fcn.00456b40
nop
call fcn.00455690
jmp fcn.0065b790