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

Disassembly:
mov ecx, dword [0x65da0168]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x18]
cmp eax, dword [ecx + 8]
jbe 0x65c1ef74
sub esp, 0x98
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x90], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x94], ecx
lea edx, [0x65c7c960]
mov dword [esp], edx
mov ebx, dword [esp + 0xa4]
mov dword [esp + 4], ebx
lea ebp, [esp + 0x90]
mov dword [esp + 8], ebp
call fcn.65c23c80
movzx eax, byte [esp + 0x10]
test al, al
jne 0x65c1e915
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x90], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x94], ecx
lea edx, [0x65c7c960]
mov dword [esp], edx
mov edx, dword [esp + 0xa4]
mov dword [esp + 4], edx
lea ebx, [esp + 0x90]
mov dword [esp + 8], ebx
call fcn.65c23e80
mov eax, dword [esp + 0xc]
test byte [eax], al
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x9c]
cmp eax, ecx
je 0x65c1e906
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
movzx ebp, byte [eax + 0xf]
and ebp, 0x1f
xchg ebp, eax
cmp al, dl
xchg ebp, eax
jne 0x65c1e8f7
mov byte [esp + 0x17], bl
mov byte [esp + 0x16], dl
mov dword [esp], ecx
call fcn.65c1d7f0
mov eax, dword [esp + 8]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x8c], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp], edx
call fcn.65c1d7f0
mov eax, dword [esp + 0x4c]
cmp dword [esp + 8], eax
jne 0x65c1e8e8
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.65bc30e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1e8e8
mov ebp, dword [esp + 0x9c]
movzx esi, byte [ebp + 0xc]
xchg esi, eax
test al, 1
xchg esi, eax
jne 0x65c1e367
xor esi, esi
jmp 0x65c1e3d8
movzx esi, byte [ebp + 0xf]
and esi, 0x1f
xchg esi, eax
cmp al, 0x14
xchg esi, eax
ja 0x65c1e3a5
xchg esi, eax
cmp al, 0x12
xchg esi, eax
ja 0x65c1e394
xchg esi, eax
cmp al, 0x11
xchg esi, eax
jne 0x65c1e388
lea esi, [ebp + 0x2c]
jmp 0x65c1e3d8
xchg esi, eax
cmp al, 0x12
xchg esi, eax
jne 0x65c1e3d5
lea esi, [ebp + 0x28]
jmp 0x65c1e3d8
xchg esi, eax
cmp al, 0x13
xchg esi, eax
jne 0x65c1e3a0
lea esi, [ebp + 0x24]
jmp 0x65c1e3d8
lea esi, [ebp + 0x30]
jmp 0x65c1e3d8
xchg esi, eax
cmp al, 0x16
xchg esi, eax
ja 0x65c1e3bd
xchg esi, eax
cmp al, 0x15
xchg esi, eax
jne 0x65c1e3b8
lea esi, [ebp + 0x38]
jmp 0x65c1e3d8
lea esi, [ebp + 0x24]
jmp 0x65c1e3d8
xchg esi, eax
cmp al, 0x17
xchg esi, eax
jne 0x65c1e3c9
lea esi, [ebp + 0x24]
jmp 0x65c1e3d8
xchg esi, eax
cmp al, 0x19
xchg esi, eax
jne 0x65c1e3d5
lea esi, [ebp + 0x30]
jmp 0x65c1e3d8
lea esi, [ebp + 0x20]
mov edi, dword [esp + 0xa0]
movzx eax, byte [edi + 0xc]
test al, 1
jne 0x65c1e3ec
xor eax, eax
jmp 0x65c1e44b
movzx eax, byte [edi + 0xf]
and eax, 0x1f
cmp al, 0x14
ja 0x65c1e420
cmp al, 0x12
ja 0x65c1e411
cmp al, 0x11
jne 0x65c1e407
lea eax, [edi + 0x2c]
jmp 0x65c1e44b
cmp al, 0x12
jne 0x65c1e448
lea eax, [edi + 0x28]
jmp 0x65c1e44b
cmp al, 0x13
jne 0x65c1e41b
lea eax, [edi + 0x24]
jmp 0x65c1e44b
lea eax, [edi + 0x30]
jmp 0x65c1e44b
cmp al, 0x16
ja 0x65c1e434
cmp al, 0x15
jne 0x65c1e42f
lea eax, [edi + 0x38]
jmp 0x65c1e44b
lea eax, [edi + 0x24]
jmp 0x65c1e44b
cmp al, 0x17
jne 0x65c1e43e
lea eax, [edi + 0x24]
jmp 0x65c1e44b
cmp al, 0x19
jne 0x65c1e448
lea eax, [edi + 0x30]
jmp 0x65c1e44b
lea eax, [edi + 0x20]
test esi, esi
jne 0x65c1e45b
test eax, eax
je 0x65c1e4fa
test esi, esi
je 0x65c1e45f
test eax, eax
jne 0x65c1e46e
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov dword [esp + 0x60], eax
mov eax, dword [esi]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.65c2a640
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.65bc1910
mov eax, dword [esp + 8]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x60]
mov ecx, dword [ecx]
mov edx, dword [esp + 4]
mov dword [esp + 0x70], edx
mov ebx, dword [esp + 0xa0]
mov dword [esp], ebx
mov dword [esp + 4], ecx
call fcn.65c2a640
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.65bc1910
mov eax, dword [esp + 0x28]
cmp dword [esp + 8], eax
jne 0x65c1e8d9
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.65bc30e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1e8d9
mov ebp, dword [esp + 0x9c]
mov edi, dword [esp + 0xa0]
movzx esi, byte [esp + 0x16]
xchg esi, eax
test al, al
xchg esi, eax
je 0x65c1e924
xchg esi, eax
cmp al, 0x10
xchg esi, eax
jbe 0x65c1e8ca
xchg esi, eax
cmp al, 0x15
xchg esi, eax
ja 0x65c1e794
xchg esi, eax
cmp al, 0x12
xchg esi, eax
jbe 0x65c1e6f7
xchg esi, eax
cmp al, 0x13
xchg esi, eax
jne 0x65c1e5ef
movzx esi, word [ebp + 0x22]
cmp word [edi + 0x22], si
jne 0x65c1e5e0
movzx esi, word [ebp + 0x20]
movzx eax, word [edi + 0x20]
cmp ax, si
jne 0x65c1e5e0
movzx ecx, byte [ebp + 0xc]
test cl, 1
je 0x65c1e564
mov ecx, 0x34
jmp 0x65c1e569
mov ecx, 0x24
test si, si
jne 0x65c1e574
xor edx, edx
xor esi, esi
jmp 0x65c1e586
movzx edx, si
lea esi, [ecx + ebp]
cmp edx, 0x10000
ja 0x65c1ef69
movzx ecx, byte [edi + 0xc]
test cl, 1
je 0x65c1e596
mov ecx, 0x34
jmp 0x65c1e59b
mov ecx, 0x24
test ax, ax
jne 0x65c1e5a6
xor eax, eax
xor ecx, ecx
jmp 0x65c1e5b6
movzx eax, ax
add ecx, edi
cmp eax, 0x10000
ja 0x65c1ef5d
mov dword [esp + 0x5c], esi
mov dword [esp + 0x24], edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x58], ecx
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x3c]
jmp 0x65c1edae
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
xchg esi, eax
cmp al, 0x14
xchg esi, eax
jne 0x65c1e68f
mov eax, dword [ebp + 0x20]
mov dword [esp], eax
call fcn.65bc1910
mov eax, dword [esp + 8]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x20]
mov ebx, dword [esp + 4]
mov dword [esp + 0x8c], ebx
mov dword [esp], edx
call fcn.65bc1910
mov eax, dword [esp + 0x4c]
cmp dword [esp + 8], eax
jne 0x65c1e680
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.65bc30e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1e680
mov edx, dword [esp + 0x9c]
mov ebx, dword [edx + 0x28]
mov ebp, dword [esp + 0xa0]
cmp dword [ebp + 0x28], ebx
jne 0x65c1e671
mov dword [esp + 0x4c], ebx
xor eax, eax
jmp 0x65c1eb8d
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov eax, dword [ebp + 0x20]
mov ecx, dword [edi + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
test al, al
jne 0x65c1e6b9
xor eax, eax
jmp 0x65c1e6e9
mov eax, dword [esp + 0x9c]
mov eax, dword [eax + 0x24]
mov ecx, dword [esp + 0xa0]
mov ecx, dword [ecx + 0x24]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
mov byte [esp + 0xa8], al
add esp, 0x98
ret
xchg esi, eax
cmp al, 0x11
xchg esi, eax
je 0x65c1e745
xchg esi, eax
cmp al, 0x12
xchg esi, eax
jne 0x65c1e924
mov eax, dword [ebp + 0x24]
cmp dword [edi + 0x24], eax
je 0x65c1e715
xor eax, eax
jmp 0x65c1e737
mov eax, dword [ebp + 0x20]
mov ecx, dword [edi + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
mov byte [esp + 0xa8], al
add esp, 0x98
ret
mov eax, dword [ebp + 0x20]
mov ecx, dword [edi + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1e784
mov eax, dword [esp + 0x9c]
mov eax, dword [eax + 0x28]
mov ecx, dword [esp + 0xa0]
cmp dword [ecx + 0x28], eax
sete al
jmp 0x65c1e786
xor eax, eax
mov byte [esp + 0xa8], al
add esp, 0x98
ret
xchg esi, eax
cmp al, 0x17
xchg esi, eax
ja 0x65c1e802
xchg esi, eax
cmp al, 0x16
xchg esi, eax
jne 0x65c1e7d2
mov eax, dword [ebp + 0x20]
mov ecx, dword [edi + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
mov byte [esp + 0xa8], al
add esp, 0x98
ret
mov eax, dword [ebp + 0x20]
mov ecx, dword [edi + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
mov byte [esp + 0xa8], al
add esp, 0x98
ret
xchg esi, eax
cmp al, 0x18
xchg esi, eax
je 0x65c1e8bb
xchg esi, eax
cmp al, 0x19
xchg esi, eax
jne 0x65c1e8b4
mov eax, dword [edi + 0x28]
cmp dword [ebp + 0x28], eax
jne 0x65c1e8a5
mov eax, dword [ebp + 0x20]
mov dword [esp], eax
call fcn.65bc1910
mov eax, dword [esp + 8]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x20]
mov ebx, dword [esp + 4]
mov dword [esp + 0x8c], ebx
mov dword [esp], edx
call fcn.65bc1910
mov eax, dword [esp + 0x4c]
cmp dword [esp + 8], eax
jne 0x65c1e896
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.65bc30e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1e896
mov edx, dword [esp + 0x9c]
mov ebx, dword [edx + 0x28]
mov dword [esp + 0x4c], ebx
mov ebp, dword [esp + 0xa0]
xor eax, eax
jmp 0x65c1e990
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
xchg esi, eax
cmp al, 0x1a
xchg esi, eax
jne 0x65c1e924
mov byte [esp + 0xa8], 1
add esp, 0x98
ret
mov byte [esp + 0xa8], 1
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 1
add esp, 0x98
ret
mov byte [esp + 0xa8], 1
add esp, 0x98
ret
call fcn.65bf6720
lea eax, [0x65c91e14]
mov dword [esp], eax
mov dword [esp + 4], 0x1e
call fcn.65bf6f80
movzx eax, byte [esp + 0x17]
and eax, 0x1f
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.65bf6c70
call fcn.65bf6920
call fcn.65bf6780
lea eax, [0x65c91a94]
mov dword [esp], eax
mov dword [esp + 4], 0x1d
call fcn.65c26c40
mov esi, dword [esp + 0x2c]
lea eax, [esi + 1]
mov ebx, dword [esp + 0x4c]
mov edx, dword [esp + 0x9c]
mov ebp, dword [esp + 0xa0]
cmp eax, ebx
jge 0x65c1eb5b
mov ecx, dword [edx + 0x28]
cmp eax, ecx
jae 0x65c1eb6f
mov ecx, dword [ebp + 0x28]
lea esi, [eax + eax*2]
cmp eax, ecx
jae 0x65c1eb6a
mov dword [esp + 0x48], esi
mov dword [esp + 0x2c], eax
mov eax, dword [edx + 0x24]
mov dword [esp + 0x88], eax
mov ecx, dword [ebp + 0x24]
mov dword [esp + 0x84], ecx
mov ebx, dword [eax + esi*4]
mov dword [esp], ebx
call fcn.65bc1910
mov eax, dword [esp + 8]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x84]
mov ebx, dword [edx + ecx*4]
mov ebp, dword [esp + 4]
mov dword [esp + 0x8c], ebp
mov dword [esp], ebx
call fcn.65bc1910
mov eax, dword [esp + 0x44]
cmp dword [esp + 8], eax
jne 0x65c1eb4c
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.65bc30e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1eb4c
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x88]
mov edx, dword [ecx + eax*4 + 4]
mov ebx, dword [esp + 0x84]
mov ebp, dword [ebx + eax*4 + 4]
mov dword [esp], edx
mov dword [esp + 4], ebp
mov edx, dword [esp + 0xa4]
mov dword [esp + 8], edx
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1eb3d
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x88]
mov edx, dword [ecx + eax*4]
mov dword [esp], edx
call fcn.65bc19d0
mov eax, dword [esp + 8]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x84]
mov ebx, dword [edx + ecx*4]
mov ebp, dword [esp + 4]
mov dword [esp + 0x8c], ebp
mov dword [esp], ebx
call fcn.65bc19d0
mov eax, dword [esp + 0x44]
cmp dword [esp + 8], eax
jne 0x65c1eb2e
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.65bc30e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1eb2e
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + edx*4 + 8]
mov esi, dword [esp + 0x84]
lea edi, [esi + edx*4 + 8]
cmp dword [edi], ebp
jne 0x65c1eb1f
mov ebx, dword [ebx + edx*4]
mov edx, dword [esi + edx*4]
movzx ebx, byte [ebx]
movzx edx, byte [edx]
test bl, 8
setne bl
test dl, 8
setne dl
cmp dl, bl
je 0x65c1e977
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 1
add esp, 0x98
ret
call fcn.65c2c760
call fcn.65c2c760
mov esi, dword [esp + 0x30]
lea eax, [esi + 1]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0xa0]
mov edx, dword [esp + 0x9c]
cmp eax, ebx
jge 0x65c1ed61
mov ecx, dword [edx + 0x28]
cmp eax, ecx
jae 0x65c1ed75
mov esi, dword [edx + 0x24]
mov ecx, dword [ebp + 0x28]
lea edi, [esi + eax*8]
cmp eax, ecx
jae 0x65c1ed70
mov dword [esp + 0x80], esi
mov dword [esp + 0x30], eax
mov dword [esp + 0x68], edi
mov ecx, dword [ebp + 0x24]
mov dword [esp + 0x7c], ecx
lea edx, [ecx + eax*8]
mov dword [esp + 0x64], edx
lea ebx, [esi + eax*8]
mov ebx, dword [ebx]
mov dword [esp], edi
mov dword [esp + 4], ebx
call fcn.65c2a640
mov eax, dword [esp + 8]
mov dword [esp + 0x8c], eax
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x7c]
lea ebx, [edx + ecx*8]
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x64]
mov dword [esp], ebp
mov dword [esp + 4], ebx
call fcn.65c2a640
mov eax, dword [esp + 8]
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
call fcn.65bc1910
mov eax, dword [esp + 8]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x74], ecx
mov edx, dword [esp + 0x78]
mov dword [esp], edx
call fcn.65bc1910
mov eax, dword [esp + 0x48]
cmp dword [esp + 8], eax
jne 0x65c1ed52
mov ecx, dword [esp + 0x74]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.65bc30e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1ed52
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
call fcn.65c1dbc0
mov eax, dword [esp + 8]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x8c], ecx
mov edx, dword [esp + 0x78]
mov dword [esp], edx
call fcn.65c1dbc0
mov eax, dword [esp + 0x48]
cmp dword [esp + 8], eax
jne 0x65c1ed43
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.65bc30e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x65c1ed43
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x80]
lea ecx, [ecx + eax*8 + 4]
mov ecx, dword [ecx]
mov edx, dword [esp + 0x68]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.65c2a8f0
mov eax, dword [esp + 8]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x7c]
lea edx, [edx + ecx*8 + 4]
mov edx, dword [edx]
mov ebx, dword [esp + 0x64]
mov dword [esp], ebx
mov dword [esp + 4], edx
call fcn.65c2a8f0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x6c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
test al, al
jne 0x65c1eb74
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 1
add esp, 0x98
ret
call fcn.65c2c760
call fcn.65c2c760
mov eax, dword [esp + 0x38]
inc eax
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0xa4]
mov ecx, dword [esp + 0x20]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x5c]
mov ecx, ebp
mov ebp, dword [esp + 0x9c]
mov edi, dword [esp + 0xa0]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x38]
cmp edi, edx
jge 0x65c1edec
mov ebp, dword [esi + edi*4]
cmp edi, eax
jae 0x65c1ef54
mov eax, dword [ecx + edi*4]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
test al, al
jne 0x65c1ed7a
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
movzx esi, word [ebp + 0x22]
and esi, 0x7fff
nop
test si, si
jne 0x65c1ee02
xor esi, esi
xor ebp, ebp
jmp 0x65c1ee4b
movzx edi, byte [ebp + 0xc]
xchg edi, eax
test al, 1
xchg edi, eax
je 0x65c1ee14
mov eax, 0x34
jmp 0x65c1ee19
mov eax, 0x24
movzx edi, word [ebp + 0x20]
add esi, edi
movzx edx, si
add ebp, eax
cmp edx, 0x20000
ja 0x65c1ef4a
movzx eax, di
cmp eax, edx
ja 0x65c1ef43
sub edx, eax
mov esi, edx
neg edx
shl eax, 2
sar edx, 0x1f
and eax, edx
add ebp, eax
mov edi, dword [esp + 0xa0]
movzx eax, word [edi + 0x22]
and eax, 0x7fff
nop
test ax, ax
jne 0x65c1ee67
xor ecx, ecx
xor edx, edx
jmp 0x65c1eead
movzx ecx, byte [edi + 0xc]
test cl, 1
je 0x65c1ee77
mov ecx, 0x34
jmp 0x65c1ee7c
mov ecx, 0x24
movzx edx, word [edi + 0x20]
add eax, edx
movzx eax, ax
add edi, ecx
cmp eax, 0x20000
ja 0x65c1ef37
movzx edx, dx
cmp edx, eax
ja 0x65c1ef2e
sub eax, edx
mov ecx, eax
neg eax
shl edx, 2
sar eax, 0x1f
and edx, eax
add edx, edi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x54], ebp
mov dword [esp + 0x18], ecx
mov dword [esp + 0x50], edx
xor eax, eax
jmp 0x65c1eedf
mov edi, dword [esp + 0x34]
lea eax, [edi + 1]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0xa4]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x50]
mov ebp, dword [esp + 0x54]
cmp eax, esi
jge 0x65c1ef1a
mov edi, dword [ebp + eax*4]
cmp eax, ecx
jae 0x65c1ef29
mov dword [esp + 0x34], eax
mov ecx, dword [edx + eax*4]
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.65c1e210
movzx eax, byte [esp + 0xc]
test al, al
jne 0x65c1eec1
mov byte [esp + 0xa8], 0
add esp, 0x98
ret
mov byte [esp + 0xa8], 1
add esp, 0x98
ret
call fcn.65c2c760
mov ecx, eax
mov eax, edx
call fcn.65c2c7f0
mov edx, eax
mov ebx, 0x20000
call fcn.65c2c7e0
mov ecx, edx
call fcn.65c2c7f0
mov ebx, 0x20000
call fcn.65c2c7e0
mov ecx, eax
mov eax, edi
call fcn.65c2c760
mov edx, eax
mov ebx, 0x10000
call fcn.65c2c7e0
mov ebx, 0x10000
call fcn.65c2c7e0
nop
call fcn.65c2b2c0
jmp fcn.65c1e210