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

Disassembly:
mov ecx, dword [0x9ec7ac]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x63ac90
sub esp, 0x88
mov ebx, dword [esp + 0x8c]
movzx ecx, byte [ebx + 0x68a]
mov byte [esp + 0x1b], cl
mov ebp, dword [ebx + 0x604]
sub ebp, dword [ebx + 0x60c]
mov esi, ebp
shr ebp, cl
lea edi, [esi + esi*2]
lea eax, [ecx + 1]
mov edx, ecx
mov ecx, eax
shr edi, cl
movzx ebx, word [ebx + 0x688]
cmp dl, 0x20
sbb edx, edx
and ebp, edx
cmp al, 0x20
sbb eax, eax
and edi, eax
cmp ebx, 0x100
ja 0x63ac83
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], edi
mov dword [esp + 0x74], edx
mov eax, dword [esp + 0x8c]
xor ecx, ecx
xor ecx, ecx
mov dword [esp + 0x4c], ecx
xor ecx, ecx
jmp 0x63a745
inc ecx
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x74]
cmp ecx, ebx
jge 0x63a7aa
mov edx, dword [eax + ecx*4]
test edx, edx
jne 0x63a760
mov word [eax + ecx*2 + 0x400], 0
mov edx, dword [esp + 0x4c]
jmp 0x63a73c
cmp edx, ebp
ja 0x63a77d
mov word [eax + ecx*2 + 0x400], 0xffff
mov edi, dword [esp + 0x4c]
inc edi
sub esi, edx
mov edx, edi
mov edi, dword [esp + 0x40]
jmp 0x63a73c
cmp edx, edi
ja 0x63a79a
mov word [eax + ecx*2 + 0x400], 1
mov ebp, dword [esp + 0x4c]
inc ebp
sub esi, edx
mov edx, ebp
mov ebp, dword [esp + 0x3c]
jmp 0x63a73c
mov word [eax + ecx*2 + 0x400], 0xfffe
mov edx, dword [esp + 0x4c]
jmp 0x63a73c
movzx ecx, byte [esp + 0x1b]
mov ebx, 1
shl ebx, cl
and ebx, edx
mov edx, dword [esp + 0x4c]
mov ebp, ebx
sub ebx, edx
test ebx, ebx
je 0x63ac7e
mov eax, esi
xor edx, edx
div ebx
cmp edi, eax
jae 0x63a823
shl ebx, 1
lea eax, [esi + esi*2]
test ebx, ebx
je 0x63ac79
mov edx, dword [esp + 0x8c]
movzx edi, word [edx + 0x688]
xor edx, edx
div ebx
cmp edi, 0x100
ja 0x63ac6d
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], edi
mov ebx, dword [esp + 0x8c]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x78], eax
xor eax, eax
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x78]
jmp 0x63ac33
mov eax, dword [esp + 0x4c]
mov ebp, dword [esp + 0x8c]
movzx edi, word [ebp + 0x688]
movzx edx, di
inc edx
cmp eax, edx
jne 0x63a857
movzx ecx, di
cmp ecx, 0x100
ja 0x63ac15
xor eax, eax
xor edx, edx
xor esi, esi
jmp 0x63abba
test esi, esi
jne 0x63a862
xor eax, eax
jmp 0x63ab58
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
movzx edx, cl
mov ebp, 0x3e
sub ebp, edx
mov dword [esp + 0x1c], ebp
mov edi, 0
sbb edi, 0
mov ecx, 0x3d
sub ecx, edx
mov edx, 0
sbb edx, 0
cmp edx, 1
sbb edx, edx
xor edx, 0xffffffff
or ecx, edx
mov dword [esp + 0x74], ecx
mov edx, 1
shl edx, cl
lea eax, [ecx - 0x20]
mov dword [esp + 0x6c], eax
mov ecx, eax
mov esi, 1
shl esi, cl
neg eax
mov ecx, eax
mov ebx, 1
shr ebx, cl
mov ebp, dword [esp + 0x6c]
cmp ebp, 0x20
sbb ebp, ebp
and ebp, esi
mov esi, dword [esp + 0x74]
cmp esi, 0x20
sbb esi, esi
and edx, esi
mov dword [esp + 0x74], edx
cmp eax, 0x20
sbb esi, esi
and ebx, esi
or ebp, ebx
mov dword [esp + 0x6c], ebp
mov ebx, edx
add edx, 0xffffffff
mov dword [esp + 0x38], edx
cmp edi, 1
sbb ecx, ecx
xor ecx, 0xffffffff
mov esi, dword [esp + 0x1c]
or ecx, esi
mov dword [esp + 0x68], ecx
mov esi, 1
shl esi, cl
lea edi, [ecx - 0x20]
mov dword [esp + 0x64], edi
mov eax, ecx
mov ecx, edi
mov edx, 1
shl edx, cl
mov dword [esp + 0x60], edx
neg ecx
mov dword [esp + 0x5c], ecx
mov ebp, 1
shr ebp, cl
cmp eax, 0x20
sbb eax, eax
mov dword [esp + 0x58], eax
and esi, eax
mov eax, dword [esp + 0x24]
mul esi
cmp edi, 0x20
sbb esi, esi
mov dword [esp + 0x54], esi
mov edi, dword [esp + 0x60]
and edi, esi
cmp ecx, 0x20
sbb ecx, ecx
mov dword [esp + 0x60], ecx
and ebp, ecx
or edi, ebp
mov ebp, dword [esp + 0x24]
imul ebp, edi
add edx, ebp
add eax, ebx
mov ebp, dword [esp + 0x6c]
adc edx, ebp
add eax, 0xffffffff
adc edx, 0xffffffff
mov dword [esp + 4], edx
mov dword [esp], eax
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0x20]
mov dword [esp + 8], edx
call fcn.00460210
mov edx, dword [esp + 0x8c]
movzx ecx, word [edx + 0x688]
cmp ecx, 0x100
ja 0x63ab45
mov dword [esp + 0x70], ecx
mov ebx, dword [esp + 0x74]
add ebx, 0xffffffff
mov ebx, dword [esp + 0x6c]
adc ebx, 0xffffffff
mov eax, dword [esp + 0x10]
mov dword [esp + 0x30], eax
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x34], ebp
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x68]
mov dword [esp + 0x80], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x80]
jmp 0x63aa13
inc edx
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x70]
mov esi, dword [esp + 0x5c]
mov dword [esp + 0x44], edx
mov ebx, ebp
mov dword [esp + 0x28], edi
mov edx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x34]
mov edi, dword [esp + 0x68]
mov esi, dword [esp + 0x44]
cmp esi, ecx
jge 0x63ab28
lea ecx, [edx + esi*2 + 0x400]
mov edx, dword [edx + esi*4]
cmp word [ecx], 0xfffe
jne 0x63aace
mov dword [esp + 0x2c], ebx
mov ecx, edx
mul edx
imul ecx, ebp
add edx, ecx
mov ecx, edi
mov ebp, dword [esp + 0x28]
shr ebp, cl
mov esi, dword [esp + 0x58]
and ebp, esi
mov ecx, dword [esp + 0x64]
shr ebx, cl
mov esi, dword [esp + 0x54]
and ebx, esi
mov ecx, dword [esp + 0x5c]
mov edi, dword [esp + 0x2c]
shl edi, cl
mov esi, dword [esp + 0x60]
and edi, esi
or ebp, edi
or ebx, ebp
mov ebp, dword [esp + 0x28]
add ebp, eax
mov dword [esp + 0x28], ebp
mov edi, dword [esp + 0x2c]
adc edx, edi
mov dword [esp + 0x50], edx
mov edi, edx
shl edx, cl
and edx, esi
mov eax, ecx
mov ecx, dword [esp + 0x64]
shr edi, cl
mov esi, dword [esp + 0x54]
and edi, esi
mov ecx, dword [esp + 0x68]
shr ebp, cl
mov esi, dword [esp + 0x58]
and ebp, esi
or ebp, edx
or edi, ebp
sub edi, ebx
test edi, edi
je 0x63aaec
mov edx, dword [esp + 0x44]
mov ebx, esi
mov esi, dword [esp + 0x8c]
mov word [esi + edx*2 + 0x400], di
mov ebp, dword [esp + 0x50]
mov edi, dword [esp + 0x28]
jmp 0x63a9ed
mov eax, dword [esp + 0x5c]
mov ecx, edi
mov edx, esi
mov esi, dword [esp + 0x8c]
mov ebp, ebx
mov edi, dword [esp + 0x28]
mov ebx, dword [esp + 0x58]
jmp 0x63a9ed
lea eax, [0x6f2340]
mov dword [esp], eax
call fcn.0040c5b0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0xa
lea ecx, [0x7340ea]
mov dword [eax], ecx
lea ecx, [0x7aaeb4]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
add esp, 0x88
ret
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
add esp, 0x88
ret
mov edx, 0x100
call fcn.004684e0
inc eax
mov esi, edx
xor edx, edx
div esi
mov eax, edx
test ebx, ebx
jbe 0x63ab87
cmp eax, 0x100
jae 0x63aba9
movzx edx, word [ebp + eax*2 + 0x400]
test dx, dx
jle 0x63ab7a
inc edx
mov word [ebp + eax*2 + 0x400], dx
dec ebx
movzx edx, word [ebp + 0x688]
test edx, edx
jne 0x63ab4f
jmp 0x63aba4
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
add esp, 0x88
ret
call fcn.00437570
mov ecx, 0x100
call fcn.004684d0
inc edx
mov esi, eax
mov eax, edx
mov edx, edi
cmp eax, ecx
jge 0x63abd2
mov edi, dword [ebp + eax*4]
cmp edx, edi
jae 0x63abca
mov edx, eax
jmp 0x63abb3
mov edi, edx
mov edx, eax
mov eax, esi
jmp 0x63abb3
cmp esi, 0x100
jae 0x63ac09
movzx eax, word [ebp + esi*2 + 0x400]
add eax, ebx
mov word [ebp + esi*2 + 0x400], ax
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
add esp, 0x88
ret
mov eax, esi
mov ecx, 0x100
call fcn.004684c0
mov edx, 0x100
call fcn.004684e0
lea ecx, [ebp + 1]
mov edi, dword [esp + 0x70]
mov ebp, dword [esp + 0x74]
mov dword [esp + 0x48], ecx
movzx ecx, byte [esp + 0x1b]
mov ebp, dword [esp + 0x48]
cmp ebp, edi
jge 0x63ac5e
lea ecx, [ebx + ebp*2 + 0x400]
mov edi, dword [ebx + ebp*4]
cmp word [ecx], 0xfffe
jne 0x63ac1f
cmp edi, eax
ja 0x63ac1f
mov word [ebx + ebp*2 + 0x400], 1
inc edx
sub esi, edi
jmp 0x63ac1f
mov ebp, dword [esp + 0x74]
sub ebp, edx
mov eax, edx
mov ebx, ebp
jmp 0x63a827
mov ecx, edi
mov edx, 0x100
call fcn.004684e0
call fcn.00437570
call fcn.00437570
mov ecx, ebx
mov edx, 0x100
call fcn.004684e0
nop
call fcn.00467050
jmp fcn.0063a6b0