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

Disassembly:
mov ecx, dword [0x65da0168]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x65c1d7df
sub esp, 0x5c
mov edx, dword [esp + 0x60]
mov ebx, dword [edx + 0x20]
test ebx, ebx
jbe 0x65c1d7d5
mov eax, dword [edx + 0x1c]
mov eax, dword [eax]
mov dword [esp + 0x54], eax
mov dword [esp], eax
call fcn.65c1d7f0
mov eax, dword [esp + 8]
mov dword [esp + 0x2c], eax
lea ecx, [eax + 0x34]
mov edx, dword [esp + 4]
mov dword [esp + 0x50], edx
mov ebx, dword [esp + 0x64]
mov dword [esp], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 8], ebx
movzx ebx, byte [esp + 0x70]
mov byte [esp + 0xc], bl
mov dword [esp + 0x10], ecx
call fcn.65c190f0
movzx eax, byte [esp + 0x24]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
movzx ebp, byte [esp + 0x20]
test al, al
je 0x65c1d3d4
mov eax, dword [edx + 0xc]
nop
cmp eax, 0xffec
jae 0x65c1d7cb
mov byte [edx + eax + 0x14], 0
inc dword [edx + 0xc]
mov eax, dword [edx + 0xc]
lea esi, [eax + 0xa]
cmp esi, 0xffec
ja 0x65c1d7bf
cmp eax, esi
ja 0x65c1d7b8
xchg ebp, eax
mov byte [esp + 0x2b], al
xchg ebp, eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x58], ecx
lea esi, [eax - 0xffec]
xchg esi, ebx
neg ebx
xchg esi, ebx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, eax
mov edi, dword [esp + 0x60]
mov ecx, dword [edi + 0x14]
mov edi, dword [edi + 0x18]
lea esi, [esi + edx + 0x14]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x3c]
jmp 0x65c1d45c
mov edx, ecx
or edx, 0xffffff80
mov byte [esi + ebx], dl
shr ecx, 7
mov edx, edi
shl edx, 0x19
inc ebx
or ecx, edx
shr edi, 7
mov edx, dword [esp + 0x4c]
movzx ebp, byte [esp + 0x2b]
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x48]
mov ebx, dword [esp + 0x34]
cmp ebx, 0xa
jge 0x65c1d48d
test edi, edi
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp ecx, 0x80
setb dl
and edx, ebp
test dl, dl
je 0x65c1d435
mov byte [esi + ebx], cl
lea eax, [ebx + eax + 1]
mov edx, dword [esp + 0x4c]
movzx ebp, byte [esp + 0x2b]
mov dword [edx + 0xc], eax
lea ecx, [eax + 0xa]
cmp ecx, 0xffec
ja 0x65c1d7ae
cmp eax, ecx
ja 0x65c1d7a9
lea ebx, [eax - 0xffec]
neg ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
mov esi, dword [esp + 0x54]
mov edi, esi
lea ebx, [ebx + edx + 0x14]
xor ecx, ecx
jmp 0x65c1d4d7
mov ebp, esi
or ebp, 0xffffff80
xchg ebp, eax
mov byte [ebx + ecx], al
xchg ebp, eax
inc ecx
shr esi, 7
movzx ebp, byte [esp + 0x2b]
cmp ecx, 0xa
jge 0x65c1d500
cmp esi, 0x80
xchg ebp, ebx
setb bl
xchg ebp, ebx
and ebp, 1
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x65c1d4c4
xchg esi, eax
mov byte [ebx + ecx], al
xchg esi, eax
lea eax, [ecx + eax + 1]
movzx ebp, byte [esp + 0x2b]
mov dword [edx + 0xc], eax
lea ecx, [eax + 0xa]
nop
nop
cmp ecx, 0xffec
ja 0x65c1d79f
cmp eax, ecx
ja 0x65c1d79a
lea ebx, [eax - 0xffec]
neg ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
mov esi, dword [edi]
lea ebx, [ebx + edx + 0x14]
xor ecx, ecx
jmp 0x65c1d548
mov ebp, esi
or ebp, 0xffffff80
xchg ebp, eax
mov byte [ebx + ecx], al
xchg ebp, eax
inc ecx
shr esi, 7
movzx ebp, byte [esp + 0x2b]
cmp ecx, 0xa
jge 0x65c1d571
cmp esi, 0x80
xchg ebp, ebx
setb bl
xchg ebp, ebx
and ebp, 1
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x65c1d535
xchg esi, eax
mov byte [ebx + ecx], al
xchg esi, eax
lea eax, [ecx + eax + 1]
movzx ebp, byte [esp + 0x2b]
mov dword [edx + 0xc], eax
lea ecx, [eax + 0xa]
cmp ecx, 0xffec
ja 0x65c1d790
cmp eax, ecx
ja 0x65c1d78b
lea ebx, [eax - 0xffec]
neg ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
mov esi, dword [edi + 4]
lea ebx, [ebx + edx + 0x14]
xor ecx, ecx
jmp 0x65c1d5b3
mov edi, esi
or edi, 0xffffff80
xchg edi, eax
mov byte [ebx + ecx], al
xchg edi, eax
inc ecx
shr esi, 7
cmp ecx, 0xa
jge 0x65c1d5d7
cmp esi, 0x80
xchg edi, ebx
setb bl
xchg edi, ebx
and edi, 1
xchg edi, eax
test al, al
xchg edi, eax
je 0x65c1d5a5
xchg esi, eax
mov byte [ebx + ecx], al
xchg esi, eax
lea eax, [ecx + eax + 1]
mov dword [edx + 0xc], eax
lea ecx, [eax + 0xa]
cmp ecx, 0xffec
ja 0x65c1d781
cmp eax, ecx
ja 0x65c1d77c
lea ebx, [eax - 0xffec]
neg ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
mov esi, dword [esp + 0x2c]
mov edi, esi
sar esi, 0x1f
lea ebx, [ebx + edx + 0x14]
mov ecx, edi
xor ecx, ecx
mov dword [esp + 0x30], ecx
mov ecx, edi
jmp 0x65c1d642
mov ecx, edi
or ecx, 0xffffff80
mov byte [ebx + ebp], cl
shr edi, 7
mov ecx, esi
shl ecx, 0x19
lea edx, [ebp + 1]
or edi, ecx
shr esi, 7
mov ecx, dword [esp + 0x2c]
movzx ebp, byte [esp + 0x2b]
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x30]
cmp ebp, 0xa
jge 0x65c1d670
test esi, esi
sete cl
cmp edi, 0x80
setb dl
and ecx, edx
test cl, cl
je 0x65c1d619
xchg edi, eax
mov byte [ebx + ebp], al
xchg edi, eax
lea eax, [ebp + eax + 1]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x4c]
mov dword [edx + 0xc], eax
cmp eax, 0xffec
ja 0x65c1d772
lea ebx, [eax - 0xffec]
neg ebx
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and eax, ebx
lea eax, [eax + edx + 0x14]
cmp ecx, ebp
jl 0x65c1d699
mov ecx, ebp
mov ebx, dword [esp + 0x50]
cmp ebx, eax
je 0x65c1d6bd
mov dword [esp + 0x44], ecx
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.65c2cfb0
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x4c]
add dword [edx + 0xc], ecx
xor eax, eax
movzx ecx, byte [esp + 0x2b]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x58]
jmp 0x65c1d6d8
mov esi, dword [esp + 0x38]
lea eax, [esi + 1]
cmp eax, 4
jge 0x65c1d75b
mov dword [esp + 0x38], eax
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], edx
mov byte [esp + 0x2b], cl
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x60]
lea edx, [ecx + eax*4]
nop
mov dword [esp], edx
call fcn.65c30b80
mov eax, dword [esp + 4]
test eax, eax
jne 0x65c1d71c
movzx ecx, byte [esp + 0x2b]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x58]
mov edx, dword [esp + 0x4c]
jmp 0x65c1d6d1
mov dword [esp], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xc], eax
movzx eax, byte [esp + 0x2b]
mov byte [esp + 0x10], al
call fcn.65c1d330
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
movzx ecx, byte [esp + 0x20]
jmp 0x65c1d6d1
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], edx
mov byte [esp + 0x80], cl
add esp, 0x5c
ret
mov ecx, 0xffec
call fcn.65c2c7c0
call fcn.65c2c7c0
mov edx, 0xffec
call fcn.65c2c780
call fcn.65c2c7c0
mov edx, 0xffec
call fcn.65c2c780
call fcn.65c2c7c0
mov edx, 0xffec
call fcn.65c2c780
call fcn.65c2c7c0
mov edx, 0xffec
call fcn.65c2c780
mov ecx, esi
call fcn.65c2c7c0
mov ecx, esi
mov edx, 0xffec
call fcn.65c2c780
mov ecx, 0xffec
call fcn.65c2c760
xor eax, eax
mov ecx, eax
call fcn.65c2c760
nop
call fcn.65c2b2c0
jmp fcn.65c1d330