Function at 0x65036750
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x104]
cmp eax, dword [ecx + 8]
jbe 0x65037f57
sub esp, 0x184
mov eax, 0
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], eax
mov byte [esp + 0x25], 0
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x1a8], 0
mov eax, dword [esp + 0x188]
mov ecx, dword [eax + 0x474]
test ecx, ecx
je 0x650367f8
mov ecx, dword [esp + 0x1a0]
cmp dword [eax + 0x478], ecx
jne 0x650367ff
mov ecx, dword [eax + 0x474]
mov dword [esp], ecx
mov ecx, dword [esp + 0x18c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x190]
mov dword [esp + 8], ecx
call fcn.6502aa60
mov eax, dword [esp + 0x188]
mov ecx, dword [esp + 0x1a0]
jmp 0x6503688a
mov ecx, dword [esp + 0x1a0]
nop
mov eax, dword [esp + 0x18c]
mov dword [esp], eax
mov eax, dword [esp + 0x190]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.6502a920
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x18]
test eax, eax
jne 0x650369b4
mov ecx, dword [0x6517dcb0]
test ecx, ecx
jne 0x65036867
mov eax, dword [esp + 0x188]
mov dword [eax + 0x474], ebx
jmp 0x6503687d
mov ecx, dword [esp + 0x188]
lea edi, [ecx + 0x474]
mov eax, ebx
call fcn.64fda080
mov eax, ecx
mov ecx, dword [esp + 0x1a0]
mov dword [eax + 0x478], ecx
mov edx, dword [eax + 0x474]
lea ebx, [0x650abe34]
mov dword [esp + 0x180], ebx
mov dword [esp + 0x17c], edx
mov byte [esp + 0x25], 1
mov edx, dword [esp + 0x19c]
cmp edx, 9
jg 0x650368f1
cmp edx, 6
jg 0x650368d2
cmp edx, 4
jne 0x650368c6
mov ebx, 8
jmp 0x6503692f
cmp edx, 6
jne 0x6503692d
mov ebx, 0x18
jmp 0x6503692f
cmp edx, 7
jne 0x650368de
mov ebx, 1
jmp 0x6503692f
cmp edx, 8
jne 0x650368ea
mov ebx, 2
jmp 0x6503692f
mov ebx, 4
jmp 0x6503692f
cmp edx, 0xb
jg 0x65036909
cmp edx, 0xa
jne 0x65036902
mov ebx, 8
jmp 0x6503692f
mov ebx, 0x20
jmp 0x6503692f
cmp edx, 0xc
jne 0x65036915
mov ebx, 0x10
jmp 0x6503692f
cmp edx, 0xe
jne 0x65036921
mov ebx, 0x30
jmp 0x6503692f
cmp edx, 0xf
jne 0x6503692d
mov ebx, 0x40
jmp 0x6503692f
xor ebx, ebx
mov dword [esp + 0x88], ebx
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0x198]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 0xc]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x98], ecx
mov edx, eax
sub eax, ecx
mov dword [esp + 0x28], eax
mov ebx, dword [esp + 0x88]
mov ebp, ebx
imul ebx, eax
lea esi, [ebx + 7]
sar esi, 0x1f
shr esi, 0x1d
lea ebx, [ebx + esi + 7]
sar ebx, 3
inc ebx
mov dword [esp + 0x50], ebx
mov esi, dword [esp + 8]
mov dword [esp + 0x2c], esi
mov edi, dword [esp + 0x10]
mov dword [esp + 0x94], edi
mov dword [esp + 0x110], eax
xor eax, eax
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x110]
jmp 0x650369ee
mov dword [esp + 0x1a4], ecx
mov dword [esp + 0x1a8], edx
add esp, 0x184
ret
mov ebp, dword [esp + 0x78]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
lea ebx, [ebp + 1]
mov ebp, dword [esp + 0x50]
mov edx, dword [esp + 0x9c]
mov ebp, dword [esp + 0x88]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x78]
cmp ebp, 5
jge 0x65036af4
jae 0x65037f3e
lea ebp, [ebp + ebp*2]
mov dword [esp + 0x90], ebp
mov ebx, dword [esp + 0x188]
mov ebx, dword [ebx + ebp*4 + 0x434]
mov dword [esp + 0x8c], ebx
mov ebx, dword [esp + 0x188]
lea ebx, [ebx + ebp*4 + 0x42c]
mov dword [esp + 0x13c], ebx
mov ebx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x50]
cmp ebx, ebp
jl 0x65036a62
jb 0x65037f35
mov ebx, dword [esp + 0x90]
mov edx, dword [esp + 0x188]
mov dword [edx + ebx*4 + 0x430], ebp
jmp 0x65036ad9
lea eax, [0x6508bc40]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.64fc4670
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x188]
mov dword [ebx + ecx*4 + 0x430], edx
mov dword [ebx + ecx*4 + 0x434], edx
mov ebp, dword [0x6517dcb0]
test ebp, ebp
jne 0x65036aaf
mov dword [ebx + ecx*4 + 0x42c], eax
jmp 0x65036abb
mov edi, dword [esp + 0x13c]
call fcn.64fda080
mov eax, dword [esp + 0x28]
mov edx, ebx
mov ebx, ecx
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x94]
mov ecx, dword [esp + 0x98]
mov ebp, dword [edx + ebx*4 + 0x430]
mov ebx, dword [edx + ebx*4 + 0x42c]
test ebp, ebp
ja 0x650369c9
jmp 0x65037f2c
mov ebp, dword [esp + 0x188]
lea ecx, [ebp + 0x42c]
lea edi, [esp + 0x140]
mov esi, ecx
call fcn.64fda6ea
mov ecx, dword [ebp + 0x470]
cmp ecx, ebx
jl 0x65036b4a
jb 0x65037f23
mov dword [ebp + 0x46c], ebx
mov eax, dword [ebp + 0x468]
mov ecx, dword [ebp + 0x470]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.65036710
mov edx, dword [esp + 0x188]
jmp 0x65036b98
lea eax, [0x6508bc40]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.64fc4670
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x188]
mov dword [edx + 0x46c], ecx
mov dword [edx + 0x470], ecx
mov ecx, dword [0x6517dcb0]
test ecx, ecx
jne 0x65036b8d
mov dword [edx + 0x468], eax
jmp 0x65036b98
lea edi, [edx + 0x468]
call fcn.64fda080
mov ebx, dword [edx + 0x468]
mov ebp, dword [edx + 0x46c]
mov esi, dword [edx + 0x470]
mov edi, dword [esp + 0x194]
mov eax, ebx
lea ebx, [0x650d3a74]
cmp edi, ebx
jne 0x65036bc6
mov ecx, dword [esp + 0x198]
jmp 0x65036bc8
xor ecx, ecx
lea ebx, [0x650d3b00]
cmp edi, ebx
jne 0x65036bdb
mov ebx, dword [esp + 0x198]
jmp 0x65036bdd
xor ebx, ebx
mov dword [esp + 0x118], ebx
lea ebx, [0x650d3ae4]
cmp edi, ebx
jne 0x65036bf7
mov ebx, dword [esp + 0x198]
jmp 0x65036bf9
xor ebx, ebx
mov dword [esp + 0x124], ebx
lea ebx, [0x650d3aac]
cmp edi, ebx
jne 0x65036c13
mov ebx, dword [esp + 0x198]
jmp 0x65036c15
xor ebx, ebx
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x128], ebx
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x108]
jmp 0x65036cb4
mov eax, dword [esp + 0x140]
mov ebp, dword [esp + 0x144]
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x11c]
mov dword [esp + 0x140], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x144], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x148], ecx
mov ecx, dword [esp + 0x90]
inc ecx
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x19c]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov edi, dword [esp + 0x194]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x12c]
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], ebp
mov esi, dword [esp + 0x90]
mov ebp, dword [esp + 0x94]
cmp esi, ebp
jge 0x65037341
mov dword [esp + 0x11c], eax
mov ebp, dword [esp + 0x19c]
cmp ebp, 0xa
jg 0x65037075
cmp ebp, 6
jg 0x65036f04
cmp ebp, 4
je 0x65036e03
cmp ebp, 6
jne 0x65037237
mov edi, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
mov dword [esp + 0x130], edx
mov ebp, dword [esp + 0x118]
test ebp, ebp
je 0x65036d53
mov ebx, dword [ebp + 0xc]
mov edx, dword [ebp]
mov ebp, dword [ebp + 4]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x64], ebp
mov dword [esp + 0x120], edx
mov edx, dword [esp + 0x130]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x118]
jmp 0x65036da8
test ebx, ebx
je 0x65036d85
mov ebp, dword [ebx + 0xc]
mov edx, dword [ebx]
mov ebx, dword [ebx + 4]
mov dword [esp + 0x54], ebp
mov dword [esp + 0x64], ebx
mov dword [esp + 0x120], edx
mov edx, dword [esp + 0x130]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x118]
jmp 0x65036da8
mov dword [esp + 0x100], eax
xor eax, eax
mov dword [esp + 0x54], eax
xor eax, eax
mov dword [esp + 0x64], eax
xor eax, eax
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0x100]
mov ebx, dword [esp + 0x54]
test ebx, ebx
je 0x65036de0
mov ebp, dword [esp + 0x2c]
sub esi, ebp
imul ebx, esi
mov esi, dword [esp + 0x28]
lea esi, [ebx + esi*4]
mov dword [esp + 0x70], esi
mov dword [esp + 0xa0], eax
mov eax, 1
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xa0]
jmp 0x65037e61
mov dword [esp + 0x80], edi
mov ebx, dword [esp + 0x98]
mov ebx, 1
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x98]
jmp 0x65037d8a
test ecx, ecx
jne 0x65036e3c
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x34], eax
mov dword [esp + 0xa8], ecx
mov ecx, 1
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xa8]
jmp 0x65037ca4
mov edi, dword [esp + 0x2c]
sub esi, edi
imul esi, dword [ecx + 0xc]
mov edi, dword [esp + 0x144]
mov ebx, dword [esp + 0x140]
mov ebp, dword [esp + 0x148]
cmp edi, 1
jb 0x65037c55
dec ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 1
add ebx, ebp
mov dword [esp + 0x138], ebx
mov ebp, dword [ecx + 8]
mov ebx, dword [ecx]
mov dword [esp + 0x134], ebx
mov ebx, dword [esp + 0x28]
add ebx, esi
cmp ebp, ebx
jb 0x65037c4c
cmp esi, ebx
ja 0x65037c43
lea ebx, [edi - 1]
sub ebp, esi
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and esi, ebp
mov ebp, dword [esp + 0x134]
add ebp, esi
mov esi, dword [esp + 0x28]
cmp esi, ebx
jge 0x65036ec1
mov ebx, esi
jmp 0x65036ec7
mov esi, ebx
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x138]
cmp ebp, edi
je 0x65037c22
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.64fda970
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
jmp 0x65037c22
cmp ebp, 9
jle 0x6503701f
cmp ebp, 0xa
jne 0x65037237
mov ebx, dword [esp + 0x124]
test ebx, ebx
jne 0x65036f4f
lea eax, [0x650914a0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.64f89580
mov eax, dword [esp + 8]
mov dword [esp + 0x138], eax
mov ecx, dword [esp + 0x98]
mov edx, 1
jmp 0x65037baf
mov edi, dword [esp + 0x2c]
sub esi, edi
imul esi, dword [ebx + 0xc]
mov dword [esp + 0x6c], esi
mov edi, dword [esp + 0x144]
mov ebp, dword [esp + 0x140]
mov esi, dword [esp + 0x148]
cmp edi, 1
jb 0x65037b8f
dec esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 1
add ebp, esi
mov dword [esp + 0x138], ebp
mov esi, dword [ebx + 8]
mov ebx, dword [ebx]
mov dword [esp + 0x134], ebx
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x6c]
add ebp, ebx
cmp esi, ebp
jb 0x65037b86
cmp ebx, ebp
ja 0x65037b7d
lea ebp, [edi - 1]
sub esi, ebx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ebx, esi
mov esi, dword [esp + 0x134]
add ebx, esi
mov esi, dword [esp + 0x28]
cmp esi, ebp
jge 0x65036fdc
mov ebp, esi
jmp 0x65036fe2
mov esi, ebp
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x138]
cmp ebx, edi
je 0x65037b5c
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call fcn.64fda970
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edx, dword [esp + 0x188]
mov ebp, dword [esp + 0x28]
jmp 0x65037b5c
lea eax, [0x650914a0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.64f89580
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x88]
test ecx, ecx
je 0x65037b57
mov dword [esp + 0x138], eax
mov eax, 8
cmp ecx, 0xffffffff
je 0x6503705a
cdq
idiv ecx
jmp 0x6503705c
neg eax
mov dword [esp + 0x60], eax
mov edx, dword [esp + 0x98]
xor ebx, ebx
mov ebp, 1
xor esi, esi
jmp 0x65037a3f
cmp ebp, 0xc
jg 0x650371c3
cmp ebp, 0xb
jne 0x6503718e
test ebx, ebx
jne 0x650370c0
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x40], eax
mov dword [esp + 0xb8], ecx
mov ecx, 1
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xb8]
jmp 0x65037909
mov edi, dword [esp + 0x2c]
sub esi, edi
imul esi, dword [ebx + 0xc]
mov dword [esp + 0x68], esi
mov edi, dword [esp + 0x144]
mov ebp, dword [esp + 0x140]
mov esi, dword [esp + 0x148]
cmp edi, 1
jb 0x650378b4
dec esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 1
add ebp, esi
mov dword [esp + 0x138], ebp
mov esi, dword [ebx + 8]
mov ebx, dword [ebx]
mov dword [esp + 0x134], ebx
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + ebp*4]
cmp esi, ebp
jb 0x650378ab
cmp ebp, ebx
jb 0x650378a2
lea ebp, [edi - 1]
sub esi, ebx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ebx, esi
mov esi, dword [esp + 0x134]
add ebx, esi
mov esi, dword [esp + 0x28]
mov edi, esi
shl esi, 2
cmp esi, ebp
jl 0x65037151
mov esi, ebp
mov ebp, dword [esp + 0x138]
cmp ebx, ebp
je 0x65037881
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call fcn.64fda970
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edx, dword [esp + 0x188]
mov edi, dword [esp + 0x28]
jmp 0x65037881
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x30], eax
mov dword [esp + 0xc8], ecx
mov ecx, 1
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xc8]
jmp 0x650377a1
cmp ebp, 0xe
jne 0x650371fd
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x4c], eax
mov dword [esp + 0xd8], ecx
mov ecx, 1
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0xe0]
mov ecx, dword [esp + 0xd8]
jmp 0x65037622
cmp ebp, 0xf
jne 0x65037237
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x3c], eax
mov dword [esp + 0xe8], ecx
mov ecx, 1
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0xf0]
mov ecx, dword [esp + 0xe8]
jmp 0x650373f0
mov edi, dword [esp + 0x1a0]
test edi, edi
je 0x650372d8
cmp ebp, 0xa
je 0x650372d8
cmp ebp, 9
je 0x650372d8
cmp ebp, 8
je 0x650372d8
cmp ebp, 7
je 0x650372d8
lea ecx, [esp + 0x140]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov edx, dword [esp + 0x58]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0x88]
mov esi, ebp
sar ebp, 0x1f
shr ebp, 0x1d
add ebp, esi
sar ebp, 3
mov dword [esp + 0x10], ebp
call fcn.65035f30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x12c]
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x1a0]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x11c]
jmp 0x650372ec
mov dword [esp + 0xf8], eax
xor eax, eax
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xf8]
mov edx, dword [edx + 0x474]
mov edi, dword [esp + 0x7c]
cmp edi, 5
jae 0x6503739b
lea eax, [edi + edi*2]
mov ecx, dword [esp + eax*4 + 0x140]
mov ebx, dword [esp + eax*4 + 0x144]
mov eax, dword [esp + eax*4 + 0x148]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.6502ada0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test eax, eax
je 0x65036c3e
jmp 0x65037372
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x1a8], 0
mov byte [esp + 0x25], 0
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.6502af00
add esp, 0x184
ret
mov dword [esp + 0x1a4], ecx
mov dword [esp + 0x1a8], edx
mov byte [esp + 0x25], 0
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.6502af00
add esp, 0x184
ret
mov eax, edi
mov ecx, 5
call fcn.64fda100
xchg ebp, ebx
mov byte [eax + edx + 7], bl
xchg ebp, ebx
mov ecx, dword [esp + 0x3c]
inc ecx
add eax, 8
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x9c]
cmp edi, ebx
jge 0x65037572
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x198]
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call ecx
mov eax, dword [0x651573d8]
mov ecx, dword [0x651573dc]
mov eax, dword [eax + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
lea edx, [0x650d25bc]
cmp ecx, edx
jne 0x650375bd
movzx ebx, word [eax]
movzx ebp, word [eax + 2]
movzx esi, word [eax + 4]
movzx edi, word [eax + 6]
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
mov eax, dword [esp + 0x74]
cmp eax, ecx
jae 0x650375b8
mov word [esp + 0x26], di
mov ecx, ebx
shr bx, 8
mov byte [edx + eax], bl
mov edx, dword [esp + 0x144]
mov ebx, dword [esp + 0x140]
lea edi, [eax + 1]
cmp edx, edi
jbe 0x650375af
mov byte [eax + ebx + 1], cl
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebx, [eax + 2]
cmp ecx, ebx
jbe 0x650375a8
mov ebx, ebp
shr bp, 8
xchg ebp, ebx
mov byte [eax + edx + 2], bl
xchg ebp, ebx
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebp, [eax + 3]
cmp ecx, ebp
jbe 0x650375a1
mov byte [eax + edx + 3], bl
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebx, [eax + 4]
cmp ecx, ebx
jbe 0x6503759a
mov ebx, esi
shr si, 8
xchg esi, ebx
mov byte [eax + edx + 4], bl
xchg esi, ebx
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebp, [eax + 5]
cmp ecx, ebp
jbe 0x65037593
mov byte [eax + edx + 5], bl
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebx, [eax + 6]
cmp ecx, ebx
jbe 0x6503758c
movzx ebx, word [esp + 0x26]
mov ebp, ebx
shr bx, 8
mov byte [eax + edx + 6], bl
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebx, [eax + 7]
cmp ecx, ebx
ja 0x650373a7
jmp 0x65037585
mov ebx, dword [esp + 0x128]
mov edi, dword [esp + 0x194]
jmp 0x65037237
mov eax, ebx
call fcn.64fda100
mov eax, ebx
call fcn.64fda100
mov eax, ebp
call fcn.64fda100
mov eax, ebx
call fcn.64fda100
mov eax, ebp
call fcn.64fda100
mov eax, ebx
call fcn.64fda100
mov eax, edi
mov ecx, edx
call fcn.64fda100
call fcn.64fda100
mov dword [esp], ecx
lea eax, [0x65095940]
mov dword [esp + 4], eax
lea eax, [0x6508e140]
mov dword [esp + 8], eax
call fcn.64f89070
xchg ebp, eax
mov byte [esi + edx + 5], al
xchg ebp, eax
mov eax, dword [esp + 0x4c]
lea ecx, [eax + 1]
lea eax, [esi + 6]
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edi, dword [esp + 0x4c]
mov ebx, dword [esp + 0x9c]
cmp edi, ebx
jge 0x6503771f
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x198]
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call ecx
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x144]
mov ebp, dword [esp + 0x140]
mov esi, dword [esp + 0x74]
cmp esi, ebx
jae 0x6503774f
mov ebx, eax
shr eax, 8
mov byte [ebp + esi], al
mov ebp, dword [esp + 0x144]
mov edi, dword [esp + 0x140]
lea eax, [esi + 1]
cmp ebp, eax
jbe 0x65037748
mov byte [esi + edi + 1], bl
mov ebx, dword [esp + 0x144]
mov ebp, dword [esp + 0x140]
lea eax, [esi + 2]
cmp ebx, eax
jbe 0x65037741
mov ebx, ecx
shr ecx, 8
mov byte [esi + ebp + 2], cl
mov ecx, dword [esp + 0x144]
mov ebp, dword [esp + 0x140]
lea eax, [esi + 3]
cmp ecx, eax
jbe 0x6503773c
mov byte [esi + ebp + 3], bl
mov ecx, dword [esp + 0x144]
mov ebx, dword [esp + 0x140]
lea eax, [esi + 4]
cmp ecx, eax
jbe 0x65037737
mov ebp, edx
shr edx, 8
mov byte [esi + ebx + 4], dl
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea eax, [esi + 5]
cmp ecx, eax
ja 0x650375d9
jmp 0x65037732
mov ebx, dword [esp + 0x128]
mov edi, dword [esp + 0x194]
jmp 0x65037237
call fcn.64fda100
call fcn.64fda100
call fcn.64fda100
mov ecx, ebx
call fcn.64fda100
mov ecx, ebp
call fcn.64fda100
mov eax, esi
mov ecx, ebx
call fcn.64fda100
xchg esi, ecx
mov byte [eax + ebx + 1], cl
xchg esi, ecx
mov ecx, dword [esp + 0x30]
inc ecx
add eax, 2
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x9c]
cmp edi, ebx
jge 0x65037846
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x198]
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call ecx
mov eax, dword [0x651573c8]
mov ecx, dword [0x651573cc]
mov eax, dword [eax + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call eax
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
lea edx, [0x650d2594]
cmp eax, edx
jne 0x65037865
movzx ebx, word [ecx]
mov ecx, dword [esp + 0x144]
mov ebp, dword [esp + 0x140]
mov eax, dword [esp + 0x74]
cmp eax, ecx
jae 0x65037860
mov esi, ebx
shr bx, 8
mov byte [ebp + eax], bl
mov ecx, dword [esp + 0x144]
mov ebx, dword [esp + 0x140]
lea ebp, [eax + 1]
cmp ecx, ebp
ja 0x65037758
jmp 0x65037859
mov ebx, dword [esp + 0x128]
mov edi, dword [esp + 0x194]
jmp 0x65037237
mov eax, ebp
call fcn.64fda100
call fcn.64fda100
mov dword [esp], eax
lea eax, [0x650912c0]
mov dword [esp + 4], eax
lea eax, [0x6508e140]
mov dword [esp + 8], eax
call fcn.64f89070
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
jmp 0x65037237
mov eax, ebx
mov ecx, ebp
call fcn.64fda160
mov ecx, ebp
mov edx, esi
call fcn.64fda140
mov eax, 1
mov ecx, edi
call fcn.64fda160
xchg edi, ebx
mov byte [eax + edx + 3], bl
xchg edi, ebx
mov ecx, dword [esp + 0x40]
inc ecx
add eax, 4
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edi, dword [esp + 0x40]
mov ebx, dword [esp + 0x9c]
cmp edi, ebx
jge 0x650379f1
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x198]
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call ecx
mov eax, dword [0x651573e0]
mov ecx, dword [0x651573e4]
mov eax, dword [eax + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
lea edx, [0x650d25a8]
cmp ecx, edx
jne 0x65037a14
movzx ebx, byte [eax]
movzx ebp, byte [eax + 1]
movzx esi, byte [eax + 2]
movzx edi, byte [eax + 3]
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
mov eax, dword [esp + 0x74]
cmp eax, ecx
jae 0x65037a0f
mov byte [edx + eax], bl
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebx, [eax + 1]
cmp ecx, ebx
jbe 0x65037a08
xchg ebp, ebx
mov byte [eax + edx + 1], bl
xchg ebp, ebx
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebx, [eax + 2]
cmp ecx, ebx
jbe 0x65037a01
xchg esi, ebx
mov byte [eax + edx + 2], bl
xchg esi, ebx
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x140]
lea ebx, [eax + 3]
cmp ecx, ebx
ja 0x650378c0
jmp 0x650379fa
mov edi, dword [esp + 0x28]
jmp 0x65037881
mov eax, ebx
call fcn.64fda100
mov eax, ebx
call fcn.64fda100
mov eax, ebx
call fcn.64fda100
call fcn.64fda100
mov dword [esp], ecx
lea eax, [0x650958c0]
mov dword [esp + 4], eax
lea eax, [0x6508e140]
mov dword [esp + 8], eax
call fcn.64f89070
mov edi, dword [esp + 0x44]
inc edi
mov ebx, eax
mov esi, edx
mov eax, dword [esp + 0x60]
mov edx, edi
mov edi, dword [esp + 0x9c]
cmp edx, edi
jge 0x65037ae6
mov dword [esp + 0x44], edx
mov dword [esp + 0x74], ebp
xchg esi, eax
mov byte [esp + 0x24], al
xchg esi, eax
mov dword [esp + 0x84], ebx
mov eax, dword [esp + 0x138]
mov ecx, dword [eax + 0x18]
mov ebx, dword [esp + 0x198]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov ebp, dword [esp + 0x90]
mov dword [esp + 8], ebp
call ecx
mov ecx, dword [esp + 0x88]
cmp ecx, 0x20
sbb eax, eax
movzx edx, byte [esp + 0x24]
shl edx, cl
and edx, eax
movzx eax, byte [esp + 0xc]
or edx, eax
mov eax, dword [esp + 0x84]
inc eax
mov ebx, dword [esp + 0x60]
cmp ebx, eax
jne 0x65037add
mov ebp, dword [esp + 0x144]
mov esi, dword [esp + 0x140]
mov eax, dword [esp + 0x74]
cmp eax, ebp
jae 0x65037b50
mov byte [esi + eax], dl
lea ebp, [eax + 1]
xor eax, eax
xor edx, edx
jmp 0x65037a30
mov ebp, dword [esp + 0x74]
jmp 0x65037a30
test ebx, ebx
jne 0x65037b2a
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
jmp 0x65037237
cmp ecx, 0x20
sbb edx, edx
shl esi, cl
and esi, edx
inc ebx
cmp ebx, eax
jne 0x65037b20
mov edx, dword [esp + 0x144]
mov ebx, dword [esp + 0x140]
cmp ebp, edx
jae 0x65037b47
xchg esi, eax
mov byte [ebx + ebp], al
xchg esi, eax
jmp 0x65037aea
mov eax, ebp
mov ecx, edx
call fcn.64fda100
mov ecx, ebp
call fcn.64fda100
call fcn.64fb02e0
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
jmp 0x65037237
mov eax, ebx
mov ecx, ebp
call fcn.64fda160
mov ecx, ebp
mov edx, esi
call fcn.64fda140
mov eax, 1
mov ecx, edi
call fcn.64fda160
mov byte [eax + ebx], dl
mov ebp, dword [esp + 0x48]
lea ecx, [ebp + 1]
lea edx, [ebx + 1]
mov eax, dword [esp + 0x138]
mov ebx, dword [esp + 0x9c]
cmp ecx, ebx
jge 0x65037bfd
mov dword [esp + 0x48], ecx
mov dword [esp + 0x74], edx
mov edx, dword [eax + 0x18]
mov ebx, dword [esp + 0x198]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov ebp, dword [esp + 0x90]
mov dword [esp + 8], ebp
call edx
mov ecx, dword [esp + 0x144]
mov eax, dword [esp + 0x140]
movzx edx, byte [esp + 0xc]
mov ebx, dword [esp + 0x74]
cmp ebx, ecx
jb 0x65037b9b
jmp 0x65037c1b
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edx, dword [esp + 0x188]
mov ebp, dword [esp + 0x28]
jmp 0x65037b5c
mov eax, ebx
call fcn.64fda100
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
jmp 0x65037237
mov eax, esi
mov ecx, ebx
call fcn.64fda160
mov ecx, ebx
mov edx, ebp
call fcn.64fda140
mov eax, 1
mov ecx, edi
call fcn.64fda160
mov byte [ebp + eax], bl
mov ecx, dword [esp + 0x34]
inc ecx
inc eax
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x194]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x9c]
cmp edi, ebx
jge 0x65037d26
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x198]
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call ecx
mov eax, dword [0x651573d0]
mov ecx, dword [0x651573d4]
mov eax, dword [eax + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call eax
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
lea edx, [0x650d2580]
cmp eax, edx
jne 0x65037d34
movzx ebx, byte [ecx]
mov ecx, dword [esp + 0x144]
mov ebp, dword [esp + 0x140]
mov eax, dword [esp + 0x74]
cmp eax, ecx
jb 0x65037c61
jmp 0x65037d2f
mov ebx, dword [esp + 0x28]
jmp 0x65037c22
call fcn.64fda100
mov dword [esp], eax
lea eax, [0x65091260]
mov dword [esp + 4], eax
lea eax, [0x6508e140]
mov dword [esp + 8], eax
call fcn.64f89070
shr edx, 8
mov byte [ebx + esi + 2], dl
mov eax, dword [esp + 0x38]
inc eax
lea ecx, [ebx + 3]
mov edx, esi
mov ebp, dword [esp + 0x118]
mov esi, dword [esp + 0x90]
mov edi, dword [esp + 0x80]
mov ebx, eax
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x12c]
mov ebp, dword [esp + 0x9c]
cmp ebx, ebp
jge 0x65037e0a
mov dword [esp + 0x38], ebx
mov eax, dword [esp + 0x194]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x198]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call ecx
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x80]
cmp ebx, ebp
jae 0x65037e39
shr eax, 8
mov esi, dword [esp + 0x130]
mov byte [esi + ebx], al
lea eax, [ebx + 1]
cmp ebp, eax
jbe 0x65037e32
shr ecx, 8
mov byte [ebx + esi + 1], cl
lea eax, [ebx + 2]
cmp ebp, eax
ja 0x65037d50
jmp 0x65037e2b
mov edx, dword [esp + 0x188]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0x19c]
mov edi, dword [esp + 0x194]
jmp 0x65037237
mov ecx, ebp
call fcn.64fda100
mov ecx, ebp
call fcn.64fda100
mov eax, ebx
mov ecx, ebp
call fcn.64fda100
mov edx, dword [esp + 0x130]
xchg esi, eax
mov byte [ebp + edx + 2], al
xchg esi, eax
add ebx, 4
add ebp, 3
mov esi, dword [esp + 0x70]
mov dword [esp + 0x74], ebp
mov ebp, dword [esp + 0x2c]
cmp ebx, esi
jge 0x65037eda
mov ebp, dword [esp + 0x64]
cmp ebp, ebx
jbe 0x65037f1a
mov esi, dword [esp + 0x120]
movzx esi, byte [esi + ebx]
mov ebp, dword [esp + 0x74]
cmp ebp, edi
jae 0x65037f11
xchg esi, eax
mov byte [edx + ebp], al
xchg esi, eax
lea esi, [ebx + 1]
mov edx, dword [esp + 0x64]
cmp edx, esi
jbe 0x65037f08
lea esi, [ebp + 1]
mov edx, dword [esp + 0x120]
movzx edx, byte [ebx + edx + 1]
cmp edi, esi
jbe 0x65037eff
mov esi, dword [esp + 0x130]
mov byte [ebp + esi + 1], dl
lea edx, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp esi, edx
jbe 0x65037ef6
lea edx, [ebp + 2]
mov esi, dword [esp + 0x120]
movzx esi, byte [ebx + esi + 2]
cmp edi, edx
ja 0x65037e42
jmp 0x65037eed
mov ebp, dword [esp + 0x9c]
mov esi, dword [esp + 0x90]
jmp 0x65037e0a
mov eax, edx
mov ecx, edi
call fcn.64fda100
mov eax, edx
mov ecx, esi
call fcn.64fda100
mov eax, esi
mov ecx, edi
call fcn.64fda100
mov eax, esi
mov ecx, edx
call fcn.64fda100
mov eax, ebp
mov ecx, edi
call fcn.64fda100
mov eax, ebx
mov ecx, ebp
call fcn.64fda100
mov edx, ecx
mov ecx, ebx
call fcn.64fda140
xor eax, eax
mov ecx, ebp
call fcn.64fda100
mov ecx, ebp
mov edx, ebx
call fcn.64fda140
mov eax, ebp
mov ecx, 5
call fcn.64fda100
nop
call fcn.64fb0f90
add esp, 0x184
ret
call fcn.64fd8c20
jmp fcn.65036750