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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x18]
cmp eax, dword [ecx + 8]
jbe 0x63ada5
sub esp, 0x98
mov edx, dword [esp + 0x9c]
mov ebx, dword [edx + 0x24]
test ebx, ebx
jne 0x63a202
xor eax, eax
jmp 0x63a214
add esp, 0x98
ret
mov word [edx + eax*2 + 0x13c], 0
inc eax
cmp eax, 0x121
jge 0x63a222
jb 0x63a209
jmp 0x63ad9a
movzx ebx, byte [edx + 0x12]
test bl, bl
jne 0x63a231
xor eax, eax
jmp 0x63ad85
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov ebx, dword [esp + 0xac]
mov dword [esp + 8], ebx
lea ebp, [edx + 0x13c]
mov dword [esp + 0x94], ebp
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], 0x101
mov dword [esp + 0x14], 0x121
call fcn.0063b780
mov eax, dword [esp + 0xa4]
test eax, eax
je 0x63a2a4
mov ecx, dword [esp + 0xa8]
cmp ecx, 0xffff
jg 0x63a29e
lea edx, [ecx + 5]
shl edx, 3
mov ebx, 1
jmp 0x63a2af
xor ebx, ebx
xor edx, edx
jmp 0x63a2af
mov ecx, dword [esp + 0xa8]
xor ebx, ebx
xor edx, edx
mov dword [esp + 0x2c], edx
mov byte [esp + 0x1c], bl
test bl, bl
je 0x63a2ec
cmp ecx, 0x400
jle 0x63a2ec
cvtsi2sd xmm0, ecx
movsd xmm1, qword [0x7c9ca4]
mulsd xmm1, xmm0
mov ebp, ecx
shl ecx, 1
cvtsi2sd xmm0, ecx
mov ecx, dword [esp + 0x9c]
xor esi, esi
xorps xmm2, xmm2
jmp 0x63acfb
mov eax, dword [esp + 0x9c]
mov word [eax + 0x33c], 1
mov ecx, dword [eax + 0x18]
mov dword [esp], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x101
mov dword [esp + 0xc], 0x121
mov dword [esp + 0x10], 0xf
call fcn.0063b5e0
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0x18]
xor edx, edx
xor ebx, ebx
jmp 0x63a33b
inc edx
cmp edx, 0x101
jge 0x63a379
movzx ebp, word [eax + edx*2 + 0x13c]
test bp, bp
je 0x63a33a
mov esi, dword [ecx + 4]
mov edi, ebx
mov ebx, dword [ecx]
cmp edx, esi
jae 0x63acf1
mov ebx, dword [ebx + edx*4]
test ebx, ebx
je 0x63a374
movzx ebp, bp
movzx esi, bl
imul esi, ebp
lea ebx, [esi + edi]
jmp 0x63a33a
mov ebx, 0x7fffffff
cmp ebx, 0x7fffffff
jge 0x63a3b4
mov ebp, dword [eax + 0x2c]
lea esi, [ebx + ebp]
test ebp, ebp
jne 0x63a392
lea esi, [ebx + ebp + 0x230]
mov ecx, dword [eax + 0x30]
cmp ecx, 0x20
sbb ebp, ebp
xchg ebp, ebx
not ebx
xchg ebp, ebx
or ecx, ebp
mov ebp, esi
sar esi, cl
lea ebx, [esi + ebp]
movzx ebp, byte [esp + 0x1c]
xchg ebp, eax
test al, al
xchg ebp, eax
jmp 0x63a3bd
movzx ebp, byte [esp + 0x1c]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x63a41d
mov ebp, dword [esp + 0x2c]
cmp ebx, ebp
jl 0x63a41d
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
movzx edx, byte [esp + 0xa0]
mov byte [esp + 8], dl
call fcn.00638400
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xc], eax
call fcn.00637330
add esp, 0x98
ret
mov ebp, dword [eax + 0x2c]
test ebp, ebp
jle 0x63a437
mov ebp, dword [eax + 0x14]
mov dword [esp + 0x88], ebp
xor ecx, ecx
xor edx, edx
jmp 0x63ac56
mov ebx, dword [eax + 0x2c]
test ebx, ebx
jne 0x63a55e
mov ecx, dword [0x901e80]
mov edx, dword [eax + 0x18]
mov ebx, dword [eax + 0x14]
test ecx, ecx
jne 0x63a45a
mov dword [eax + 0x14], edx
mov dword [eax + 0x18], ebx
jmp 0x63a472
lea edi, [eax + 0x14]
mov ecx, eax
mov eax, edx
call fcn.00456ac0
lea edi, [ecx + 0x18]
mov eax, ebx
call fcn.00456ac0
mov eax, ecx
mov ecx, dword [0x8db2f8]
mov dword [esp], eax
mov dword [esp + 4], 0x101
mov dword [esp + 8], 1
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.006374b0
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0x20]
mov dword [esp], ecx
lea ecx, [eax + 0x3be]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x13
mov dword [esp + 0xc], 0x13
mov dword [esp + 0x10], 7
call fcn.0063b5e0
nop
mov eax, dword [esp + 0x9c]
mov ecx, 0x13
jmp 0x63a4dd
mov ecx, ebp
cmp ecx, 4
jle 0x63a513
mov edx, dword [0x707cac]
mov ebx, dword [0x707ca8]
lea ebp, [ecx - 1]
cmp edx, ebp
jbe 0x63ac4c
mov edx, dword [ebx + ecx*4 - 4]
cmp edx, 0x13
jae 0x63ac40
movzx edx, word [eax + edx*2 + 0x3be]
test dx, dx
je 0x63a4db
mov dword [esp], eax
mov dword [esp + 4], 0x101
mov dword [esp + 8], 1
mov dword [esp + 0xc], ecx
movzx ecx, byte [esp + 0xa0]
mov byte [esp + 0x10], cl
call fcn.00637de0
mov eax, dword [esp + 0x9c]
mov byte [eax + 0x12], 1
mov dword [esp], eax
call fcn.00637860
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x9c]
mov dword [ecx + 0x2c], eax
mov eax, ecx
mov ebx, dword [eax + 0x14]
mov ebp, dword [ebx]
mov edx, dword [ebx + 8]
cmp edx, 0x100
jb 0x63ac36
mov dword [esp + 0x90], ebp
mov ebx, dword [eax + 8]
mov esi, dword [eax + 0xc]
movzx edi, byte [eax + 0x10]
mov ecx, ebp
movzx ebp, byte [eax + 0x11]
mov edx, dword [esp + 0xa8]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x80]
jmp 0x63a76b
xchg ebp, eax
mov byte [esp + 0x2a], al
xchg ebp, eax
and edi, 0x3f
xchg edi, eax
mov byte [esp + 0x29], al
xchg edi, eax
lea eax, [edi - 0x20]
mov byte [esp + 0x28], al
cmp al, 0x20
sbb ebp, ebp
neg eax
mov byte [esp + 0x27], al
cmp al, 0x20
sbb edx, edx
mov dword [esp + 0x68], edx
xchg edi, eax
cmp al, 0x20
xchg edi, eax
sbb ebx, ebx
mov dword [esp + 0x64], ebx
mov ebx, dword [esp + 0x8c]
movzx edi, byte [ebx]
mov edi, dword [ecx + edi*4]
movzx esi, byte [esp + 0x2b]
lea edx, [edi + esi]
and edx, 0x3f
lea eax, [edx - 0x20]
mov byte [esp + 0x2b], al
neg eax
mov byte [esp + 0x26], al
cmp al, 0x20
sbb eax, eax
mov dword [esp + 0x60], eax
cmp dl, 0x20
sbb eax, eax
mov dword [esp + 0x5c], eax
movzx eax, byte [esp + 0x2b]
cmp al, 0x20
sbb eax, eax
mov dword [esp + 0x58], eax
movzx ebx, byte [ebx + 1]
mov ebx, dword [ecx + ebx*4]
lea ecx, [ebx + edi]
add ecx, esi
mov byte [esp + 0x25], cl
and ecx, 0x3f
mov byte [esp + 0x24], cl
lea esi, [ecx - 0x20]
xchg esi, eax
mov byte [esp + 0x23], al
xchg esi, eax
xchg esi, eax
cmp al, 0x20
xchg esi, eax
sbb eax, eax
xchg esi, ebx
neg ebx
xchg esi, ebx
xchg esi, eax
mov byte [esp + 0x22], al
xchg esi, eax
xchg esi, eax
cmp al, 0x20
xchg esi, eax
sbb esi, esi
mov dword [esp + 0x54], esi
cmp cl, 0x20
sbb esi, esi
shr edi, 8
mov dword [esp + 0x50], edi
movzx ecx, byte [esp + 0x28]
shl edi, cl
and edi, ebp
movzx ecx, byte [esp + 0x27]
mov ebp, dword [esp + 0x50]
shr ebp, cl
mov ecx, dword [esp + 0x68]
and ecx, ebp
or ecx, edi
mov ebp, dword [esp + 0x6c]
or ebp, ecx
movzx ecx, byte [esp + 0x29]
mov edi, dword [esp + 0x50]
shl edi, cl
mov ecx, dword [esp + 0x64]
and ecx, edi
mov edi, dword [esp + 0x70]
or edi, ecx
shr ebx, 8
mov ecx, edx
mov edx, ebx
shl ebx, cl
mov ecx, dword [esp + 0x5c]
and ebx, ecx
or ebx, edi
movzx ecx, byte [esp + 0x2b]
mov edi, edx
shl edx, cl
mov ecx, dword [esp + 0x58]
and ecx, edx
mov edx, ecx
movzx ecx, byte [esp + 0x26]
shr edi, cl
mov ecx, dword [esp + 0x60]
and edi, ecx
or edi, edx
or ebp, edi
mov ecx, dword [esp + 0x8c]
movzx edx, byte [ecx + 2]
mov edi, dword [esp + 0x90]
mov edx, dword [edi + edx*4]
mov dword [esp + 0x34], edx
shr edx, 8
mov dword [esp + 0x50], edx
movzx ecx, byte [esp + 0x24]
shl edx, cl
and edx, esi
or ebx, edx
movzx ecx, byte [esp + 0x23]
mov esi, dword [esp + 0x50]
mov edx, esi
shl esi, cl
and esi, eax
movzx ecx, byte [esp + 0x22]
shr edx, cl
mov eax, dword [esp + 0x54]
and edx, eax
or esi, edx
or esi, ebp
mov eax, dword [esp + 0x34]
movzx ecx, byte [esp + 0x25]
add eax, ecx
mov ecx, dword [esp + 0x8c]
add ecx, 3
mov edx, dword [esp + 0x74]
add edx, 0xfffffffd
mov ebp, dword [esp + 0x9c]
mov dword [esp + 0x8c], ecx
movzx ebp, byte [esp + 0x2a]
mov edi, eax
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x74], edx
cmp edx, 3
jle 0x63a94e
xchg edi, eax
cmp al, 8
xchg edi, eax
jb 0x63a8ac
xchg ebp, eax
mov byte [esp + 0x1f], al
xchg ebp, eax
xchg ebp, eax
movzx eax, al
xchg ebp, eax
cmp ebp, 0x108
ja 0x63ac2a
mov dword [esp + 0x44], esi
lea esi, [ebp - 0x108]
xchg esi, ebx
neg ebx
xchg esi, ebx
mov dword [esp + 0x3c], esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ebp, esi
mov esi, dword [esp + 0x3c]
cmp esi, 7
jbe 0x63ac1e
mov dword [esp + 0x40], ebx
xchg edi, eax
mov byte [esp + 0x1e], al
xchg edi, eax
xchg edi, eax
shr al, 3
xchg edi, eax
xchg edi, eax
mov byte [esp + 0x1d], al
xchg edi, eax
shl edi, 3
xchg edi, eax
mov byte [esp + 0x2b], al
xchg edi, eax
and edi, 0x3f
xchg edi, eax
cmp al, 0x20
xchg edi, eax
sbb edx, edx
mov dword [esp + 0x70], edx
lea ecx, [edi - 0x20]
mov byte [esp + 0x2a], cl
cmp cl, 0x20
sbb esi, esi
neg ecx
mov byte [esp + 0x29], cl
cmp cl, 0x20
sbb edx, edx
mov dword [esp + 0x6c], edx
mov byte [eax + ebp + 0x34], bl
shr ebx, 8
mov edx, dword [esp + 0x44]
shl edx, 0x18
or edx, ebx
mov byte [eax + ebp + 0x35], dl
mov ebx, dword [esp + 0x44]
mov edx, ebx
shl ebx, 0x10
mov ecx, dword [esp + 0x40]
shr ecx, 0x10
or ecx, ebx
mov byte [eax + ebp + 0x36], cl
mov ebx, edx
shl edx, 8
mov ecx, dword [esp + 0x40]
shr ecx, 0x18
or ecx, edx
mov byte [eax + ebp + 0x37], cl
mov dword [eax + ebp + 0x38], ebx
movzx ecx, byte [esp + 0x2a]
mov edx, ebx
shr ebx, cl
and ebx, esi
mov ecx, edi
mov ebp, dword [esp + 0x40]
shr ebp, cl
movzx ecx, byte [esp + 0x29]
mov esi, edx
shl edx, cl
mov ecx, dword [esp + 0x70]
and ebp, ecx
mov eax, dword [esp + 0x6c]
and edx, eax
or edx, ebp
or ebx, edx
mov eax, ecx
mov ecx, edi
shr esi, cl
and esi, eax
movzx edi, byte [esp + 0x1e]
movzx eax, byte [esp + 0x2b]
sub edi, eax
movzx eax, byte [esp + 0x1f]
movzx ecx, byte [esp + 0x1d]
lea ebp, [ecx + eax]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x74]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x6c], esi
xchg edi, eax
mov byte [esp + 0x2b], al
xchg edi, eax
xchg ebp, eax
cmp al, 0xf6
xchg ebp, eax
jb 0x63a5b1
mov ebx, dword [eax + 0x24]
test ebx, ebx
jne 0x63a947
xchg ebp, eax
movzx ebx, al
xchg ebp, eax
cmp ebx, 0x108
ja 0x63ac12
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov ecx, dword [ecx + 0x10]
mov dword [esp], edx
lea edx, [eax + 0x34]
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 0x108
call ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x9c]
mov dword [edx + 0x24], ecx
mov ecx, dword [0x901e80]
test ecx, ecx
jne 0x63a91e
mov dword [edx + 0x28], eax
jmp 0x63a926
lea edi, [edx + 0x28]
call fcn.00456ac0
mov eax, edx
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
movzx edi, byte [esp + 0x2b]
xor ebp, ebp
jmp 0x63a5b1
add esp, 0x98
ret
mov dword [esp + 0x78], eax
xor eax, eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x78]
jmp 0x63aa01
mov dword [esp + 0x44], esi
xchg edi, eax
mov byte [esp + 0x1e], al
xchg edi, eax
mov byte [esp + 0x1f], bl
and edi, 0x3f
lea eax, [edi - 0x20]
mov byte [esp + 0x2b], al
cmp al, 0x20
sbb edx, edx
xchg edi, eax
cmp al, 0x20
xchg edi, eax
sbb ebx, ebx
neg eax
cmp al, 0x20
sbb esi, esi
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x4c]
inc esi
mov dword [esp + 0x4c], esi
mov esi, dword [esp + 0x48]
mov esi, dword [ecx + esi*4]
mov dword [esp + 0x30], esi
shr esi, 8
mov ecx, edi
mov edi, esi
shl esi, cl
and ebx, esi
or ebx, ebp
movzx ecx, byte [esp + 0x2b]
mov esi, edi
shl esi, cl
and esi, edx
mov ecx, eax
shr edi, cl
mov eax, dword [esp + 0x70]
and eax, edi
or esi, eax
mov eax, dword [esp + 0x44]
or esi, eax
movzx eax, byte [esp + 0x1e]
mov ecx, dword [esp + 0x30]
lea edi, [ecx + eax]
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x74]
mov ebp, dword [esp + 0x9c]
mov eax, ebp
mov ecx, dword [esp + 0x90]
movzx ebp, byte [esp + 0x1f]
mov dword [esp + 0x40], ebx
mov ebx, dword [esp + 0x4c]
cmp ebx, edx
jge 0x63ab63
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x8c]
movzx esi, byte [esi + ebx]
mov dword [esp + 0x48], esi
xchg edi, eax
cmp al, 0x30
xchg edi, eax
jb 0x63ab4d
xchg ebp, eax
movzx esi, al
xchg ebp, eax
cmp esi, 0x108
ja 0x63ac06
lea ebx, [esi - 0x108]
neg ebx
mov dword [esp + 0x38], ebx
neg ebx
sar ebx, 0x1f
and esi, ebx
mov ebx, dword [esp + 0x38]
cmp ebx, 7
jbe 0x63abfa
xchg ebp, eax
mov byte [esp + 0x21], al
xchg ebp, eax
xchg edi, eax
mov byte [esp + 0x20], al
xchg edi, eax
mov ebx, dword [esp + 0x40]
mov byte [eax + esi + 0x34], bl
shr ebx, 8
mov edi, dword [esp + 0x44]
shl edi, 0x18
or edi, ebx
xchg edi, ebx
mov byte [eax + esi + 0x35], bl
xchg edi, ebx
mov ebx, dword [esp + 0x40]
mov edi, ebx
shr ebx, 0x10
mov ebp, dword [esp + 0x44]
shl ebp, 0x10
or ebp, ebx
xchg ebp, ebx
mov byte [eax + esi + 0x36], bl
xchg ebp, ebx
mov ebx, dword [esp + 0x44]
mov ebp, ebx
shl ebx, 8
shr edi, 0x18
or ebx, edi
mov byte [eax + esi + 0x37], bl
mov dword [eax + esi + 0x38], ebp
movzx ebx, byte [esp + 0x21]
add ebx, 6
cmp bl, 0xf6
jb 0x63ab3b
mov esi, dword [eax + 0x24]
test esi, esi
jne 0x63ab5c
movzx ebx, bl
cmp ebx, 0x108
ja 0x63abee
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov ecx, dword [ecx + 0x10]
mov dword [esp], edx
lea edx, [eax + 0x34]
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 0x108
call ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x9c]
mov dword [edx + 0x24], ecx
mov ecx, dword [0x901e80]
test ecx, ecx
jne 0x63ab20
mov dword [edx + 0x28], eax
jmp 0x63ab28
lea edi, [edx + 0x28]
call fcn.00456ac0
mov eax, edx
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x74]
mov ebp, dword [esp + 0x44]
xor ebx, ebx
movzx esi, byte [esp + 0x20]
lea edi, [esi - 0x30]
shr ebp, 0x10
xor esi, esi
jmp 0x63a961
mov ebx, ebp
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x44]
jmp 0x63a961
add esp, 0x98
ret
mov edx, dword [esp + 0x40]
mov dword [eax + 8], edx
mov dword [eax + 0xc], esi
xchg edi, ebx
mov byte [eax + 0x10], bl
xchg edi, ebx
xchg ebp, ebx
mov byte [eax + 0x11], bl
xchg ebp, ebx
xchg edi, eax
cmp al, 0x30
xchg edi, eax
jb 0x63ab91
mov dword [esp], eax
call fcn.00637c90
mov eax, dword [esp + 0x9c]
movzx edx, byte [esp + 0xa0]
test dl, dl
jne 0x63aba9
movzx edx, byte [esp + 0xb0]
test dl, dl
je 0x63abdd
mov edx, dword [eax + 0x14]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
cmp ecx, 0x100
jbe 0x63abe4
mov ecx, dword [edx + 0x400]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00637bf0
mov eax, dword [esp + 0x9c]
mov dword [eax + 0x2c], 0
mov byte [eax + 0x12], 0
add esp, 0x98
ret
mov eax, 0x100
call fcn.00456b40
mov ecx, ebx
mov edx, 0x108
call fcn.00456b60
mov eax, 7
mov ecx, ebx
call fcn.00456b40
mov eax, esi
mov ecx, 0x108
call fcn.00456ba0
mov ecx, ebx
mov edx, 0x108
call fcn.00456b60
mov eax, 7
mov ecx, esi
call fcn.00456b40
mov eax, ebp
mov ecx, 0x108
call fcn.00456ba0
mov ecx, 0x100
call fcn.00456b80
mov eax, edx
mov ecx, 0x13
call fcn.00456b50
mov eax, ebp
mov ecx, edx
call fcn.00456b40
inc ecx
cmp ecx, 0x100
jge 0x63aca3
movzx esi, word [eax + ecx*2 + 0x13c]
test si, si
je 0x63ac55
mov edi, ebx
mov ebx, dword [ebp + 4]
mov ebp, dword [ebp]
cmp ecx, ebx
jae 0x63ace8
mov ebx, dword [ebp + ecx*4]
test ebx, ebx
je 0x63ac95
movzx ebp, si
movzx ebx, bl
imul ebx, ebp
add edx, ebx
mov ebx, edi
mov ebp, dword [esp + 0x88]
jmp 0x63ac55
mov ebx, edi
mov ebp, dword [esp + 0x88]
mov edx, 0x7fffffff
cmp ebx, edx
jge 0x63a437
mov ecx, dword [ebp + 4]
mov edx, dword [ebp]
cmp ecx, 0x100
jbe 0x63acde
mov ecx, dword [edx + 0x400]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00637bf0
mov eax, dword [esp + 0x9c]
mov dword [eax + 0x2c], 0
jmp 0x63a437
mov eax, 0x100
call fcn.00456b40
mov eax, ecx
mov ecx, ebx
call fcn.00456b40
mov eax, edx
mov ecx, esi
call fcn.00456b40
inc esi
cmp esi, 0x100
jge 0x63ad21
movzx edi, word [ecx + esi*2 + 0x13c]
cvtsi2sd xmm3, edi
subsd xmm3, xmm1
mulsd xmm3, xmm3
addsd xmm2, xmm3
ucomisd xmm2, xmm0
jbe 0x63acfa
ucomisd xmm0, xmm2
jbe 0x63a2ec
mov dword [esp], ecx
mov dword [esp + 4], ebp
movzx eax, byte [esp + 0xa0]
mov byte [esp + 8], al
call fcn.00638400
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xc], eax
call fcn.00637330
add esp, 0x98
ret
mov word [edx + eax*2 + 0x37e], 0
inc eax
cmp eax, 0x20
jge 0x63a231
jb 0x63ad7a
mov ecx, 0x20
call fcn.00456b40
mov ecx, 0x121
call fcn.00456b40
nop
call fcn.00455690
jmp fcn.0063a1d0