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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x138]
sub rsp, 0x1f8
mov r14, qword [0x1802ada30]
xor r9d, r9d
mov rbx, qword [0x180286e98]
movabs rcx, 0x8e38e38e38e38e39
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movss xmm10, dword [0x1801752b4]
movaps xmmword [rax - 0xa8], xmm11
movss xmm11, dword [0x180175238]
movaps xmmword [rax - 0xb8], xmm12
movss xmm12, dword [0x180175288]
movaps xmmword [rax - 0xc8], xmm13
movss xmm13, dword [0x180175220]
movaps xmmword [rax - 0xd8], xmm14
movss xmm14, dword [0x1801752ac]
movaps xmmword [rax - 0xe8], xmm15
xorps xmm15, xmm15
mov qword [rbp + 0x158], r9
nop dword [rax]
mov rdx, qword [r14]
lea r13, [r9 + r9*2]
xor esi, esi
mov dword [rbp + 0x150], 0
mov rax, qword [rdx + r13*8 + 8]
sub rax, qword [rdx + r13*8]
sar rax, 3
imul rax, rcx
test rax, rax
je 0x1800214ed
nop dword [rax]
mov rax, qword [rdx + r13*8]
lea rcx, [rsi + rsi*8]
lea rdi, [rax + rcx*8]
mov rax, qword [rbx + 0x3ea0]
mov r15, rdi
mov byte [rax + 0x98], 1
cmp qword [rdi + 0x18], 0xf
mov r8, qword [rbx + 0x3ea0]
jbe 0x18002082e
mov r15, qword [rdi]
movsxd rax, dword [r8 + 0xd0]
xor edx, edx
mov r8, qword [r8 + 0xd8]
mov rcx, r15
mov r8d, dword [r8 + rax*4 - 4]
call fcn.1800a2420
mov r12d, eax
cmp dword [rbx + 0x3ed4], eax
jne 0x18002086c
mov r8, r15
mov edx, 0xb
mov ecx, eax
call fcn.1800b7fb0
mov rbx, qword [0x180286e98]
mov rcx, qword [rbx + 0x3ea0]
movss xmm3, dword [rdi + 0x30]
movss xmm1, dword [rbx + 0x3820]
movaps xmm0, xmm3
movss dword [rbp - 0x40], xmm3
movss xmm2, dword [rcx + 0x18]
addss xmm2, dword [rdi + 0x20]
movss xmm4, dword [rcx + 0x1c]
lea rcx, [rbp - 0x40]
addss xmm4, dword [rdi + 0x24]
addss xmm0, xmm2
movss dword [rbp - 0x30], xmm2
movss xmm2, dword [rdi + 0x34]
movss dword [rbp - 0x2c], xmm4
addss xmm4, xmm2
movss dword [rbp - 0x3c], xmm2
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x24], xmm4
call fcn.1800b0bd0
xor r8d, r8d
lea rcx, [rbp - 0x30]
mov edx, r12d
xor r9d, r9d
call fcn.1800b0d30
test al, al
je 0x180021489
lea r9, [rbp + 0x140]
mov dword [rsp + 0x20], 0
lea r8, [rbp + 0x148]
mov edx, r12d
lea rcx, [rbp - 0x30]
call fcn.1800c4d60
mov rbx, qword [0x180286e98]
mov eax, dword [rbx + 0x3eec]
test eax, eax
je 0x180020924
cmp eax, dword [rbx + 0x3f6c]
sete r12b
jmp 0x180020927
xor r12b, r12b
mov rax, qword [rbx + 0x3ea0]
mov byte [rax + 0x98], 1
mov rax, qword [rbx + 0x3ea0]
mov ecx, dword [rdi + 0x38]
mov r8d, dword [rdi + 0x3c]
movss xmm0, dword [rax + 0x18]
movss xmm1, dword [rax + 0x1c]
mov rdx, qword [rax + 0x298]
addss xmm0, dword [rdi + 0x20]
addss xmm1, dword [rdi + 0x24]
test ecx, ecx
je 0x1800209b9
sub ecx, 1
je 0x1800209a1
sub ecx, 1
je 0x180020989
cmp ecx, 1
jne 0x1800209d6
unpcklps xmm0, xmm1
lea r9, [rdi + 0x30]
mov dword [rsp + 0x20], r8d
movq r8, xmm0
call fcn.180020180
jmp 0x1800209cf
unpcklps xmm0, xmm1
lea r9, [rdi + 0x30]
mov dword [rsp + 0x20], r8d
movq r8, xmm0
call fcn.18001fad0
jmp 0x1800209cf
unpcklps xmm0, xmm1
lea r9, [rdi + 0x30]
mov dword [rsp + 0x20], r8d
movq r8, xmm0
call fcn.18001ee70
jmp 0x1800209cf
unpcklps xmm0, xmm1
lea r9, [rdi + 0x30]
mov dword [rsp + 0x20], r8d
movq r8, xmm0
call fcn.18001f440
mov rbx, qword [0x180286e98]
test r12b, r12b
je 0x180020a1f
cmp byte [rbx + 0xe04], 0
je 0x180020a1f
movss xmm0, dword [rbx + 0x38]
mulss xmm0, xmm0
comiss xmm0, dword [rbx + 0x3790]
setbe al
test al, al
je 0x180020a1f
movss xmm0, dword [rdi + 0x20]
addss xmm0, dword [rbx + 0xf8]
movss xmm1, dword [rdi + 0x24]
movss dword [rdi + 0x20], xmm0
addss xmm1, dword [rbx + 0xfc]
movss dword [rdi + 0x24], xmm1
cmp byte [rbp + 0x140], 0
je 0x180021490
mov byte [r14 + 0x1c], 1
mov byte [r14 + 0x24], 1
mov rax, qword [rbx + 0x3ea0]
movss xmm3, dword [rbx + 0xdfc]
movss xmm2, dword [rax + 0x18]
comiss xmm3, xmm2
movss xmm1, dword [rax + 0x1c]
jb 0x180020f90
movss xmm4, dword [rbx + 0xe00]
movaps xmm0, xmm1
addss xmm0, dword [0x1801752d0]
comiss xmm4, xmm0
jb 0x180020d3a
movaps xmm0, xmm2
addss xmm0, xmm14
comiss xmm3, xmm0
ja 0x180020d3a
movaps xmm0, xmm1
addss xmm0, dword [0x1801752e4]
comiss xmm4, xmm0
ja 0x180020d3a
mov r9, qword [rbp + 0x158]
cmp r9, 6
jne 0x180021497
mov rax, qword [r14]
lea rdx, [rsi + rsi*8]
mov rcx, qword [rax + 0x90]
mov dword [rcx + rdx*8 + 0x3c], 5
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rbp - 0x20]
call fcn.1800087e0
movups xmm0, xmmword [rbx + 0x20]
mov eax, dword [rbx + 0x38]
lea rdx, [rbp - 0x20]
movss xmm1, dword [rbx + 0x34]
lea rcx, [rsp + 0x30]
mov dword [rbp + 0x18], eax
mov eax, dword [rbx + 0x3c]
movups xmmword [rbp], xmm0
mov dword [rbp + 0x1c], eax
movss xmm0, dword [rbx + 0x30]
mov eax, dword [rbx + 0x40]
movss dword [rbp + 0x10], xmm0
movss dword [rbp + 0x14], xmm1
mov dword [rbp + 0x20], eax
call fcn.1800087e0
mov eax, dword [rbp + 0x18]
lea r8, [rsp + 0x30]
movss xmm0, dword [rbp + 0x10]
lea rdx, [rbp - 0x38]
movss xmm1, dword [rbp + 0x14]
mov rcx, r14
movss xmm6, dword [rbp]
movss xmm7, dword [rbp + 4]
movss xmm8, dword [rbp + 8]
movss xmm9, dword [rbp + 0xc]
mov r15d, dword [rbp + 0x20]
mov dword [rsp + 0x68], eax
mov eax, dword [rbp + 0x1c]
mov dword [rsp + 0x6c], eax
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x54], xmm7
movss dword [rsp + 0x58], xmm8
movss dword [rsp + 0x5c], xmm9
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x64], xmm1
mov dword [rsp + 0x70], r15d
call fcn.1800225c0
mov rbx, qword [r14]
movsxd rax, dword [rbp - 0x34]
lea rdi, [rax + rax*2]
movsxd rax, dword [rbp - 0x38]
mov rdx, qword [rbx + rdi*8 + 8]
lea rcx, [rax + rax*8]
mov rax, qword [rbx + rdi*8]
lea r8, [rax + rcx*8]
lea rcx, [r8 + 0x48]
call fcn.18009c700
mov rcx, qword [rbx + rdi*8 + 8]
sub rcx, 0x48
call fcn.180008980
add qword [rbx + rdi*8 + 8], 0xffffffffffffffb8
lea rdx, [rbp - 0x20]
mov rdi, qword [r14]
lea rcx, [rbp + 0x28]
call fcn.1800087e0
mov ecx, dword [rbp + 0x18]
mov rbx, rax
xorps xmm0, xmm0
mov qword [rbp - 0x78], 0
lea rax, [rsp + 0x78]
mov qword [rbp - 0x70], 0xf
mov qword [rbp - 0x58], 0
mov qword [rbp - 0x4c], 4
mov dword [rbp - 0x50], ecx
movups xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x78], 0
movups xmmword [rbp - 0x68], xmm0
cmp rax, rbx
je 0x180020c34
cmp qword [rbx + 0x18], 0xf
mov rdx, rbx
jbe 0x180020c26
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
lea rcx, [rsp + 0x78]
call fcn.180008a00
mov rcx, rbx
movss dword [rbp - 0x68], xmm6
movss dword [rbp - 0x64], xmm7
movss dword [rbp - 0x60], xmm8
movss dword [rbp - 0x5c], xmm9
mov dword [rbp - 0x4c], 5
mov dword [rbp - 0x48], r15d
call fcn.180008980
mov rdx, qword [rdi + 0x80]
cmp rdx, qword [rdi + 0x88]
je 0x180020ce2
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], 0
mov qword [rdx + 0x18], 0
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rbp - 0x78]
movups xmmword [rdx + 0x10], xmm1
mov qword [rbp - 0x78], 0
movsd xmm0, qword [rbp - 0x68]
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
movsd qword [rdx + 0x20], xmm0
movsd xmm1, qword [rbp - 0x60]
movsd qword [rdx + 0x28], xmm1
movsd xmm0, qword [rbp - 0x58]
movsd qword [rdx + 0x30], xmm0
mov eax, dword [rbp - 0x50]
mov dword [rdx + 0x38], eax
mov eax, dword [rbp - 0x4c]
mov dword [rdx + 0x3c], eax
mov eax, dword [rbp - 0x48]
mov dword [rdx + 0x40], eax
add qword [rdi + 0x80], 0x48
jmp 0x180020cf0
lea r8, [rsp + 0x78]
lea rcx, [rdi + 0x78]
call fcn.18009e110
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x180020d2c
mov rcx, qword [rsp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180020d27
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800215fe
call fcn.1800e19f8
lea rcx, [rbp - 0x20]
call fcn.180008980
jmp 0x180021489
movaps xmm0, xmm1
addss xmm0, xmm11
comiss xmm4, xmm0
jb 0x180020f90
addss xmm2, xmm13
comiss xmm3, xmm2
ja 0x180020f90
addss xmm1, xmm10
comiss xmm4, xmm1
ja 0x180020f90
mov rax, qword [r14]
mov r15, qword [rax + r13*8]
lea rax, [rsi + rsi*8]
mov r12, qword [r15 + rax*8 + 0x18]
lea rcx, [r15 + rax*8]
mov rdi, qword [rcx + 0x10]
cmp r12, 0xf
jbe 0x180020d88
mov rcx, qword [rcx]
cmp rdi, 3
jne 0x180020da5
mov r8, rdi
lea rdx, [0x180171dbc]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180020f90
mov r9, qword [rbp + 0x158]
cmp r9, 6
jne 0x180021497
lea rax, [rsi + rsi*8]
lea rcx, [r15 + rax*8]
cmp r12, 0xf
jbe 0x180020dc7
mov rcx, qword [rcx]
cmp rdi, 6
jne 0x180020de0
mov r8, rdi
lea rdx, str.Health
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180020e12
lea rax, [rsi + rsi*8]
lea rcx, [r15 + rax*8]
cmp r12, 0xf
jbe 0x180020df1
mov rcx, qword [rcx]
cmp rdi, 5
jne 0x180020f5c
mov r8, rdi
lea rdx, str.Armor
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x180020f5c
lea rax, [rsi + rsi*8]
lea rcx, [r15 + rax*8]
cmp r12, 0xf
jbe 0x180020e23
mov rcx, qword [rcx]
cmp rdi, 6
jne 0x180020eb5
mov r8, rdi
lea rdx, str.Health
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x180020eb5
lea rax, [rsi + rsi*8]
mov dword [r15 + rax*8 + 0x3c], 0
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
xor r8d, r8d
movups xmm0, xmmword [rbx + 0x20]
mov eax, dword [rbx + 0x38]
lea rdx, [rsp + 0x30]
movss xmm1, dword [rbx + 0x34]
mov rcx, r14
mov dword [rsp + 0x68], eax
mov eax, dword [rbx + 0x3c]
movups xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x6c], eax
movss xmm0, dword [rbx + 0x30]
mov eax, dword [rbx + 0x40]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x64], xmm1
mov dword [rsp + 0x70], eax
call fcn.1800218a0
jmp 0x180021489
lea rax, [rsi + rsi*8]
lea rcx, [r15 + rax*8]
cmp r12, 0xf
jbe 0x180020ec6
mov rcx, qword [rcx]
cmp rdi, 5
jne 0x180021490
mov r8, rdi
lea rdx, str.Armor
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x180021490
lea rax, [rsi + rsi*8]
mov dword [r15 + rax*8 + 0x3c], 0
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
movups xmm0, xmmword [rbx + 0x20]
mov eax, dword [rbx + 0x38]
lea rdx, [rsp + 0x30]
movss xmm1, dword [rbx + 0x34]
xor r8d, r8d
mov dword [rsp + 0x68], eax
mov rcx, r14
mov eax, dword [rbx + 0x3c]
movups xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x6c], eax
movss xmm0, dword [rbx + 0x30]
mov eax, dword [rbx + 0x40]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x64], xmm1
mov dword [rsp + 0x70], eax
call fcn.1800218a0
jmp 0x180021489
lea rax, [rsi + rsi*8]
mov dword [r15 + rax*8 + 0x3c], 0
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
xor r8d, r8d
jmp 0x180021448
mov rax, qword [rbx + 0x3ea0]
movss xmm4, dword [rbx + 0xdfc]
movss xmm2, dword [rax + 0x18]
movss xmm1, dword [rax + 0x1c]
movaps xmm0, xmm2
addss xmm0, xmm12
comiss xmm4, xmm0
jb 0x180021197
movss xmm3, dword [rbx + 0xe00]
movaps xmm0, xmm1
addss xmm0, xmm11
comiss xmm3, xmm0
jb 0x180021197
addss xmm2, xmm14
comiss xmm4, xmm2
ja 0x180021197
addss xmm1, xmm10
comiss xmm3, xmm1
ja 0x180021197
mov rax, qword [r14]
mov r15, qword [rax + r13*8]
lea rax, [rsi + rsi*8]
mov r12, qword [r15 + rax*8 + 0x18]
lea rcx, [r15 + rax*8]
mov rdi, qword [rcx + 0x10]
cmp r12, 0xf
jbe 0x180021010
mov rcx, qword [rcx]
cmp rdi, 3
jne 0x18002102d
mov r8, rdi
lea rdx, [0x180171dbc]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180021197
mov r9, qword [rbp + 0x158]
cmp r9, 6
jne 0x180021497
lea rax, [rsi + rsi*8]
lea rcx, [r15 + rax*8]
cmp r12, 0xf
jbe 0x18002104f
mov rcx, qword [rcx]
cmp rdi, 6
jne 0x180021068
mov r8, rdi
lea rdx, str.Health
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18002109a
lea rax, [rsi + rsi*8]
lea rcx, [r15 + rax*8]
cmp r12, 0xf
jbe 0x180021079
mov rcx, qword [rcx]
cmp rdi, 5
jne 0x180021160
mov r8, rdi
lea rdx, str.Armor
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x180021160
lea rax, [rsi + rsi*8]
lea rcx, [r15 + rax*8]
cmp r12, 0xf
jbe 0x1800210ab
mov rcx, qword [rcx]
cmp rdi, 6
jne 0x1800210f9
mov r8, rdi
lea rdx, str.Health
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800210f9
lea rax, [rsi + rsi*8]
mov dword [r15 + rax*8 + 0x3c], 1
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
lea r8d, [rdi - 5]
jmp 0x180020e6f
lea rax, [rsi + rsi*8]
lea rcx, [r15 + rax*8]
cmp r12, 0xf
jbe 0x18002110a
mov rcx, qword [rcx]
cmp rdi, 5
jne 0x180021490
mov r8, rdi
lea rdx, str.Armor
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x180021490
lea rax, [rsi + rsi*8]
mov dword [r15 + rax*8 + 0x3c], 1
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
lea r8d, [rdi - 4]
jmp 0x180020e6f
lea rax, [rsi + rsi*8]
mov dword [r15 + rax*8 + 0x3c], 1
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
mov r8d, 1
jmp 0x180021448
mov rax, qword [rbx + 0x3ea0]
movss xmm4, dword [rbx + 0xdfc]
movss xmm2, dword [rax + 0x18]
movss xmm1, dword [rax + 0x1c]
movaps xmm0, xmm2
addss xmm0, xmm13
comiss xmm4, xmm0
jb 0x180021270
movss xmm3, dword [rbx + 0xe00]
movaps xmm0, xmm1
addss xmm0, dword [0x1801751a0]
comiss xmm3, xmm0
jb 0x180021270
addss xmm2, xmm12
comiss xmm4, xmm2
ja 0x180021270
addss xmm1, xmm11
comiss xmm3, xmm1
ja 0x180021270
mov rax, qword [r14]
mov rdi, qword [rax + r13*8]
lea rax, [rsi + rsi*8]
cmp qword [rdi + rax*8 + 0x18], 0xf
lea rcx, [rdi + rax*8]
mov r8, qword [rcx + 0x10]
jbe 0x180021213
mov rcx, qword [rcx]
cmp r8, 3
jne 0x180021229
lea rdx, [0x180171dbc]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180021270
mov r9, qword [rbp + 0x158]
cmp r9, 6
jne 0x180021497
lea rax, [rsi + rsi*8]
mov dword [rdi + rax*8 + 0x3c], 2
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
mov r8d, 2
jmp 0x180021448
mov rax, qword [rbx + 0x3ea0]
movss xmm4, dword [rbx + 0xdfc]
movss xmm2, dword [rax + 0x18]
movss xmm1, dword [rax + 0x1c]
movaps xmm0, xmm2
addss xmm0, xmm13
comiss xmm4, xmm0
jb 0x180021349
movss xmm3, dword [rbx + 0xe00]
movaps xmm0, xmm1
addss xmm0, xmm10
comiss xmm3, xmm0
jb 0x180021349
addss xmm2, xmm12
comiss xmm4, xmm2
ja 0x180021349
addss xmm1, dword [0x1801752cc]
comiss xmm3, xmm1
ja 0x180021349
mov rax, qword [r14]
mov rdi, qword [rax + r13*8]
lea rax, [rsi + rsi*8]
cmp qword [rdi + rax*8 + 0x18], 0xf
lea rcx, [rdi + rax*8]
mov r8, qword [rcx + 0x10]
jbe 0x1800212ec
mov rcx, qword [rcx]
cmp r8, 3
jne 0x180021302
lea rdx, [0x180171dbc]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180021349
mov r9, qword [rbp + 0x158]
cmp r9, 6
jne 0x180021497
lea rax, [rsi + rsi*8]
mov dword [rdi + rax*8 + 0x3c], 3
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
mov r8d, 3
jmp 0x180021448
mov rax, qword [rbx + 0x3ea0]
movss xmm4, dword [rbx + 0xdfc]
movss xmm2, dword [rax + 0x18]
movss xmm1, dword [rax + 0x1c]
movaps xmm0, xmm2
addss xmm0, xmm13
comiss xmm4, xmm0
jb 0x18002141c
movss xmm3, dword [rbx + 0xe00]
movaps xmm0, xmm1
addss xmm0, xmm11
comiss xmm3, xmm0
jb 0x18002141c
addss xmm2, xmm12
comiss xmm4, xmm2
ja 0x18002141c
addss xmm1, xmm10
comiss xmm3, xmm1
ja 0x18002141c
mov rax, qword [r14]
mov rdi, qword [rax + r13*8]
lea rax, [rsi + rsi*8]
cmp qword [rdi + rax*8 + 0x18], 0xf
lea rcx, [rdi + rax*8]
mov r8, qword [rcx + 0x10]
jbe 0x1800213c2
mov rcx, qword [rcx]
cmp r8, 3
jne 0x18002141c
lea rdx, [0x180171dbc]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18002141c
mov r9, qword [rbp + 0x158]
cmp r9, 6
jne 0x180021497
lea rax, [rsi + rsi*8]
mov dword [rdi + rax*8 + 0x3c], 4
lea rdx, [rsi + rsi*8]
mov rax, qword [r14]
mov rcx, qword [rax + 0x90]
lea rbx, [rcx + rdx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
mov r8d, 4
jmp 0x180021448
comiss xmm15, dword [rbx + 0x3768]
jae 0x180021490
mov rax, qword [r14]
lea rcx, [rsi + rsi*8]
mov rax, qword [rax + r13*8]
lea rbx, [rax + rcx*8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1800087e0
mov r8d, 6
movups xmm0, xmmword [rbx + 0x20]
mov eax, dword [rbx + 0x38]
lea rdx, [rsp + 0x30]
movss xmm1, dword [rbx + 0x34]
mov rcx, r14
mov dword [rsp + 0x68], eax
mov eax, dword [rbx + 0x3c]
movups xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x6c], eax
movss xmm0, dword [rbx + 0x30]
mov eax, dword [rbx + 0x40]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x64], xmm1
mov dword [rsp + 0x70], eax
call fcn.180021610
mov rbx, qword [0x180286e98]
mov r9, qword [rbp + 0x158]
cmp byte [rbx + 0xe04], 0
jne 0x1800214a5
mov byte [r14 + 0x1c], 0
mov rdx, qword [r14]
movabs rax, 0x8e38e38e38e38e39
mov r10d, dword [rbp + 0x150]
inc rsi
inc r10d
mov dword [rbp + 0x150], r10d
mov rcx, qword [rdx + r13*8 + 8]
sub rcx, qword [rdx + r13*8]
sar rcx, 3
imul rcx, rax
movsxd rax, r10d
cmp rax, rcx
jb 0x180020800
movabs rcx, 0x8e38e38e38e38e39
inc r9
mov qword [rbp + 0x158], r9
cmp r9, 7
jl 0x1800207d0
cmp byte [r14 + 0x1c], 0
jne 0x1800215ab
cmp byte [r14 + 0x24], 1
jne 0x180021520
mov dword [r14 + 0x20], 0
mov byte [r14 + 0x24], 0
movss xmm1, dword [r14 + 0x20]
lea rdi, [r14 + 0x20]
movss xmm2, dword [0x180174db4]
comiss xmm1, xmm2
jae 0x180021552
movss xmm0, dword [0x180174c38]
divss xmm0, dword [rbx + 0xe0]
addss xmm0, xmm1
movss dword [rdi], xmm0
movaps xmm1, xmm0
comiss xmm1, xmm15
lea rdx, [rbp + 0x140]
mov dword [rbp + 0x148], 0x3f800000
lea rax, [rbp + 0x148]
mov dword [rbp + 0x140], 0
mov rcx, r14
cmovae rdx, rdi
comiss xmm1, xmm2
cmovbe rax, rdx
movss xmm1, dword [rax]
movss dword [rdi], xmm1
call fcn.180021c30
movss xmm1, dword [rdi]
mov rcx, r14
call fcn.180022010
movss xmm1, dword [rdi]
mov rcx, r14
call fcn.1800223d0
lea r11, [rsp + 0x1f8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3