Function at 0x1400384f0
Capabilities:
Hash data with crc32
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movaps xmmword [rsp + 0xb0], xmm11
movaps xmmword [rsp + 0xa0], xmm10
movaps xmmword [rsp + 0x90], xmm9
movaps xmmword [rsp + 0x80], xmm8
movaps xmmword [rsp + 0x70], xmm7
movaps xmmword [rsp + 0x60], xmm6
mov rax, qword [0x140203ac0]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov r14, qword [0x140205610]
mov eax, dword [r14 + 0x5c50]
test eax, eax
jle 0x1400385f3
lea rsi, [rax + 1]
jmp 0x140038569
dec rsi
cmp rsi, 1
jbe 0x1400385b1
lea r8d, [rsi - 2]
mov rdx, qword [r14 + 0x5c58]
mov r9, r8
shl r9, 5
cmp dword [rdx + r9 + 4], 7
jne 0x140038560
lea rcx, [rdx + r9]
add rdx, r9
add rdx, 0x20
cdqe
not r8
add r8, rax
shl r8, 5
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [r14 + 0x5c50]
dec eax
mov dword [r14 + 0x5c50], eax
jmp 0x140038560
test eax, eax
jle 0x1400385f3
xor esi, esi
xor edi, edi
jmp 0x1400385cf
inc rdi
movsxd rcx, eax
add rsi, 0x20
cmp rdi, rcx
jge 0x1400385f3
mov r8, qword [r14 + 0x5c58]
cmp dword [r8 + rsi + 4], 0
jne 0x1400385c0
lea rdx, [r8 + rsi]
mov rcx, r14
call qword [r8 + rsi + 0x10]
mov eax, dword [r14 + 0x5c50]
jmp 0x1400385c0
mov rsi, qword [0x140205610]
cmp byte [rsi + 0x7e], 0
je 0x14003860a
test byte [rsi + 0xc], 2
jne 0x14003860a
mov byte [rsi + 0x7e], 0
cmp byte [rsi + 0x5c09], 0
jne 0x14003867c
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x140038675
mov qword [rsp + 0x50], 0
lea rdx, [0x140110de3]
lea r8, [rsp + 0x50]
xor r9d, r9d
call fcn.14002e6d0
test rax, rax
je 0x140038675
mov rdi, rax
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x140038653
mov rcx, rdi
call fcn.14004c3f0
mov rax, qword [0x140205610]
test rax, rax
je 0x140038665
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
mov rcx, rdi
call qword [0x1401e7350]
mov byte [rsi + 0x5c09], 1
movss xmm0, dword [rsi + 0x5c0c]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
jae 0x14003871b
subss xmm0, dword [rsi + 0x18]
movss dword [rsi + 0x5c0c], xmm0
ucomiss xmm0, xmm1
ja 0x14003871b
mov rbx, qword [rsi + 0x20]
test rbx, rbx
je 0x14003870a
mov rax, qword [0x140205610]
mov dword [rax + 0x5c0c], 0
mov qword [rsp + 0x50], 0
lea rcx, [rsp + 0x50]
call fcn.14004c7c0
mov rdi, rax
lea rdx, [0x140110de6]
mov rcx, rbx
call fcn.14002e4d0
test rax, rax
je 0x140038711
mov rbx, rax
mov r8, qword [rsp + 0x50]
mov edx, 1
mov rcx, rdi
mov r9, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x140038711
mov byte [rsi + 0xdc], 1
mov dword [rsi + 0x5c0c], 0
movss xmm0, dword [r14 + 0x18]
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
addsd xmm1, qword [r14 + 0x3e48]
movsd qword [r14 + 0x3e48], xmm1
mov byte [r14 + 0x3e5c], 1
inc dword [r14 + 0x3e50]
mov word [r14 + 0x5bc2], 0
mov dword [r14 + 0x3ee8], 0
cmp dword [r14 + 0x5bdc], 0
jns 0x1400387f2
mov rax, qword [0x140205610]
test rax, rax
je 0x14003877e
inc dword [rax + 0xf4]
mov rdx, qword [0x140205620]
xor ecx, ecx
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [r14 + 0x5be0]
test rdx, rdx
je 0x1400387da
movsxd r8, dword [r14 + 0x5bd8]
shl r8, 2
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r14 + 0x5be0]
test rcx, rcx
je 0x1400387cd
mov rax, qword [0x140205610]
test rax, rax
je 0x1400387cd
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [r14 + 0x5be0], rdi
mov dword [r14 + 0x5bdc], 0
movss xmm0, dword [r14 + 0x18]
mov dword [r14 + 0x5bd8], 0
movsxd rax, dword [r14 + 0x5e48]
movaps xmm1, xmm0
subss xmm1, dword [r14 + rax*4 + 0x5d58]
addss xmm1, dword [r14 + 0x5e50]
movss dword [r14 + 0x5e50], xmm1
movss dword [r14 + rax*4 + 0x5d58], xmm0
mov eax, dword [r14 + 0x5e48]
mov ecx, dword [r14 + 0x5e4c]
mov edx, eax
inc edx
movsxd rdx, edx
imul rdx, rdx, 0xffffffff88888889
shr rdx, 0x20
add edx, eax
inc edx
mov r8d, edx
shr r8d, 0x1f
sar edx, 5
add edx, r8d
imul edx, edx, 0x3c
neg edx
add eax, edx
inc eax
mov dword [r14 + 0x5e48], eax
cmp ecx, 0x3b
mov eax, 0x3b
cmovl eax, ecx
inc eax
mov dword [r14 + 0x5e4c], eax
movss xmm1, dword [r14 + 0x5e50]
xorps xmm0, xmm0
ucomiss xmm0, xmm1
jae 0x1400388a0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
divss xmm0, xmm1
jmp 0x1400388a8
movss xmm0, dword [0x14010f300]
movss dword [r14 + 0xe0], xmm0
cmp dword [r14 + 0x3e84], 0
jns 0x140038946
mov rax, qword [0x140205610]
test rax, rax
je 0x1400388d1
inc dword [rax + 0xf4]
mov rdx, qword [0x140205620]
xor ecx, ecx
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [r14 + 0x3e88]
test rdx, rdx
je 0x140038934
movsxd rax, dword [r14 + 0x3e80]
lea rcx, [rax + rax*8]
lea r8, [rcx + rcx*2]
add r8, rax
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r14 + 0x3e88]
test rcx, rcx
je 0x140038927
mov rax, qword [0x140205610]
test rax, rax
je 0x140038927
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [r14 + 0x3e88], rdi
mov dword [r14 + 0x3e84], 0
mov dword [r14 + 0x3e80], 0
movzx ecx, byte [r14 + 0x7a]
call fcn.14003d480
mov rax, qword [0x140205610]
mov rcx, qword [rax + 0x48d0]
mov rcx, qword [rcx]
mov qword [rcx], 5
mov dword [rcx + 8], 0
mov rdx, qword [rax + 0x10]
mov qword [rcx + 0xc], rdx
cmp dword [rax + 0x48c8], 0
jle 0x1400389e1
xor ecx, ecx
xorps xmm0, xmm0
mov rdx, qword [rax + 0x48d0]
mov rdx, qword [rdx + rcx*8]
movups xmm1, xmmword [rdx + 0xa8]
movups xmmword [rdx + 0x98], xmm1
movups xmmword [rdx + 0xa8], xmm0
movsd xmm2, qword [rdx + 4]
movsd xmm3, qword [rdx + 0xc]
addps xmm2, xmm1
pshufd xmm4, xmm1, 0xee
subps xmm4, xmm1
addps xmm4, xmm3
maxps xmm4, xmm0
movlhps xmm2, xmm4
movups xmmword [rdx + 0x14], xmm2
inc rcx
movsxd rdx, dword [rax + 0x48c8]
cmp rcx, rdx
jl 0x140038990
mov rax, qword [r14 + 0x58]
mov byte [rax + 0x18], 1
mov rax, qword [0x140205610]
mov rcx, qword [rax + 0x68]
test rcx, rcx
jne 0x140038a04
mov rcx, qword [rax + 0x58]
mov rcx, qword [rcx + 0x60]
mov rcx, qword [rcx]
mov qword [rax + 0x3c18], rcx
movss xmm0, dword [rcx + 0x14]
mulss xmm0, dword [rax + 0x60]
mulss xmm0, dword [rcx + 0x64]
maxss xmm0, dword [0x14010be30]
movss dword [rax + 0x3c24], xmm0
mov rdx, qword [rax + 0x3ef8]
test rdx, rdx
je 0x140038a60
mov r8, qword [rdx]
movss xmm0, dword [rdx + 0x290]
mulss xmm0, dword [r8 + 0x3c24]
mov rdx, qword [rdx + 0x368]
test rdx, rdx
je 0x140038a63
mulss xmm0, dword [rdx + 0x290]
jmp 0x140038a63
xorps xmm0, xmm0
movss dword [rax + 0x3c20], xmm0
mov rdx, qword [rcx + 0x40]
mov r8, qword [rdx + 0x50]
mov qword [rax + 0x3c28], r8
lea r8, [rdx + 0x88]
mov qword [rax + 0x3e30], r8
mov qword [rax + 0x3c30], rcx
movss dword [rax + 0x3c38], xmm0
lea rcx, [rdx + 0x49c]
mov qword [rax + 0x3e38], rcx
add rdx, 0x4a4
mov qword [rax + 0x3e40], rdx
mov eax, dword [r14 + 0x48c8]
test eax, eax
jle 0x140038b1b
mov rcx, qword [r14 + 0x48d0]
movaps xmm1, xmmword [0x14010f430]
xor edx, edx
movaps xmm0, xmm1
nop word cs:[rax + rax]
mov r8, qword [rcx + rdx*8]
movsd xmm2, qword [r8 + 4]
movsd xmm3, qword [r8 + 0xc]
addps xmm3, xmm2
movlhps xmm2, xmm3
movaps xmm3, xmm2
cmpltps xmm3, xmm1
cmpltps xmm0, xmm2
movsd xmm0, xmm3
andps xmm2, xmm0
andnps xmm0, xmm1
orps xmm0, xmm2
inc rdx
movaps xmm1, xmm0
cmp rax, rdx
jne 0x140038ae0
jmp 0x140038b22
movaps xmm0, xmmword [0x14010f430]
lea rcx, [r14 + 0x3c28]
movups xmmword [r14 + 0x3c44], xmm0
movss xmm0, dword [r14 + 0x38a4]
movss xmm1, dword [r14 + 0x38a8]
movss dword [r14 + 0x3c3c], xmm0
call fcn.14004f590
movzx eax, byte [r14 + 0x38a0]
mov dword [r14 + 0x3c54], eax
cmp byte [r14 + 0x38a1], 0
je 0x140038b84
mov rcx, qword [r14 + 0x3c18]
mov rcx, qword [rcx + 0x40]
test byte [rcx], 4
jne 0x140038b84
or eax, 2
mov dword [r14 + 0x3c54], eax
cmp byte [r14 + 0x38a2], 0
je 0x140038b98
or eax, 4
mov dword [r14 + 0x3c54], eax
test byte [r14 + 0xc], 8
je 0x140038ba9
or eax, 8
mov dword [r14 + 0x3c54], eax
cmp dword [r14 + 0x48c8], 0
jle 0x140038be6
xor eax, eax
xorps xmm0, xmm0
nop dword [rax + rax]
mov rcx, qword [r14 + 0x48d0]
mov rcx, qword [rcx + rax*8]
movups xmmword [rcx + 0x68], xmm0
movups xmmword [rcx + 0x58], xmm0
movups xmmword [rcx + 0x48], xmm0
inc rax
movsxd rcx, dword [r14 + 0x48c8]
cmp rax, rcx
jl 0x140038bc0
cmp byte [r14 + 0x4a9c], 0
je 0x140038c24
mov eax, dword [r14 + 0x4abc]
cmp eax, dword [r14 + 0x3f58]
jne 0x140038c24
mov rcx, qword [0x140205610]
cmp dword [rcx + 0x3f58], eax
jne 0x140038c15
mov dword [rcx + 0x3f5c], eax
cmp dword [rcx + 0x3f88], eax
jne 0x140038c24
mov byte [rcx + 0x3f8c], 1
cmp dword [r14 + 0x3f48], 0
je 0x140038c4f
mov eax, dword [r14 + 0x3f44]
test eax, eax
je 0x140038c9e
cmp dword [r14 + 0x3f58], eax
jne 0x140038c65
mov dword [r14 + 0x3f54], 0
jmp 0x140038c65
mov eax, dword [r14 + 0x3f44]
xorps xmm0, xmm0
movlps qword [r14 + 0x3f50], xmm0
test eax, eax
je 0x140038c9e
movss xmm0, dword [r14 + 0x18]
movss xmm1, dword [r14 + 0x3f50]
addss xmm1, xmm0
movss dword [r14 + 0x3f50], xmm1
cmp dword [r14 + 0x3f58], eax
je 0x140038ca0
addss xmm0, dword [r14 + 0x3f54]
movss dword [r14 + 0x3f54], xmm0
jmp 0x140038ca0
xor eax, eax
mov dword [r14 + 0x3f48], eax
mov dword [r14 + 0x3f44], 0
mov word [r14 + 0x3f4c], 0
mov eax, dword [r14 + 0x3f58]
test eax, eax
je 0x140038d21
cmp dword [r14 + 0x3f5c], eax
je 0x140038d05
cmp dword [r14 + 0x3f88], eax
jne 0x140038d05
test byte [r14 + 0x5ce4], 1
je 0x140038cef
lea rcx, str.NewFrame__:_ClearActiveID___because_it_isnt_marked_alive_anymore__n
call fcn.14002fb80
xor esi, esi
xor ecx, ecx
xor edx, edx
call fcn.140036a80
mov eax, dword [r14 + 0x3f58]
test eax, eax
je 0x140038d23
movss xmm0, dword [r14 + 0x3f60]
addss xmm0, dword [r14 + 0x18]
movss dword [r14 + 0x3f60], xmm0
mov esi, eax
jmp 0x140038d23
xor esi, esi
movss xmm0, dword [r14 + 0x3f9c]
addss xmm0, dword [r14 + 0x18]
movss dword [r14 + 0x3f9c], xmm0
mov dword [r14 + 0x3f88], esi
mov rax, qword [r14 + 0x3f78]
mov qword [r14 + 0x3f90], rax
movzx eax, byte [r14 + 0x3f68]
mov byte [r14 + 0x3f8d], al
mov dword [r14 + 0x3f5c], 0
mov byte [r14 + 0x3f69], 0
mov byte [r14 + 0x3f8c], 0
mov byte [r14 + 0x3f64], 0
mov eax, dword [r14 + 0x5b48]
test eax, eax
je 0x140038d9c
cmp esi, eax
je 0x140038d9c
mov dword [r14 + 0x5b48], 0
test esi, esi
je 0x140038dc8
test byte [r14 + 0x4770], 2
je 0x140038de6
mov rax, qword [0x140205610]
mov dword [rax + 0x404c], esi
mov dword [rax + 0x4048], esi
mov word [rax + 0x4050], 0
jmp 0x140038de6
mov dword [r14 + 0x4768], 0
mov byte [r14 + 0x476c], 0
mov dword [r14 + 0x4770], 0
mov eax, dword [r14 + 0x4c10]
mov dword [r14 + 0x4c14], eax
test eax, eax
je 0x140038e28
movss xmm0, dword [r14 + 0x4c18]
addss xmm0, dword [r14 + 0x18]
movss dword [r14 + 0x4c18], xmm0
mov dword [r14 + 0x4c1c], 0
mov dword [r14 + 0x4c10], 0
jmp 0x140038e6d
xorps xmm0, xmm0
ucomiss xmm0, dword [r14 + 0x4c18]
jae 0x140038e6d
movss xmm0, dword [r14 + 0x18]
movss xmm1, dword [r14 + 0x4c1c]
addss xmm1, xmm0
movss dword [r14 + 0x4c1c], xmm1
addss xmm0, xmm0
maxss xmm0, dword [0x14010f440]
ucomiss xmm1, xmm0
jb 0x140038e6d
xorps xmm0, xmm0
movlps qword [r14 + 0x4c18], xmm0
mov eax, dword [r14 + 0x4b0c]
mov dword [r14 + 0x4b10], eax
mov qword [r14 + 0x4b08], 0x7f7fffff
mov word [r14 + 0x4a9d], 0
mov dword [r14 + 0x4b18], 0
mov rbx, qword [0x140205610]
cmp byte [rbx + 0x37ba], 0
je 0x140038fb8
xor eax, eax
jmp 0x140038ecc
add rax, 2
cmp rax, 0x8c
je 0x140038f04
movsxd rcx, dword [rbx + rax*4 + 0x900]
cmp rcx, 0xffffffffffffffff
je 0x140038ee7
lea edx, [rax + 0x200]
mov dword [rbx + rcx*4 + 0x100], edx
movsxd rcx, dword [rbx + rax*4 + 0x904]
cmp rcx, 0xffffffffffffffff
je 0x140038ec0
lea edx, [rax + 0x201]
mov dword [rbx + rcx*4 + 0x100], edx
jmp 0x140038ec0
xor eax, eax
jmp 0x140038f22
mov byte [rbx + 0x37ba], 1
inc rax
cmp rax, 0x200
je 0x140038f7d
movzx ecx, byte [rbx + rax + 0xb30]
test cl, cl
jne 0x140038f37
cmp byte [rbx + 0x37ba], 1
jne 0x140038f70
mov edx, dword [rbx + rax*4 + 0x100]
cmp edx, 0xffffffff
mov r8d, eax
cmovne r8d, edx
movsxd rdx, r8d
mov r9, rdx
shl r9, 4
mov byte [rbx + r9 + 0xe2c], cl
cmp rax, r8
je 0x140038f10
movzx ecx, byte [rbx + rax + 0xb30]
mov byte [rbx + rdx + 0xb30], cl
jmp 0x140038f10
inc rax
cmp rax, 0x200
jne 0x140038f22
jmp 0x140038fb8
movzx eax, byte [rbx + 0xe24]
mov rcx, qword [0x140205610]
mov byte [rcx + 0x36ac], al
movzx eax, byte [rbx + 0xe25]
mov byte [rcx + 0x36bc], al
movzx eax, byte [rbx + 0xe26]
mov byte [rcx + 0x36cc], al
movzx eax, byte [rbx + 0xe27]
mov byte [rcx + 0x36dc], al
test byte [rbx + 8], 2
je 0x140039188
cmp byte [rbx + 0x37bb], 0
je 0x140039188
mov eax, dword [rbx + 0xc]
and eax, 1
je 0x140039188
movss xmm1, dword [rbx + 0xdbc]
xorps xmm0, xmm0
ucomiss xmm0, xmm1
movss xmm2, dword [rbx + 0xdc0]
setb byte [rbx + 0x350c]
ucomiss xmm0, xmm2
movss dword [rbx + 0x3518], xmm1
setb byte [rbx + 0x34ec]
movss dword [rbx + 0x34f8], xmm2
movss xmm1, dword [rbx + 0xdc8]
ucomiss xmm0, xmm1
setb byte [rbx + 0x34dc]
movss dword [rbx + 0x34e8], xmm1
movss xmm1, dword [rbx + 0xdc4]
ucomiss xmm0, xmm1
setb byte [rbx + 0x34fc]
movss dword [rbx + 0x3508], xmm1
movss xmm1, dword [rbx + 0xdcc]
ucomiss xmm0, xmm1
setb byte [rbx + 0x351c]
movss dword [rbx + 0x3528], xmm1
movss xmm1, dword [rbx + 0xdd0]
ucomiss xmm0, xmm1
setb byte [rbx + 0x352c]
movss dword [rbx + 0x3538], xmm1
movss xmm1, dword [rbx + 0xdd4]
ucomiss xmm0, xmm1
setb byte [rbx + 0x353c]
movss dword [rbx + 0x3548], xmm1
movss xmm2, dword [rbx + 0xdd8]
ucomiss xmm0, xmm2
movss xmm1, dword [rbx + 0xddc]
setb byte [rbx + 0x354c]
movss dword [rbx + 0x3558], xmm2
movss xmm2, dword [rbx + 0xdec]
movss xmm3, dword [rbx + 0xdf4]
xorps xmm4, xmm4
cmpltps xmm4, xmm3
xorps xmm5, xmm5
cmpltps xmm5, xmm2
orps xmm5, xmm4
movd eax, xmm5
and al, 1
mov byte [rbx + 0x355c], al
maxss xmm2, xmm3
movss dword [rbx + 0x3568], xmm2
movss xmm2, dword [rbx + 0xdf0]
movss xmm3, dword [rbx + 0xdf8]
xorps xmm4, xmm4
cmpltps xmm4, xmm3
xorps xmm5, xmm5
cmpltps xmm5, xmm2
orps xmm5, xmm4
movd eax, xmm5
and al, 1
mov byte [rbx + 0x356c], al
maxss xmm2, xmm3
ucomiss xmm0, xmm1
movss dword [rbx + 0x3578], xmm2
setb byte [rbx + 0x35bc]
movss dword [rbx + 0x35c8], xmm1
movss xmm1, dword [rbx + 0xde0]
ucomiss xmm0, xmm1
setb byte [rbx + 0x35cc]
movss dword [rbx + 0x35d8], xmm1
movss xmm1, dword [rbx + 0xde4]
ucomiss xmm0, xmm1
movss xmm2, dword [rbx + 0xde8]
setb byte [rbx + 0x35dc]
movss dword [rbx + 0x35e8], xmm1
ucomiss xmm0, xmm2
setb byte [rbx + 0x35ec]
movss dword [rbx + 0x35f8], xmm2
movzx ecx, byte [rbx + 0xe10]
xorps xmm0, xmm0
movss xmm1, dword [0x14010be30]
xorps xmm2, xmm2
test cl, cl
je 0x1400391a4
movaps xmm2, xmm1
mov rax, qword [0x140205610]
mov byte [rax + 0x363c], cl
movss dword [rax + 0x3648], xmm2
movzx ecx, byte [rbx + 0xe11]
xorps xmm2, xmm2
test cl, cl
je 0x1400391ca
movaps xmm2, xmm1
mov byte [rax + 0x364c], cl
movss dword [rax + 0x3658], xmm2
movzx ecx, byte [rbx + 0xe12]
xorps xmm2, xmm2
test cl, cl
je 0x1400391e9
movaps xmm2, xmm1
mov byte [rax + 0x365c], cl
movss dword [rax + 0x3668], xmm2
movzx ecx, byte [rbx + 0xe13]
xorps xmm2, xmm2
test cl, cl
je 0x140039208
movaps xmm2, xmm1
mov byte [rax + 0x366c], cl
movss dword [rax + 0x3678], xmm2
movzx ecx, byte [rbx + 0xe14]
xorps xmm2, xmm2
test cl, cl
je 0x140039227
movaps xmm2, xmm1
mov byte [rax + 0x367c], cl
movss dword [rax + 0x3688], xmm2
movss xmm1, dword [rbx + 0xe1c]
ucomiss xmm0, xmm1
setne byte [rax + 0x368c]
movss dword [rax + 0x3698], xmm1
movss xmm1, dword [rbx + 0xe18]
ucomiss xmm0, xmm1
setne byte [rax + 0x369c]
movss dword [rax + 0x36a8], xmm1
cmp byte [rax + 0x36ac], 0
je 0x140039bf7
xor ecx, ecx
cmp byte [rax + 0x4608], 0
sete cl
shl ecx, 0xc
cmp byte [rax + 0x36bc], 0
je 0x1400392a0
cmp byte [rax + 0x4614], 0
lea edx, [rcx + 0x2000]
cmovne edx, ecx
mov ecx, edx
cmp byte [rax + 0x36cc], 0
je 0x1400392bb
cmp byte [rax + 0x4620], 0
lea edx, [rcx + 0x4000]
cmovne edx, ecx
mov ecx, edx
cmp byte [rax + 0x36dc], 0
je 0x1400392d6
cmp byte [rax + 0x462c], 0
lea eax, [rcx + 0x8000]
cmovne eax, ecx
mov ecx, eax
mov dword [rbx + 0xe28], ecx
mov eax, ecx
shr eax, 0xc
and al, 1
mov byte [rbx + 0xe24], al
mov eax, ecx
shr eax, 0xd
and al, 1
mov byte [rbx + 0xe25], al
mov eax, ecx
shr eax, 0xe
and al, 1
mov byte [rbx + 0xe26], al
shr ecx, 0xf
mov byte [rbx + 0xe27], cl
test byte [rbx + 0xc], 1
jne 0x140039365
xor eax, eax
nop word cs:[rax + rax]
mov byte [rbx + rax + 0x34bc], 0
mov dword [rbx + rax + 0x34c8], 0
mov byte [rbx + rax + 0x34cc], 0
mov dword [rbx + rax + 0x34d8], 0
mov byte [rbx + rax + 0x34dc], 0
mov dword [rbx + rax + 0x34e8], 0
add rax, 0x30
cmp rax, 0x180
jne 0x140039320
mov eax, 0xe34
movss xmm0, dword [0x14010c4e4]
jmp 0x140039392
movss dword [rbx + rax - 4], xmm2
add rax, 0x10
cmp rax, 0x36f4
je 0x1400393b9
movss xmm1, dword [rbx + rax - 4]
movss dword [rbx + rax], xmm1
cmp byte [rbx + rax - 8], 0
movaps xmm2, xmm0
je 0x140039380
xorps xmm2, xmm2
ucomiss xmm1, xmm2
jb 0x140039380
addss xmm1, dword [rbx + 0x18]
movaps xmm2, xmm1
jmp 0x140039380
lea rax, [rbx + 0x3fa9]
xor ecx, ecx
jmp 0x1400393fa
mov dword [rax - 5], 0xffffffff
cmp byte [rax], 0
je 0x14003940f
movzx edx, byte [rbx + rcx + 0x2e2c]
mov byte [rax], dl
mov byte [rax - 1], dl
add rcx, 0x10
add rax, 0xc
cmp rcx, 0x8c0
je 0x140039413
mov edx, dword [rax - 5]
mov dword [rax - 9], edx
cmp byte [rbx + rcx + 0x2e2c], 0
je 0x1400393d0
cmp byte [rax], 0
jne 0x1400393dc
xor edx, edx
jmp 0x1400393e4
mov r10, qword [0x140205610]
cmp dword [rbx + 0x475c], 0
mov qword [rsp + 0x28], r10
jns 0x1400394a6
test r10, r10
je 0x140039434
inc dword [r10 + 0xf4]
mov rdx, qword [0x140205620]
xor ecx, ecx
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [rbx + 0x4760]
test rdx, rdx
je 0x140039490
movsxd r8, dword [rbx + 0x4758]
shl r8, 4
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x4760]
test rcx, rcx
je 0x140039483
mov rax, qword [0x140205610]
test rax, rax
je 0x140039483
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [rbx + 0x4760], rdi
mov dword [rbx + 0x475c], 0
mov r10, qword [rsp + 0x28]
mov qword [rsp + 0x48], r14
mov dword [rbx + 0x4758], 0
mov r15d, 0x200
xor r12d, r12d
jmp 0x1400394d3
mov r12d, r8d
inc r15
cmp r15, 0x28c
je 0x140039768
movzx eax, word [rbx + r15*2 + 0x4230]
mov ecx, r12d
cmp ax, 0xffff
jne 0x14003952f
jmp 0x1400396f6
movzx eax, byte [r10 + 0x79]
lea rax, [rax + rax*2]
or rax, 0x288
nop dword [rax]
add eax, 0xfffffe00
cdqe
lea rax, [rax + rax*2]
cmp dword [r10 + rax*4 + 0x3fa0], 0xffffffff
je 0x140039583
nop word cs:[rax + rax]
movzx eax, word [r13]
cmp ax, 0xffff
je 0x1400396f0
mov rbp, qword [rbx + 0x4750]
movsx rsi, ax
shl rsi, 4
lea r13, [rsi + rbp]
mov eax, dword [rbp + rsi + 0xc]
mov dword [rbp + rsi + 8], eax
mov dword [rbp + rsi + 0xc], 0xffffffff
mov byte [rbp + rsi + 4], 0xff
cmp eax, 0xffffffff
je 0x140039520
mov eax, dword [rbx + 0x4758]
cmp eax, dword [rbx + 0x475c]
jne 0x14003963c
lea r14d, [rax + 1]
test eax, eax
je 0x14003959b
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
add ecx, eax
jmp 0x1400395a0
lea rcx, [rsi + rbp]
add rcx, 8
lea rax, [r10 + rax*4]
add rax, 0x3fa0
mov ecx, dword [rcx]
mov dword [rax], ecx
jmp 0x140039520
mov ecx, 8
cmp ecx, r14d
cmovg r14d, ecx
cmp eax, r14d
jge 0x14003963c
movsxd rcx, r14d
shl rcx, 4
mov rax, qword [0x140205610]
test rax, rax
je 0x1400395c9
inc dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [rbx + 0x4760]
test rdx, rdx
je 0x140039623
movsxd r8, dword [rbx + 0x4758]
shl r8, 4
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x4760]
test rcx, rcx
je 0x140039616
mov rax, qword [0x140205610]
test rax, rax
je 0x140039616
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [rbx + 0x4760], rdi
mov dword [rbx + 0x475c], r14d
mov eax, dword [rbx + 0x4758]
mov r10, qword [rsp + 0x28]
mov rcx, qword [rbx + 0x4760]
cdqe
shl rax, 4
movups xmm0, xmmword [r13]
movups xmmword [rcx + rax], xmm0
inc dword [rbx + 0x4758]
movzx eax, word [rbp + rsi + 2]
cmp dword [r10 + 0xe28], eax
jne 0x140039520
mov rax, r15
test r15d, 0xf800
je 0x140039500
cmp r15d, 0x1fff
jle 0x1400396a8
cmp r15d, 0x8000
je 0x1400396cf
cmp r15d, 0x4000
je 0x1400396d9
cmp r15d, 0x2000
jne 0x1400396c7
mov eax, 0x289
jmp 0x140039500
cmp r15d, 0x800
je 0x1400394ea
mov eax, 0x288
cmp r15d, 0x1000
je 0x140039500
mov rax, r15
jmp 0x140039500
mov eax, 0x28b
jmp 0x140039500
mov eax, 0x28a
jmp 0x140039500
mov ecx, dword [rbx + 0x4758]
cmp r12d, ecx
mov eax, 0xffff
cmovl eax, r12d
mov word [rbx + r15*2 + 0x4230], ax
mov r8d, dword [rbx + 0x4758]
cmp r12d, r8d
jge 0x1400394c0
movsxd rax, r12d
mov rcx, rax
shl rcx, 4
inc r12d
mov edx, r12d
mov r12d, r8d
jmp 0x140039752
mov r9, qword [rbx + 0x4760]
mov word [r9 + rcx], r8w
movsxd r12, dword [rbx + 0x4758]
add rcx, 0x10
inc edx
cmp rax, r12
jge 0x1400394c3
inc rax
movsxd r9, r12d
mov r8d, edx
cmp rax, r9
jl 0x140039730
mov r8d, 0xffff
jmp 0x140039730
mov eax, dword [rbx + 0x475c]
mov rcx, qword [rbx + 0x4748]
mov rdx, qword [rbx + 0x4750]
mov dword [rbx + 0x4748], r12d
mov qword [rbx + 0x4758], rcx
mov dword [rbx + 0x474c], eax
mov rax, qword [rbx + 0x4760]
mov qword [rbx + 0x4760], rdx
mov qword [rbx + 0x4750], rax
mov r15, qword [0x140205610]
mov byte [r15 + 0xdb], 0
mov r13d, dword [r15 + 8]
test r13b, 2
je 0x1400397c9
test byte [r15 + 0xc], 1
jne 0x140039c0b
mov dword [rsp + 0x28], 0
test r13b, 1
je 0x1400398b4
cmp byte [r15 + 0x2eec], 0
je 0x1400397fa
cmp byte [r15 + 0x4038], 0
jne 0x1400397fa
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2efc], 0
je 0x140039819
cmp byte [r15 + 0x4044], 0
jne 0x140039819
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2f0c], 0
je 0x140039838
cmp byte [r15 + 0x4050], 0
jne 0x140039838
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2e4c], 0
je 0x140039857
cmp byte [r15 + 0x3fc0], 0
jne 0x140039857
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2e3c], 0
je 0x140039876
cmp byte [r15 + 0x3fb4], 0
jne 0x140039876
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2e5c], 0
je 0x140039895
cmp byte [r15 + 0x3fcc], 0
jne 0x140039895
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2e6c], 0
je 0x1400398b4
cmp byte [r15 + 0x3fd8], 0
jne 0x1400398b4
mov dword [r15 + 0x490c], 2
mov dword [r15 + 0x48f8], 0
cmp dword [r15 + 0x4928], 0
je 0x1400398ce
call fcn.14004b0f0
mov word [r15 + 0x4919], 0
mov dword [r15 + 0x4928], 0
cmp byte [r15 + 0x4950], 0
je 0x1400398f2
call fcn.14004b230
mov dword [r15 + 0x4994], 0
mov word [r15 + 0x4950], 0
cmp byte [r15 + 0x4915], 0
je 0x140039929
cmp byte [r15 + 0x4914], 0
je 0x140039929
cmp byte [r15 + 0x4916], 0
je 0x140039ebf
mov dword [rsp + 0x38], 0
mov byte [r15 + 0x4915], 0
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x1400399a4
mov rcx, rax
nop dword [rax + rax]
cmp qword [rcx + 0x378], rcx
je 0x14003996d
test byte [rcx + 0x17], 0x14
jne 0x14003996d
mov rcx, qword [rcx + 0x368]
test rcx, rcx
jne 0x140039950
jmp 0x140039980
cmp rcx, rax
je 0x140039980
mov qword [rcx + 0x398], rax
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x1400399a4
cmp qword [rax + 0x398], 0
je 0x1400399a4
cmp dword [r15 + 0x4910], 0
jne 0x1400399a4
mov qword [rax + 0x398], 0
mov r12, qword [0x140205610]
mov ecx, dword [r12 + 0x48a0]
mov al, 1
test ecx, ecx
jle 0x140039a00
mov rdx, qword [r12 + 0x48a8]
inc rcx
jmp 0x1400399d9
dec rcx
cmp rcx, 2
jb 0x140039a00
lea r8d, [rcx - 2]
imul r8, r8, 0x38
mov r8, qword [rdx + r8 + 8]
test r8, r8
je 0x1400399d0
test byte [r8 + 0x17], 8
je 0x1400399d0
mov qword [r12 + 0x4a60], 0
xor eax, eax
mov dword [rsp + 0x34], r13d
cmp qword [r12 + 0x4a68], 0
je 0x140039a61
cmp qword [r12 + 0x4a60], 0
jne 0x140039a61
movss xmm0, dword [r12 + 0x18]
mulss xmm0, dword [0x14010f444]
addss xmm0, dword [r12 + 0x4a7c]
xorps xmm1, xmm1
maxss xmm0, xmm1
movss dword [r12 + 0x4a7c], xmm0
ucomiss xmm1, dword [r12 + 0x4a94]
jb 0x140039a61
ucomiss xmm0, xmm1
ja 0x140039a61
mov qword [r12 + 0x4a68], 0
mov ecx, 0xffffffff
mov r9b, 0x23
lea rdx, [0x14011150e]
lea r8, [0x14010f690]
mov ebp, 0xffffffff
jmp 0x140039a9d
movzx r9d, r9b
movzx r11d, bpl
shr ebp, 8
xor r11d, r9d
xor ebp, dword [r8 + r11*4]
inc rdx
mov r9d, r10d
test r10b, r10b
je 0x140039ab9
movzx r10d, byte [rdx - 1]
cmp r9b, 0x23
jne 0x140039a80
cmp r10b, 0x23
jne 0x140039a80
cmp byte [rdx], 0x23
cmove ebp, ecx
mov r10b, 0x23
jmp 0x140039a80
mov esi, dword [r12 + 8]
test sil, 2
jne 0x140039ac9
xor r14d, r14d
jmp 0x140039ad3
movzx r14d, byte [r12 + 0xc]
and r14b, 1
not ebp
xor ecx, ecx
mov r13d, 0
mov ebx, 0
mov edx, 0
test al, al
je 0x140039d70
mov edi, dword [r12 + 0x4a58]
test edi, edi
je 0x140039b67
mov ecx, edi
mov edx, ebp
mov r8d, 0x1101
call fcn.140048860
test al, al
je 0x140039b67
test edi, 0x800
je 0x140039b36
mov rax, qword [0x140205610]
and edi, 0xfffff7ff
cmp byte [rax + 0x79], 0
mov eax, 0x1000
mov ecx, 0x8000
cmove ecx, eax
or edi, ecx
mov eax, edi
and eax, 0xf800
cmp dword [r12 + 0xe28], eax
jne 0x140039b67
and edi, 0xffff07ff
je 0x14003a75f
mov ecx, edi
mov edx, ebp
mov r8d, 1
call fcn.140048c30
mov r13d, eax
jmp 0x140039b6a
xor r13d, r13d
mov ebx, dword [r12 + 0x4a5c]
test ebx, ebx
je 0x140039d1c
mov edi, esi
mov rsi, qword [0x140205610]
mov ecx, ebx
mov edx, ebp
mov r8d, 0x1101
call fcn.140048860
test al, al
je 0x140039d16
test ebx, 0x800
je 0x140039bc2
mov rax, qword [0x140205610]
and ebx, 0xfffff7ff
cmp byte [rax + 0x79], 0
mov eax, 0x1000
mov ecx, 0x8000
cmove ecx, eax
or ebx, ecx
mov eax, ebx
and eax, 0xf800
cmp dword [rsi + 0xe28], eax
jne 0x140039d16
and ebx, 0xffff07ff
je 0x14003a795
mov ecx, ebx
mov edx, ebp
mov r8d, 1
call fcn.140048c30
mov ebx, eax
jmp 0x140039d18
xor ecx, ecx
cmp byte [rax + 0x36bc], 0
jne 0x14003928e
jmp 0x1400392a0
cmp byte [r15 + 0x34ec], 0
je 0x140039c2a
cmp byte [r15 + 0x44b8], 0
jne 0x140039c2a
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x34dc], 0
je 0x140039c49
cmp byte [r15 + 0x44ac], 0
jne 0x140039c49
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x34fc], 0
je 0x140039c68
cmp byte [r15 + 0x44c4], 0
jne 0x140039c68
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x350c], 0
je 0x140039c87
cmp byte [r15 + 0x44d0], 0
jne 0x140039c87
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x352c], 0
je 0x140039ca6
cmp byte [r15 + 0x44e8], 0
jne 0x140039ca6
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x351c], 0
je 0x140039cc5
cmp byte [r15 + 0x44dc], 0
jne 0x140039cc5
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x353c], 0
je 0x140039ce4
cmp byte [r15 + 0x44f4], 0
jne 0x140039ce4
mov dword [r15 + 0x490c], 3
mov al, 1
mov dword [rsp + 0x28], eax
cmp byte [r15 + 0x354c], 0
je 0x1400397d1
cmp byte [r15 + 0x4500], 0
jne 0x1400397d1
mov dword [r15 + 0x490c], 3
jmp 0x1400397d1
xor ebx, ebx
mov esi, edi
jmp 0x140039d1e
xor ebx, ebx
mov rax, qword [r12 + 0x4a60]
test rax, rax
sete cl
and r14b, cl
cmp r14b, 1
jne 0x140039d61
mov rax, qword [0x140205610]
cmp byte [rax + 0x34dc], 0
je 0x140039d5f
xorps xmm0, xmm0
ucomiss xmm0, dword [rax + 0x34e0]
jne 0x140039d5f
cmp byte [rax + 0x44ac], 0
sete cl
xor eax, eax
jmp 0x140039d63
xor eax, eax
xor ecx, ecx
test rax, rax
sete al
mov edx, r13d
or dl, bl
and dl, al
test cl, cl
jne 0x140039d7c
test dl, dl
je 0x140039e16
mov rax, qword [r12 + 0x48d8]
test rax, rax
je 0x140039df6
mov r9, qword [rax + 0x378]
mov qword [r12 + 0x4a68], r9
mov qword [r12 + 0x4a60], r9
xorps xmm0, xmm0
movlps qword [r12 + 0x4a78], xmm0
movups xmmword [r12 + 0x4a84], xmm0
mov byte [r12 + 0x4a80], cl
movzx eax, dl
xor eax, 3
mov dword [r12 + 0x490c], eax
mov eax, r13d
or al, bl
cmp al, 1
jne 0x140039e16
mov ecx, dword [r12 + 0x4a5c]
or ecx, dword [r12 + 0x4a58]
and ecx, 0xf800
mov edx, ebp
xor r8d, r8d
call fcn.140048f40
jmp 0x140039e16
mov eax, dword [r12 + 0x3ea8]
test eax, eax
jle 0x140039e16
mov r8, qword [0x140205610]
cmp eax, dword [r8 + 0x3ea8]
jle 0x14003a52e
movss xmm0, dword [r12 + 0x4a78]
addss xmm0, dword [r12 + 0x18]
movss dword [r12 + 0x4a78], xmm0
mov r14, qword [r12 + 0x4a60]
test r14, r14
je 0x140039ea7
mov eax, dword [r12 + 0x490c]
cmp eax, 3
mov ebp, dword [rsp + 0x34]
jne 0x140039fcd
mulss xmm0, dword [0x14010c79c]
addss xmm0, dword [0x14010f448]
minss xmm0, dword [0x14010be30]
xorps xmm2, xmm2
maxss xmm0, xmm2
maxss xmm0, dword [r12 + 0x4a7c]
movss dword [r12 + 0x4a7c], xmm0
mov rax, qword [0x140205610]
cmp byte [rax + 0x355c], 0
je 0x140039ea3
movss xmm1, dword [rax + 0x3560]
ucomiss xmm2, xmm1
jbe 0x140039ee1
xor ecx, ecx
jmp 0x140039ef4
xor ebx, ebx
xor r14d, r14d
mov ebp, dword [rsp + 0x34]
test sil, 1
jne 0x14003a078
jmp 0x14003a0b2
cmp byte [r15 + 0x4917], 0
je 0x140039929
cmp qword [r15 + 0x48d8], 0
setne al
mov dword [rsp + 0x38], eax
jmp 0x140039931
ucomiss xmm1, xmm2
jne 0x14003a63c
cmp byte [rax + 0x450c], 0
sete cl
movzx ecx, cl
cmp byte [rax + 0x356c], 0
je 0x140039f10
movss xmm1, dword [rax + 0x3570]
xorps xmm2, xmm2
ucomiss xmm2, xmm1
jbe 0x140039f14
xor edx, edx
jmp 0x140039f27
ucomiss xmm1, xmm2
jne 0x14003a6cc
cmp byte [rax + 0x4518], 0
sete dl
movzx edx, dl
sub ecx, edx
je 0x140039f4e
call fcn.14004def0
mov dword [r12 + 0x4a7c], 0x3f800000
movss xmm0, dword [0x14010be30]
mov rax, qword [0x140205610]
cmp byte [rax + 0x34dc], 0
je 0x140039f60
cmp byte [rax + 0x44ac], 0
je 0x140039fb8
ucomiss xmm0, dword [0x14010be30]
setb al
cmp byte [r12 + 0x4a80], 0
setne cl
and cl, al
mov byte [r12 + 0x4a80], cl
je 0x140039f93
cmp qword [r12 + 0x48d8], 0
setne bl
xor r14d, r14d
jmp 0x140039f9d
mov r14, qword [r12 + 0x4a60]
xor ebx, ebx
mov qword [r12 + 0x4a60], 0
test sil, 1
jne 0x14003a078
jmp 0x14003a0b2
mov r14, qword [r12 + 0x4a60]
test r14, r14
je 0x14003a035
mov eax, dword [r12 + 0x490c]
cmp eax, 2
jne 0x14003a035
mov eax, dword [r12 + 0x4a58]
movss xmm0, dword [r12 + 0x4a78]
mulss xmm0, dword [0x14010c79c]
addss xmm0, dword [0x14010f448]
minss xmm0, dword [0x14010be30]
xorps xmm1, xmm1
maxss xmm1, xmm0
maxss xmm1, dword [r12 + 0x4a7c]
mov ecx, dword [r12 + 0x4a5c]
movss dword [r12 + 0x4a7c], xmm1
or bl, r13b
cmp bl, 1
jne 0x14003a042
movzx ecx, r13b
neg ecx
or ecx, 1
call fcn.14004def0
xor ebx, ebx
xor r14d, r14d
test sil, 1
jne 0x14003a078
jmp 0x14003a0b2
test ecx, ecx
mov edx, 0xf800
cmove ecx, edx
mov r8d, eax
and r8d, 0xf800
test eax, eax
cmove r8d, edx
and r8d, ecx
mov eax, dword [r12 + 0xe28]
not eax
xor ebx, ebx
test r8d, eax
cmove r14, rbx
test sil, 1
je 0x14003a0b2
mov rax, qword [0x140205610]
cmp byte [rax + 0x36cc], 0
je 0x14003a0b2
xorps xmm0, xmm0
ucomiss xmm0, dword [rax + 0x36d0]
jne 0x14003a0b2
cmp dword [rax + 0x4618], 0xffffffff
jne 0x14003a0b2
mov byte [r12 + 0x4a80], 1
mov dword [r12 + 0x490c], 2
cmp byte [r12 + 0x4a80], 0
je 0x14003a155
cmp dword [r12 + 0x490c], 2
jne 0x14003a155
cmp dword [r12 + 0x37c0], 0
jg 0x14003a110
cmp byte [r12 + 0xe24], 0
jne 0x14003a110
cmp byte [r12 + 0xe25], 0
jne 0x14003a110
cmp byte [r12 + 0xe27], 0
jne 0x14003a110
mov rax, qword [0x140205610]
cmp dword [rax + 0x4618], 0xffffffff
je 0x14003b985
mov byte [r12 + 0x4a80], 0
mov cl, 1
mov rax, qword [0x140205610]
xorps xmm0, xmm0
ucomiss xmm0, dword [rax + 0x36d4]
movzx edx, byte [rax + 0x36cc]
jbe 0x14003a13b
test dl, dl
jne 0x14003a143
jmp 0x14003a14c
test dl, dl
je 0x14003a574
cmp byte [rax + 0x4620], 0
je 0x14003a155
mov byte [r12 + 0x4a80], 0
mov rax, qword [r12 + 0x4a60]
test rax, rax
je 0x14003a2a6
test byte [rax + 0x14], 4
jne 0x14003a2a6
mov ecx, dword [r12 + 0x490c]
cmp ecx, 3
je 0x14003a1b7
xorps xmm0, xmm0
cmp ecx, 2
jne 0x14003a1e7
cmp byte [r12 + 0xe25], 0
jne 0x14003a1e7
mov rcx, qword [0x140205610]
movss xmm1, dword [rcx + 0x2e78]
lea rdx, [rcx + 0x2e58]
subss xmm1, dword [rcx + 0x2e68]
add rcx, 0x2e48
jmp 0x14003a1dc
mov rcx, qword [0x140205610]
movss xmm1, dword [rcx + 0x35f8]
lea rdx, [rcx + 0x35d8]
subss xmm1, dword [rcx + 0x35e8]
add rcx, 0x35c8
movss xmm0, dword [rdx]
subss xmm0, dword [rcx]
unpcklps xmm0, xmm1
xorps xmm1, xmm1
movaps xmm2, xmm0
shufps xmm2, xmm0, 0x55
cmpneqps xmm2, xmm1
cmpneqps xmm1, xmm0
orps xmm1, xmm2
movd ecx, xmm1
test cl, 1
je 0x14003a2a6
movss xmm1, dword [r12 + 0x18]
mulss xmm1, dword [0x14010f44c]
movss xmm2, dword [r12 + 0x70]
minss xmm2, dword [r12 + 0x74]
mulss xmm2, xmm1
mov byte [r12 + 0x4917], 1
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
movsd xmm0, qword [r12 + 0x4a84]
addps xmm0, xmm2
movlps qword [r12 + 0x4a84], xmm0
cvttps2dq xmm0, xmm0
pshufd xmm1, xmm0, 0x50
xorps xmm2, xmm2
pcmpeqd xmm2, xmm1
movmskpd ecx, xmm2
xor ecx, 3
je 0x14003a2a6
cvtdq2ps xmm6, xmm0
mov rcx, qword [rax + 0x378]
movsd xmm0, qword [rcx + 0x20]
addps xmm0, xmm6
movlps qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
mov r8d, 1
call fcn.140037a40
movsd xmm0, qword [r12 + 0x4a84]
subps xmm0, xmm6
movlps qword [r12 + 0x4a84], xmm0
test r14, r14
je 0x14003a333
mov rax, qword [r12 + 0x48d8]
test rax, rax
je 0x14003a2c5
cmp r14, qword [rax + 0x378]
je 0x14003a327
xor ecx, ecx
xor edx, edx
call fcn.140036a80
mov rax, qword [0x140205610]
mov word [rax + 0x4915], 1
mov byte [rax + 0x4917], 1
mov rcx, r14
xor edx, edx
call fcn.140037ea0
mov rcx, r14
mov edx, 1
call fcn.140037430
mov rdi, qword [r12 + 0x48d8]
cmp dword [rdi + 0x3a0], 0
je 0x14003a3d7
cmp word [rdi + 0x15e], 2
jne 0x14003a327
mov dword [r12 + 0x4910], 1
mov qword [r12 + 0x4a60], 0
test bl, bl
je 0x14003a41f
cmp qword [r12 + 0x48d8], 0
je 0x14003a41f
xor ecx, ecx
xor edx, edx
call fcn.140036a80
mov rsi, qword [r12 + 0x48d8]
mov eax, 0x15000000
mov rcx, rsi
nop word cs:[rax + rax]
mov rdi, rcx
mov rcx, qword [rcx + 0x368]
test rcx, rcx
je 0x14003a395
test byte [rdi + 0x15c], 2
jne 0x14003a395
mov edx, dword [rdi + 0x14]
and edx, eax
cmp edx, 0x1000000
je 0x14003a370
cmp rdi, rsi
je 0x14003a3b3
mov rcx, rdi
xor edx, edx
call fcn.140037430
mov qword [rdi + 0x398], rsi
mov rsi, qword [r12 + 0x48d8]
test byte [rsi + 0x15c], 2
mov eax, dword [r12 + 0x4910]
jne 0x14003a3cc
xor ecx, ecx
test eax, eax
jne 0x14003a403
jmp 0x14003a41f
test eax, eax
je 0x14003a3f4
xor eax, 1
mov ecx, eax
jmp 0x14003a403
mov rcx, rdi
xor edx, edx
call fcn.140045280
cmp word [rdi + 0x15e], 2
je 0x14003a31b
jmp 0x14003a327
mov dword [rsi + 0x3a4], 0
mov ecx, 1
call fcn.14004dfd0
mov rax, qword [0x140205610]
mov word [rax + 0x4915], 1
mov byte [rax + 0x4917], 1
mov ebx, ebp
or bl, byte [rsp + 0x28]
test bl, 1
je 0x14003a45f
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x14003a45f
test dword [rax + 0x14], 0x40000
sete byte [r15 + 0xdd]
jne 0x14003a467
cmp dword [r15 + 0x48e0], 0
je 0x14003a467
cmp byte [r15 + 0x4916], 0
jne 0x14003a467
mov al, 1
jmp 0x14003a472
mov byte [r15 + 0xdd], 0
cmp qword [r15 + 0x4a60], 0
setne al
mov byte [r15 + 0xde], al
mov rsi, qword [0x140205610]
mov ecx, dword [rsi + 8]
test cl, 2
jne 0x14003a491
xor eax, eax
test cl, 1
jne 0x14003a49c
jmp 0x14003a4cc
movzx eax, byte [rsi + 0xc]
and al, 1
test cl, 1
je 0x14003a4cc
cmp byte [rsi + 0x2f0c], 0
je 0x14003a4cc
xorps xmm0, xmm0
ucomiss xmm0, dword [rsi + 0x2f10]
jne 0x14003a4cc
cmp byte [rsi + 0x476c], 0
je 0x14003a4c3
cmp dword [rsi + 0x3f58], 0xffffffff
jne 0x14003a4cc
cmp dword [rsi + 0x4048], 0xffffffff
je 0x14003a4fe
test al, al
je 0x14003a95a
cmp byte [rsi + 0x34ec], 0
je 0x14003a95a
xorps xmm0, xmm0
ucomiss xmm0, dword [rsi + 0x34f0]
jne 0x14003a95a
cmp dword [rsi + 0x44b0], 0xffffffff
jne 0x14003a95a
test byte [rsi + 0x5ce4], 8
je 0x14003a513
lea rcx, str._nav__NavUpdateCancelRequest___n
call fcn.14002fb80
cmp dword [rsi + 0x3f58], 0
je 0x14003a60c
xor ecx, ecx
xor edx, edx
call fcn.140036a80
jmp 0x14003a95a
mov r8, qword [r8 + 0x3eb0]
inc rax
jmp 0x14003a54d
dec rax
cmp rax, 1
jbe 0x140039e16
lea r9d, [rax - 2]
mov r9, qword [r8 + r9*8]
cmp byte [r9 + 0xb7], 0
je 0x14003a540
cmp qword [r9 + 0x378], r9
jne 0x14003a540
test byte [r9 + 0x16], 8
jne 0x14003a540
jmp 0x140039d90
cmp byte [rax + 0x4620], 0
setne al
or cl, al
jne 0x14003a14c
cmp dword [r12 + 0x3f58], 0
je 0x14003a5a0
cmp byte [r12 + 0x3f65], 0
je 0x14003a14c
movss xmm0, dword [r12 + 0xe08]
movss xmm1, dword [r12 + 0xe0c]
movss xmm2, dword [0x14010f420]
movaps xmm3, xmm2
cmpleps xmm3, xmm1
movaps xmm1, xmm2
cmpleps xmm1, xmm0
andps xmm1, xmm3
movd eax, xmm1
movss xmm0, dword [r12 + 0x36f4]
movaps xmm1, xmm2
cmpleps xmm1, xmm0
movss xmm0, dword [r12 + 0x36f0]
cmpleps xmm2, xmm0
andps xmm2, xmm1
movd ecx, xmm2
xor ecx, eax
movzx eax, bl
test cl, 1
mov ebx, 1
cmovne ebx, eax
jmp 0x14003a14c
cmp dword [rsi + 0x4910], 0
je 0x14003a7cb
xor ecx, ecx
call fcn.14004dfd0
mov rax, qword [0x140205610]
mov word [rax + 0x4915], 1
mov byte [rax + 0x4917], 1
jmp 0x14003a95a
movss xmm2, dword [rax + 0x3c]
ucomiss xmm1, xmm2
jbe 0x140039ea3
movaps xmm3, xmm1
subss xmm3, dword [rax + 0x18]
ucomiss xmm3, xmm1
jae 0x140039ea3
movss xmm4, dword [rax + 0x40]
xorps xmm5, xmm5
ucomiss xmm4, xmm5
jbe 0x14003b6f6
xor ecx, ecx
ucomiss xmm3, xmm2
setb cl
movaps xmm5, xmm1
unpcklps xmm5, xmm3
movaps xmm3, xmm2
shufps xmm3, xmm2, 0
xor edx, edx
ucomiss xmm1, xmm2
subps xmm5, xmm3
setb dl
movss xmm1, dword [0x14010be30]
divss xmm1, xmm4
shufps xmm1, xmm1, 0
mulps xmm1, xmm5
cvttps2dq xmm1, xmm1
movd xmm2, edx
pinsrw xmm2, ecx, 2
pslld xmm2, 0x1f
psrad xmm2, 0x1f
por xmm2, xmm1
pshufd xmm1, xmm2, 0x55
psubd xmm2, xmm1
movd ecx, xmm2
jmp 0x14003b708
movss xmm2, dword [rax + 0x3c]
ucomiss xmm1, xmm2
jbe 0x140039f10
movaps xmm3, xmm1
subss xmm3, dword [rax + 0x18]
ucomiss xmm3, xmm1
jae 0x140039f10
movss xmm4, dword [rax + 0x40]
xorps xmm5, xmm5
ucomiss xmm4, xmm5
jbe 0x14003b715
xor edx, edx
ucomiss xmm3, xmm2
setb dl
movaps xmm5, xmm1
unpcklps xmm5, xmm3
movaps xmm3, xmm2
shufps xmm3, xmm2, 0
xor r8d, r8d
ucomiss xmm1, xmm2
subps xmm5, xmm3
setb r8b
movss xmm1, dword [0x14010be30]
divss xmm1, xmm4
shufps xmm1, xmm1, 0
mulps xmm1, xmm5
cvttps2dq xmm1, xmm1
movd xmm2, r8d
pinsrw xmm2, edx, 2
pslld xmm2, 0x1f
psrad xmm2, 0x1f
por xmm2, xmm1
pshufd xmm1, xmm2, 0x55
psubd xmm2, xmm1
movd edx, xmm2
jmp 0x14003b727
cmp eax, 0x1fff
jle 0x14003a8ec
cmp eax, 0x8000
je 0x14003b6a8
cmp eax, 0x4000
je 0x14003b6b2
cmp eax, 0x2000
jne 0x14003a907
mov edi, 0x289
jmp 0x140039b53
cmp eax, 0x1fff
jle 0x14003a90e
cmp eax, 0x8000
je 0x14003b6bc
cmp eax, 0x4000
je 0x14003b6c6
cmp eax, 0x2000
jne 0x14003a929
mov ebx, 0x289
jmp 0x140039be1
mov r14, qword [rsi + 0x48d8]
test r14, r14
je 0x14003a8bc
cmp r14, qword [r14 + 0x378]
je 0x14003a8bc
test byte [r14 + 0x17], 4
jne 0x14003a8bc
mov rdi, qword [r14 + 0x368]
test rdi, rdi
je 0x14003a8bc
movsd xmm6, qword [r14 + 0x20]
movsd xmm7, qword [r14 + 0x28]
addps xmm7, xmm6
mov rcx, rdi
xor edx, edx
call fcn.140037430
mov eax, dword [r14 + 0x80]
mov rcx, qword [0x140205610]
mov rdx, qword [rcx + 0x48d8]
movsd xmm0, qword [rdi + 0x110]
movlhps xmm0, xmm0
movlhps xmm6, xmm7
subps xmm6, xmm0
mov dword [rcx + 0x48e0], eax
mov dword [rcx + 0x4910], 0
mov dword [rcx + 0x48e4], 0
mov dword [rdx + 0x3a0], eax
mov rax, qword [rcx + 0x48d8]
movups xmmword [rax + 0x3a8], xmm6
mov rax, qword [rcx + 0x48d8]
mov rax, qword [rax + 0x390]
movsxd rcx, dword [rcx + 0x4910]
mov dword [rax + rcx*8 + 0x3c8], 0x7f7fffff
mov rax, qword [0x140205610]
mov rcx, qword [rax + 0x48d8]
mov rcx, qword [rcx + 0x390]
movsxd rax, dword [rax + 0x4910]
mov dword [rcx + rax*8 + 0x3cc], 0x7f7fffff
jmp 0x14003a620
mov ecx, dword [rsi + 0x48a0]
test ecx, ecx
jle 0x14003a930
mov rax, qword [rsi + 0x48a8]
dec ecx
imul rdx, rcx, 0x38
mov rax, qword [rax + rdx + 8]
test rax, rax
je 0x14003a930
test byte [rax + 0x17], 8
jne 0x14003a930
mov dl, 1
call fcn.14004a3c0
jmp 0x14003a95a
cmp eax, 0x800
je 0x14003b6d0
mov edi, 0x288
cmp eax, 0x1000
je 0x140039b53
mov edi, eax
jmp 0x140039b53
cmp eax, 0x800
je 0x14003b6e4
mov ebx, 0x288
cmp eax, 0x1000
je 0x140039be1
mov ebx, eax
jmp 0x140039be1
test r14, r14
je 0x14003a950
mov eax, 0x5000000
and eax, dword [r14 + 0x14]
cmp eax, 0x1000000
je 0x14003a950
mov dword [r14 + 0x3a0], 0
mov dword [rsi + 0x48e0], 0
xorps xmm0, xmm0
movups xmmword [r15 + 0x48e8], xmm0
mov eax, dword [r15 + 0x48e0]
test eax, eax
je 0x14003a988
cmp byte [r15 + 0x4916], 0
jne 0x14003a988
cmp qword [r15 + 0x4a60], 0
je 0x14003adee
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x14003a9a2
test byte [rax + 0x16], 4
je 0x14003a9a2
mov byte [r15 + 0x4916], 1
mov eax, dword [r15 + 0x4904]
test eax, eax
je 0x14003a9d0
mov dword [r15 + 0x48f0], eax
mov dword [r15 + 0x48ec], eax
mov dword [r15 + 0x48e8], eax
mov eax, dword [r15 + 0x4908]
mov dword [r15 + 0x48f4], eax
mov dword [r15 + 0x4904], 0
mov r14, qword [0x140205610]
mov ebp, dword [r14 + 8]
test bpl, 2
jne 0x14003a9f1
xor r13d, r13d
jmp 0x14003a9fa
movzx r13d, byte [r14 + 0xc]
and r13b, 1
mov rdi, qword [r14 + 0x48d8]
cmp byte [r14 + 0x4952], 0
je 0x14003aa36
test rdi, rdi
je 0x14003aa36
test byte [r14 + 0x5ce4], 8
je 0x14003abe3
mov edx, dword [r14 + 0x4960]
lea rcx, str._nav__NavMoveRequestForward__d_n
call fcn.14002fb80
jmp 0x14003abe3
mov dword [r14 + 0x4960], 0xffffffff
mov qword [r14 + 0x4954], 0
test rdi, rdi
je 0x14003ac50
mov r12d, 0xffffffff
cmp qword [r14 + 0x4a60], 0
jne 0x14003abcd
test byte [rdi + 0x16], 4
jne 0x14003abcd
mov esi, dword [r14 + 0x4768]
test sil, 1
jne 0x14003aad1
test r13b, r13b
je 0x14003aa9e
mov ecx, 0x26f
mov edx, 0xffffffff
mov r8d, 5
call fcn.140048c30
test al, al
jne 0x14003aac3
test bpl, 1
je 0x14003aad1
mov r12d, 0xffffffff
mov ecx, 0x201
mov edx, 0xffffffff
mov r8d, 5
call fcn.140048c30
test al, al
je 0x14003aad1
mov dword [r14 + 0x4960], 0
xor r12d, r12d
test sil, 2
jne 0x14003ab25
test r13b, r13b
je 0x14003aaf5
mov ecx, 0x270
mov edx, 0xffffffff
mov r8d, 5
call fcn.140048c30
test al, al
jne 0x14003ab14
test bpl, 1
je 0x14003ab25
mov ecx, 0x202
mov edx, 0xffffffff
mov r8d, 5
call fcn.140048c30
test al, al
je 0x14003ab25
mov dword [r14 + 0x4960], 1
mov r12d, 1
test sil, 4
jne 0x14003ab79
test r13b, r13b
je 0x14003ab49
mov ecx, 0x271
mov edx, 0xffffffff
mov r8d, 5
call fcn.140048c30
test al, al
jne 0x14003ab68
test bpl, 1
je 0x14003ab79
mov ecx, 0x203
mov edx, 0xffffffff
mov r8d, 5
call fcn.140048c30
test al, al
je 0x14003ab79
mov dword [r14 + 0x4960], 2
mov r12d, 2
test sil, 8
jne 0x14003abcd
test r13b, r13b
je 0x14003ab9d
mov ecx, 0x272
mov edx, 0xffffffff
mov r8d, 5
call fcn.140048c30
test al, al
jne 0x14003abbc
test bpl, 1
je 0x14003abcd
mov ecx, 0x204
mov edx, 0xffffffff
mov r8d, 5
call fcn.140048c30
test al, al
je 0x14003abcd
mov dword [r14 + 0x4960], 3
mov r12d, 3
mov dword [r14 + 0x4968], r12d
movaps xmm0, xmmword [0x14010f430]
movups xmmword [r14 + 0x497c], xmm0
cmp dword [r14 + 0x4960], 0xffffffff
xorps xmm6, xmm6
jne 0x14003ac6d
and ebp, 1
je 0x14003ac6d
mov r13, qword [0x140205610]
mov r12, qword [r13 + 0x48d8]
test byte [r12 + 0x16], 4
jne 0x14003ac6d
cmp qword [r13 + 0x4a60], 0
jne 0x14003ac6d
cmp byte [r13 + 0x2e7c], 0
je 0x14003ac3b
cmp byte [r13 + 0x476c], 0
je 0x14003b32d
cmp dword [r13 + 0x3f58], 0xffffffff
je 0x14003b32d
xor esi, esi
cmp byte [r13 + 0x2e8c], 0
jne 0x14003b343
jmp 0x14003b357
mov dword [r14 + 0x4968], 0xffffffff
movaps xmm0, xmmword [0x14010f430]
movups xmmword [r14 + 0x497c], xmm0
xorps xmm6, xmm6
mov byte [r14 + 0x4952], 0
mov ecx, dword [r14 + 0x4960]
cmp ecx, 0xffffffff
je 0x14003ad94
mov edx, dword [r14 + 0x4954]
mov r8d, dword [r14 + 0x4958]
mov r9d, dword [r14 + 0x4968]
mov rax, qword [0x140205610]
mov r10d, edx
shr r10d, 6
and r10d, 0x10
or r10d, edx
mov word [rax + 0x4951], 1
mov byte [rax + 0x4950], 1
mov dword [rax + 0x4960], ecx
mov dword [rax + 0x4964], ecx
mov dword [rax + 0x4968], r9d
mov dword [rax + 0x4954], r10d
mov dword [rax + 0x4958], r8d
mov ecx, dword [rax + 0xe28]
mov dword [rax + 0x495c], ecx
mov dword [rax + 0x49b8], 0
xorps xmm0, xmm0
movups xmmword [rax + 0x4998], xmm0
mov dword [rax + 0x49c4], 0x7f7fffff
movsd xmm1, qword [0x14010f3b0]
movsd qword [rax + 0x49bc], xmm1
mov dword [rax + 0x49e8], 0
movups xmmword [rax + 0x49c8], xmm0
mov dword [rax + 0x49f4], 0x7f7fffff
movsd qword [rax + 0x49ec], xmm1
mov dword [rax + 0x4a18], 0
movups xmmword [rax + 0x49f8], xmm0
mov dword [rax + 0x4a24], 0x7f7fffff
movsd qword [rax + 0x4a1c], xmm1
mov dword [rax + 0x4994], 0
mov dword [rax + 0x4a48], 0
movups xmmword [rax + 0x4a28], xmm0
mov dword [rax + 0x4a54], 0x7f7fffff
movsd qword [rax + 0x4a4c], xmm1
mov byte [rax + 0x4918], 1
cmp byte [r14 + 0x4950], 0
je 0x14003b042
cmp dword [r14 + 0x48e0], 0
jne 0x14003ae8d
test byte [r14 + 0x5ce4], 8
jne 0x14003addc
mov word [r14 + 0x4919], 0x101
mov dword [r14 + 0x4928], 0
mov byte [r14 + 0x4916], 0
jmp 0x14003ae8d
mov r8d, dword [r14 + 0x4910]
test rdi, rdi
je 0x14003ae4f
mov rdx, qword [rdi + 8]
jmp 0x14003ae56
mov rcx, qword [r15 + 0x48d8]
test rcx, rcx
je 0x14003a9a2
test byte [rcx + 0x16], 4
jne 0x14003a988
test bpl, 1
je 0x14003b3b5
mov r8, qword [0x140205610]
cmp byte [r8 + 0x2eec], 0
je 0x14003b617
movzx ecx, byte [r8 + 0x4038]
test cl, cl
setne dl
test byte [rsp + 0x28], dl
jne 0x14003b622
test cl, cl
je 0x14003b82d
xor ecx, ecx
xor edx, edx
jmp 0x14003b648
lea rdx, str._NULL_
lea rcx, str._nav__NavInitRequest:_from_move__window___s___layer_d_n
call fcn.14002fb80
mov word [r14 + 0x4919], 0x101
mov dword [r14 + 0x4928], 0
mov byte [r14 + 0x4916], 0
cmp byte [r14 + 0x4950], 0
je 0x14003b042
cmp dword [r14 + 0x490c], 3
jne 0x14003b042
cmp dword [r14 + 0x4910], 0
jne 0x14003b042
test rdi, rdi
je 0x14003b042
movd xmm0, dword [r14 + 0x4954]
pshufd xmm7, xmm0, 0x50
pand xmm7, xmmword [0x14010f450]
movsd xmm10, qword [rdi + 0x110]
movsd xmm9, qword [rdi + 0x1f8]
movsd xmm8, qword [rdi + 0x200]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.140046d20
pshufd xmm0, xmm7, 0x50
xorps xmm1, xmm1
pcmpeqd xmm1, xmm0
movmskpd eax, xmm1
test eax, eax
je 0x14003b047
addps xmm8, xmmword [0x14010c490]
addps xmm9, xmmword [0x14010c5e0]
movaps xmm0, xmm8
subps xmm0, xmm10
movaps xmm11, xmm9
subps xmm11, xmm10
movsd xmm10, qword [rsp + 0x50]
movsd xmm1, qword [rdi + 0x84]
subps xmm10, xmm1
addps xmm11, xmm10
addps xmm10, xmm0
ucomiss xmm11, dword [rdi + 0x3a8]
ja 0x14003af7f
movaps xmm0, xmm11
shufps xmm0, xmm11, 0x55
ucomiss xmm0, dword [rdi + 0x3ac]
ja 0x14003af7f
ucomiss xmm10, dword [rdi + 0x3b0]
jb 0x14003af7f
movaps xmm0, xmm10
shufps xmm0, xmm10, 0x55
ucomiss xmm0, dword [rdi + 0x3b4]
jae 0x14003b047
test byte [r14 + 0x5ce4], 8
je 0x14003af95
lea rcx, str._nav__NavMoveRequest:_clamp_NavRectRel_for_gamepad_move_n
call fcn.14002fb80
mov rax, qword [rdi]
movss xmm0, dword [rdi + 0x290]
mulss xmm0, dword [rax + 0x3c24]
mov rax, qword [rdi + 0x368]
mulss xmm0, dword [0x14010c4c0]
test rax, rax
je 0x14003afc4
mulss xmm0, dword [rax + 0x290]
xorps xmm1, xmm1
pcmpeqd xmm7, xmm1
subps xmm8, xmm9
movsxd rax, dword [r14 + 0x4910]
shl rax, 4
shufps xmm0, xmm0, 0
minps xmm0, xmm8
addps xmm11, xmm0
andps xmm11, xmm7
movaps xmm1, xmm7
andnps xmm1, xmmword [0x14010f460]
orps xmm1, xmm11
pshufd xmm1, xmm1, 0x44
subps xmm10, xmm0
andps xmm10, xmm7
andnps xmm7, xmmword [0x14010f3b0]
orps xmm7, xmm10
pshufd xmm0, xmm7, 0x44
movups xmm2, xmmword [rdi + rax + 0x3a8]
minps xmm0, xmm2
cmpltps xmm2, xmm1
andps xmm1, xmm2
andnps xmm2, xmm0
orps xmm2, xmm1
movups xmmword [rdi + rax + 0x3a8], xmm2
mov dword [r14 + 0x48e0], 0
jmp 0x14003b047
test rdi, rdi
je 0x14003b0a2
movsxd rax, dword [r14 + 0x4910]
mov rcx, rax
shl rcx, 4
movss xmm4, dword [rdi + rcx + 0x3a8]
movss xmm5, dword [rdi + rcx + 0x3b0]
ucomiss xmm4, xmm5
xorps xmm3, xmm3
ja 0x14003b0b3
movss xmm7, dword [rdi + rcx + 0x3ac]
movss xmm8, dword [rdi + rcx + 0x3b4]
ucomiss xmm7, xmm8
pxor xmm0, xmm0
xorpd xmm1, xmm1
xorps xmm2, xmm2
ja 0x14003b0be
movaps xmm3, xmm8
movaps xmm0, xmm5
movaps xmm1, xmm7
movaps xmm2, xmm4
jmp 0x14003b0be
xorps xmm2, xmm2
xorps xmm1, xmm1
xorps xmm0, xmm0
xorps xmm6, xmm6
jmp 0x14003b1cd
pxor xmm0, xmm0
xorpd xmm1, xmm1
xorps xmm2, xmm2
movss xmm4, dword [rdi + 0x110]
addss xmm0, xmm4
addss xmm2, xmm4
addss xmm6, dword [rdi + 0x114]
addss xmm1, xmm6
addss xmm6, xmm3
cmp byte [r14 + 0x4950], 0
je 0x14003b1cd
mov edx, dword [r14 + 0x4960]
mov rcx, qword [rdi + 0x390]
mov r8, qword [0x140205610]
mov r8, qword [r8 + 0x48d8]
movss xmm4, dword [r8 + 0x110]
movss xmm3, dword [r8 + 0x114]
test byte [r14 + 0x4954], 0x80
jne 0x14003b179
movss xmm5, dword [0x14010f300]
ucomiss xmm5, dword [rcx + rax*8 + 0x3c8]
jne 0x14003b153
movss xmm7, dword [0x14010be30]
addss xmm7, xmm2
minss xmm7, xmm0
subss xmm7, xmm4
movss dword [rcx + rax*8 + 0x3c8], xmm7
ucomiss xmm5, dword [rcx + rax*8 + 0x3cc]
jne 0x14003b179
movaps xmm5, xmm6
addss xmm5, xmm1
mulss xmm5, dword [0x14010c4c0]
subss xmm5, xmm3
movss dword [rcx + rax*8 + 0x3cc], xmm5
mov r8d, edx
and r8d, 0xfffffffe
cmp r8d, 2
jne 0x14003b1a8
movss xmm3, dword [rcx + rax*8 + 0x3c8]
movss xmm5, dword [0x14010f300]
ucomiss xmm5, xmm3
je 0x14003b1cd
addss xmm3, xmm4
movaps xmm2, xmm3
movaps xmm0, xmm3
jmp 0x14003b1cd
cmp edx, 1
ja 0x14003b1cd
movss xmm4, dword [rcx + rax*8 + 0x3cc]
movss xmm5, dword [0x14010f300]
ucomiss xmm5, xmm4
je 0x14003b1cd
addss xmm4, xmm3
movaps xmm1, xmm4
movaps xmm6, xmm4
movss dword [r14 + 0x496c], xmm2
movss dword [r14 + 0x4970], xmm1
movss dword [r14 + 0x4974], xmm0
movss dword [r14 + 0x4978], xmm6
ucomiss xmm2, dword [r14 + 0x497c]
jae 0x14003b23b
movss dword [r14 + 0x497c], xmm2
ucomiss xmm1, dword [r14 + 0x4980]
jb 0x14003b245
ucomiss xmm0, dword [r14 + 0x4984]
jbe 0x14003b258
movss dword [r14 + 0x4984], xmm0
ucomiss xmm6, dword [r14 + 0x4988]
ja 0x14003b262
cmp dword [r15 + 0x4960], 0xffffffff
jne 0x14003bc8c
jmp 0x14003b279
ucomiss xmm1, dword [r14 + 0x4980]
jae 0x14003b20e
movss dword [r14 + 0x4980], xmm1
ucomiss xmm0, dword [r14 + 0x4984]
ja 0x14003b218
ucomiss xmm6, dword [r14 + 0x4988]
jbe 0x14003b22b
movss dword [r14 + 0x4988], xmm6
cmp dword [r15 + 0x4960], 0xffffffff
jne 0x14003bc8c
mov rsi, qword [0x140205610]
mov rdi, qword [rsi + 0x48d8]
test rdi, rdi
je 0x14003bc8c
cmp qword [rsi + 0x4a60], 0
jne 0x14003bc8c
test byte [rdi + 0x16], 4
jne 0x14003bc8c
cmp byte [rsi + 0x2e2c], 0
je 0x14003bc8c
movss xmm0, dword [rsi + 0x2e30]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003bc8c
ucomiss xmm0, xmm1
jne 0x14003b67e
cmp byte [rsi + 0x476c], 0
je 0x14003b2e8
cmp dword [rsi + 0x3f58], 0xffffffff
jne 0x14003bc8c
cmp dword [rsi + 0x3fa0], 0xffffffff
jne 0x14003bc8c
cmp byte [rsi + 0xe24], 0
jne 0x14003bc8c
cmp byte [rsi + 0xe26], 0
jne 0x14003bc8c
test byte [rsi + 8], 1
movzx eax, byte [rsi + 0xe25]
jne 0x14003bc28
test al, al
jne 0x14003bc2c
jmp 0x14003bc45
cmp dword [r13 + 0x3fdc], 0xffffffff
sete sil
cmp byte [r13 + 0x2e8c], 0
je 0x14003b357
cmp byte [r13 + 0x476c], 0
je 0x14003b368
cmp dword [r13 + 0x3f58], 0xffffffff
je 0x14003b368
xor ebp, ebp
cmp byte [r13 + 0x2e9c], 0
jne 0x14003b37e
jmp 0x14003b3eb
cmp dword [r13 + 0x3fe8], 0xffffffff
sete bpl
cmp byte [r13 + 0x2e9c], 0
je 0x14003b3eb
movss xmm0, dword [r13 + 0x2ea0]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003b3eb
ucomiss xmm0, xmm1
jne 0x14003b3cc
cmp byte [r13 + 0x476c], 0
je 0x14003b3a8
cmp dword [r13 + 0x3f58], 0xffffffff
jne 0x14003b3eb
cmp dword [r13 + 0x3ff4], 0xffffffff
sete cl
jmp 0x14003b3ed
cmp byte [rsp + 0x28], 0
je 0x14003b601
mov r8, qword [0x140205610]
jmp 0x14003b622
movss xmm1, dword [r13 + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003b3eb
movss xmm2, dword [r13 + 0x40]
mov ecx, 0x207
call fcn.140048500
test eax, eax
jg 0x14003b394
xor ecx, ecx
cmp byte [r13 + 0x2eac], 0
je 0x14003b455
movss xmm0, dword [r13 + 0x2eb0]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003b455
ucomiss xmm0, xmm1
jne 0x14003b42e
cmp byte [r13 + 0x476c], 0
je 0x14003b421
cmp dword [r13 + 0x3f58], 0xffffffff
jne 0x14003b455
cmp dword [r13 + 0x4000], 0xffffffff
sete dl
jmp 0x14003b457
movss xmm1, dword [r13 + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003b455
movss xmm2, dword [r13 + 0x40]
mov dword [rsp + 0x34], ecx
mov ecx, 0x208
call fcn.140048500
mov ecx, dword [rsp + 0x34]
test eax, eax
jg 0x14003b40d
xor edx, edx
cmp sil, bpl
jne 0x14003b466
mov eax, ecx
xor al, dl
je 0x14003ac6d
cmp dword [r13 + 0x4910], 0
je 0x14003b47f
mov esi, ecx
xor ecx, ecx
mov ebp, edx
call fcn.14004dfd0
mov edx, ebp
mov ecx, esi
cmp word [r12 + 0x15c], 0
je 0x14003b554
movsxd rbp, dword [r13 + 0x4910]
shl rbp, 4
lea r8, [r12 + rbp]
add r8, 0x3a8
movss xmm6, dword [r12 + 0x204]
movss xmm0, dword [r12 + 0x1fc]
mov rax, qword [r12]
movss xmm1, dword [r12 + 0x290]
mulss xmm1, dword [rax + 0x3c24]
mov rax, qword [r12 + 0x368]
test rax, rax
je 0x14003b4e4
mulss xmm1, dword [rax + 0x290]
addss xmm0, xmm1
addss xmm6, dword [r12 + rbp + 0x3b4]
addss xmm0, dword [r8 + 4]
subss xmm6, xmm0
xorps xmm1, xmm1
maxss xmm6, xmm1
mov rsi, qword [0x140205610]
cmp byte [rsi + 0x2e7c], 0
je 0x14003b76f
movss xmm0, dword [rsi + 0x2e80]
ucomiss xmm1, xmm0
ja 0x14003b76f
ucomiss xmm0, xmm1
jne 0x14003b734
cmp byte [rsi + 0x3fe4], 0
jne 0x14003b76f
xorps xmm6, xmmword [0x14010cbf0]
mov eax, 2
mov ecx, 3
jmp 0x14003b7b0
cmp byte [r12 + 0x162], 0
je 0x14003b48f
mov r13d, edx
mov ebp, ecx
mov rsi, qword [0x140205610]
cmp byte [rsi + 0x2e7c], 0
je 0x14003bb1c
movss xmm0, dword [rsi + 0x2e80]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003bb1c
ucomiss xmm0, xmm1
jne 0x14003bafb
cmp byte [rsi + 0x476c], 0
je 0x14003b5af
cmp dword [rsi + 0x3f58], 0xffffffff
jne 0x14003bb1c
cmp dword [rsi + 0x3fdc], 0xffffffff
jne 0x14003bb1c
movss xmm0, dword [r12 + 0x88]
subss xmm0, dword [r12 + 0x204]
addss xmm0, dword [r12 + 0x1fc]
movss dword [r12 + 0x98], xmm0
mov dword [r12 + 0xa0], 0
mov dword [r12 + 0xa8], 0
jmp 0x14003ac6a
xor edx, edx
mov r8d, dword [r15 + 0x3f58]
xor r9d, r9d
mov ecx, 0
jmp 0x14003b971
cmp byte [rsp + 0x28], 0
je 0x14003b945
cmp byte [r8 + 0x350c], 0
je 0x14003b63a
cmp byte [r8 + 0x44d0], 0
je 0x14003b815
xor edx, edx
xor ecx, ecx
test bpl, 1
je 0x14003b9ec
cmp byte [r8 + 0x2efc], 0
je 0x14003b9ec
movzx r9d, byte [r8 + 0x4044]
test r9b, r9b
setne r10b
test byte [rsp + 0x28], r10b
jne 0x14003b9f3
test r9b, r9b
jne 0x14003ba0b
jmp 0x14003bbb5
movss xmm1, dword [rsi + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003bc8c
movss xmm2, dword [rsi + 0x40]
mov ecx, 0x200
call fcn.140048500
test eax, eax
jg 0x14003b2d2
jmp 0x14003bc8c
mov edi, 0x28b
jmp 0x140039b53
mov edi, 0x28a
jmp 0x140039b53
mov ebx, 0x28b
jmp 0x140039be1
mov ebx, 0x28a
jmp 0x140039be1
movzx eax, byte [r12 + 0x79]
lea edi, [rax + rax*2]
or edi, 0x288
jmp 0x140039b53
movzx eax, byte [rsi + 0x79]
lea ebx, [rax + rax*2]
or ebx, 0x288
jmp 0x140039be1
cmpltps xmm3, xmm2
cmpleps xmm2, xmm1
andps xmm2, xmm3
movd ecx, xmm2
and ecx, 1
test ecx, ecx
jg 0x140039eea
jmp 0x140039ea3
cmpltps xmm3, xmm2
cmpleps xmm2, xmm1
andps xmm2, xmm3
movd edx, xmm2
and edx, 1
test edx, edx
jg 0x140039f1d
jmp 0x140039f10
movss xmm1, dword [rsi + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003b76f
movss xmm2, dword [rsi + 0x40]
mov dword [rsp + 0x34], ecx
mov ecx, 0x205
mov dword [rsp + 0x3c], edx
mov qword [rsp + 0x40], r8
call fcn.140048500
mov r8, qword [rsp + 0x40]
mov edx, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x34]
test eax, eax
jg 0x14003b531
cmp byte [rsi + 0x2e8c], 0
je 0x14003b889
movss xmm0, dword [rsi + 0x2e90]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003b889
ucomiss xmm0, xmm1
jne 0x14003b84e
cmp byte [rsi + 0x3ff0], 0
jne 0x14003b889
mov eax, 3
mov ecx, 2
mov dword [r13 + 0x4960], ecx
mov dword [r13 + 0x4968], eax
mov dword [r13 + 0x4954], 0x30
xorps xmm0, xmm0
ucomiss xmm6, xmm0
je 0x14003ac6d
movups xmm0, xmmword [rdi + 0x1f8]
movups xmmword [r14 + 0x497c], xmm0
movss xmm0, dword [r14 + 0x4980]
addss xmm0, xmm6
movss dword [r14 + 0x4980], xmm0
movss xmm0, dword [r14 + 0x4988]
addss xmm0, xmm6
movss dword [r14 + 0x4988], xmm0
jmp 0x14003ac6d
test bpl, 1
je 0x14003b98c
cmp byte [r8 + 0x2eec], 0
je 0x14003b99b
xorps xmm0, xmm0
ucomiss xmm0, dword [r8 + 0x2ef0]
jne 0x14003b99b
cmp byte [r8 + 0x4038], 0
sete cl
jmp 0x14003b99d
movss xmm1, dword [rsi + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003b889
movss xmm2, dword [rsi + 0x40]
mov dword [rsp + 0x34], ecx
mov ecx, 0x206
mov dword [rsp + 0x3c], edx
mov qword [rsp + 0x40], r8
call fcn.140048500
mov r8, qword [rsp + 0x40]
mov edx, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x34]
test eax, eax
jg 0x14003b799
lea rax, [r12 + rbp]
add rax, 0x3b4
test cl, cl
je 0x14003b8e7
mov dword [rax], 0
mov dword [r8 + 4], 0
movss xmm0, dword [r8]
ucomiss xmm0, dword [r12 + rbp + 0x3b0]
jbe 0x14003b8cc
lea rax, [r12 + rbp]
add rax, 0x3b0
mov dword [rax], 0
mov dword [r8], 0
mov dword [r13 + 0x4960], 3
mov dword [r13 + 0x4954], 0x50
jmp 0x14003ac6a
xorps xmm6, xmm6
test dl, dl
je 0x14003ac6d
movss xmm0, dword [r12 + 0x3c]
movss dword [rax], xmm0
movss dword [r8 + 4], xmm0
movss xmm0, dword [r8]
ucomiss xmm0, dword [r12 + rbp + 0x3b0]
jbe 0x14003b92a
lea rax, [r12 + rbp]
add rax, 0x3b0
mov dword [rax], 0
mov dword [r8], 0
mov dword [r13 + 0x4960], 2
mov dword [r13 + 0x4954], 0x50
jmp 0x14003ac6d
cmp byte [r8 + 0x2efc], 0
je 0x14003b95d
cmp byte [r8 + 0x4044], 0
je 0x14003bbb1
mov r8d, dword [r15 + 0x3f58]
xor r9d, r9d
mov ecx, 0
mov edx, 0
mov r10d, 0
test r8d, r8d
jne 0x14003ba65
jmp 0x14003ba93
xor ecx, ecx
jmp 0x14003a122
mov dl, 1
cmp byte [rsp + 0x28], 0
je 0x14003b603
jmp 0x14003b9c4
xor ecx, ecx
mov dl, 1
test cl, cl
jne 0x14003b648
mov r9d, dword [rsp + 0x28]
xor r9b, 1
jne 0x14003b648
cmp byte [r8 + 0x350c], 0
je 0x14003bc21
mov dl, 1
xorps xmm0, xmm0
ucomiss xmm0, dword [r8 + 0x3510]
jne 0x14003b63c
cmp byte [r8 + 0x44d0], 0
sete cl
test bpl, 1
jne 0x14003b648
cmp byte [rsp + 0x28], 0
je 0x14003ba0b
cmp byte [r8 + 0x34fc], 0
je 0x14003ba0b
cmp byte [r8 + 0x44c4], 0
je 0x14003bade
xor r10d, r10d
xor r9d, r9d
mov r8d, dword [r15 + 0x3f58]
test cl, cl
je 0x14003ba3c
test r8d, r8d
jne 0x14003ba3c
mov dword [r15 + 0x48e8], eax
mov dword [r15 + 0x48f4], 2
test r9b, r9b
jne 0x14003ba79
mov cl, 1
jmp 0x14003ba90
test r8d, r8d
je 0x14003ba74
cmp r8d, eax
sete r11b
test r9b, r11b
je 0x14003ba65
mov dword [r15 + 0x48e8], eax
mov dword [r15 + 0x48f4], 1
mov r9b, 1
mov r8d, eax
or dl, r10b
cmp dl, 1
jne 0x14003baaf
cmp r8d, eax
je 0x14003ba9c
jmp 0x14003baaf
test r9b, r9b
je 0x14003ba90
mov dword [r15 + 0x48e8], eax
mov dword [r15 + 0x48f4], 1
mov r9b, 1
jmp 0x14003ba93
xor r9d, r9d
test dl, dl
jne 0x14003ba9c
test r10b, r10b
je 0x14003bac5
mov dword [r15 + 0x48ec], eax
mov r8d, dword [r15 + 0x3f58]
test r8d, r8d
je 0x14003bac5
or cl, r9b
cmp cl, 1
jne 0x14003a988
cmp r8d, eax
je 0x14003bad2
jmp 0x14003a988
test r9b, r9b
jne 0x14003bad2
test cl, cl
je 0x14003a988
mov dword [r15 + 0x48f0], eax
jmp 0x14003a988
test bpl, 1
je 0x14003bba2
cmp byte [r8 + 0x2efc], 0
jne 0x14003bbb5
jmp 0x14003bbd0
movss xmm1, dword [rsi + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003bb1c
movss xmm2, dword [rsi + 0x40]
mov ecx, 0x205
call fcn.140048500
test eax, eax
jg 0x14003b599
mov ecx, 0x206
mov edx, 0xffffffff
mov r8d, 1
call fcn.140048c30
test al, al
je 0x14003bb55
movss xmm0, dword [r12 + 0x204]
addss xmm0, dword [r12 + 0x88]
subss xmm0, dword [r12 + 0x1fc]
jmp 0x14003bb7b
test bpl, bpl
je 0x14003bb68
mov dword [r12 + 0x98], 0
jmp 0x14003bb85
test r13b, r13b
je 0x14003ac6d
movss xmm0, dword [r12 + 0x90]
movss dword [r12 + 0x98], xmm0
mov dword [r12 + 0xa0], 0
mov dword [r12 + 0xa8], 0
jmp 0x14003ac6d
cmp byte [rsp + 0x28], 0
jne 0x14003bbfc
mov r10b, 1
jmp 0x14003ba0e
xor edx, edx
xor ecx, ecx
xorps xmm0, xmm0
ucomiss xmm0, dword [r8 + 0x2f00]
jne 0x14003bbd0
cmp byte [r8 + 0x4044], 0
sete r9b
jmp 0x14003bbd3
xor r9d, r9d
mov r10b, 1
test r9b, r9b
jne 0x14003ba11
mov r11d, dword [rsp + 0x28]
xor r11b, 1
jne 0x14003ba11
cmp byte [r8 + 0x34fc], 0
je 0x14003ba0e
mov r10b, 1
xorps xmm0, xmm0
ucomiss xmm0, dword [r8 + 0x3500]
jne 0x14003ba0e
cmp byte [r8 + 0x44c4], 0
sete r9b
jmp 0x14003ba11
xor ecx, ecx
jmp 0x14003b648
test al, al
je 0x14003bc38
mov edx, 2
mov eax, 0xffffffff
jmp 0x14003bc56
cmp byte [rsi + 0x4916], 0
je 0x14003d46b
xor eax, eax
cmp dword [rsi + 0x3f58], 0
setne al
mov edx, 3
mov dword [rsi + 0x4990], eax
cmp byte [rdi + 0xbc], 0
mov eax, 3
mov r9d, 0x21
cmove r9d, eax
mov ecx, 0xffffffff
mov r8d, 0x400
call fcn.1400477e0
mov dword [rsi + 0x4994], 0xffffffff
mov rax, qword [0x140205610]
mov cl, 1
cmp byte [rax + 0x4951], 0
jne 0x14003bca5
movzx ecx, byte [rax + 0x4919]
mov byte [rax + 0x4918], cl
mov byte [r15 + 0x4914], 0
mov rcx, qword [r15 + 0x48d8]
test rcx, rcx
je 0x14003be3f
test byte [rcx + 0x16], 4
jne 0x14003be3f
cmp qword [r15 + 0x4a60], 0
jne 0x14003be3f
mov rdx, qword [rcx]
movss xmm0, dword [rcx + 0x290]
mulss xmm0, dword [rdx + 0x3c24]
mov rdx, qword [rcx + 0x368]
test rdx, rdx
je 0x14003bd02
mulss xmm0, dword [rdx + 0x290]
mulss xmm0, dword [0x14010c794]
mulss xmm0, dword [r15 + 0x18]
addss xmm0, dword [0x14010c4c0]
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
cmp word [rcx + 0x15c], 0
je 0x14003bd82
cmp byte [rsp + 0x28], 0
je 0x14003be3f
movss xmm3, dword [rax + 0x35d8]
movss xmm1, dword [rax + 0x35f8]
subss xmm3, dword [rax + 0x35c8]
cmp byte [rax + 0x355c], 0
je 0x14003bd5e
cmp byte [rax + 0x450c], 0
je 0x14003bdb0
movss xmm2, dword [0x14010be30]
cmp byte [rax + 0x356c], 0
je 0x14003bdb8
cmp byte [rax + 0x4518], 0
jne 0x14003bdb8
movss xmm2, dword [0x14010c9a8]
jmp 0x14003bdb8
cmp byte [rcx + 0x162], 0
je 0x14003bd29
mov edx, dword [r15 + 0x4960]
cmp edx, 0xffffffff
je 0x14003bd29
cmp edx, 1
ja 0x14003d40d
test edx, edx
je 0x14003d3d8
movaps xmm1, xmm0
jmp 0x14003d3e2
movss xmm2, dword [0x14010f470]
subss xmm1, dword [rax + 0x35e8]
xorps xmm4, xmm4
ucomiss xmm3, xmm4
je 0x14003be07
cmp byte [rcx + 0xb4], 0
je 0x14003be07
movaps xmm5, xmm2
mulss xmm5, xmm0
mulss xmm5, xmm3
addss xmm5, dword [rcx + 0x84]
cvttps2dq xmm3, xmm5
cvtdq2ps xmm3, xmm3
movss dword [rcx + 0x94], xmm3
mov dword [rcx + 0x9c], 0
mov dword [rcx + 0xa4], 0
ucomiss xmm1, xmm4
je 0x14003be3f
mulss xmm2, xmm0
mulss xmm2, xmm1
addss xmm2, dword [rcx + 0x88]
cvttps2dq xmm0, xmm2
cvtdq2ps xmm0, xmm0
movss dword [rcx + 0x98], xmm0
mov dword [rcx + 0xa0], 0
mov dword [rcx + 0xa8], 0
test bl, 1
je 0x14003be87
cmp byte [rsp + 0x38], 0
je 0x14003be91
test byte [r15 + 8], 4
je 0x14003be91
test byte [r15 + 0xc], 4
je 0x14003be91
lea rcx, [rsp + 0x50]
call fcn.14004a1f0
mov rax, qword [rsp + 0x50]
mov qword [r15 + 0x36f0], rax
mov qword [r15 + 0xe08], rax
mov byte [r15 + 0xdb], 1
mov rax, qword [0x140205610]
jmp 0x14003be91
mov word [r15 + 0x4916], 1
mov dword [r15 + 0x498c], 0
cmp byte [rax + 0xe25], 0
je 0x14003beae
movzx ecx, byte [rax + 0x79]
xor cl, 1
jmp 0x14003beb0
xor ecx, ecx
mov r15, qword [rsp + 0x48]
mov byte [rax + 0x3775], cl
movsd xmm0, qword [rax + 0xe08]
ucomiss xmm0, dword [0x14010f420]
jb 0x14003bf06
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
ucomiss xmm1, dword [0x14010f420]
jb 0x14003bf06
xorps xmm1, xmm1
cvttps2dq xmm2, xmm0
cvtdq2ps xmm3, xmm2
cmpneqps xmm3, xmm0
cmpltps xmm0, xmm1
andps xmm3, xmm0
paddd xmm3, xmm2
cvtdq2ps xmm0, xmm3
movlps qword [rax + 0x4c20], xmm0
movlps qword [rax + 0xe08], xmm0
ucomiss xmm0, dword [0x14010f420]
jb 0x14003bf71
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
ucomiss xmm1, dword [0x14010f420]
jb 0x14003bf71
movsd xmm1, qword [rax + 0x36f0]
ucomiss xmm1, dword [0x14010f420]
jb 0x14003bf71
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
ucomiss xmm2, dword [0x14010f420]
jb 0x14003bf71
subps xmm0, xmm1
movlps qword [rax + 0xf8], xmm0
xorps xmm1, xmm1
movaps xmm2, xmm0
cmpneqps xmm2, xmm1
shufps xmm0, xmm0, 0x55
cmpneqps xmm0, xmm1
orps xmm0, xmm2
movd ecx, xmm0
test cl, 1
je 0x14003bf7c
mov byte [rax + 0x4917], 0
jmp 0x14003bf7c
mov qword [rax + 0xf8], 0
mov rcx, qword [rax + 0xe08]
movq xmm0, rcx
mov qword [rax + 0x36f0], rcx
movss xmm1, dword [0x14010f420]
movaps xmm2, xmm1
cmpleps xmm2, xmm0
pshufd xmm3, xmm0, 0x55
cmpleps xmm1, xmm3
andps xmm1, xmm2
movd edx, xmm1
mov r8d, 0x3748
mov r9d, 0x3766
mov r10d, 0x3752
xor r11d, r11d
xorps xmm1, xmm1
jmp 0x14003bfea
inc r11
inc r8
inc r9
add r10, 2
cmp r8, 0x374d
je 0x14003c1c2
cmp byte [rax + r9 - 0x2956], 0
je 0x14003c0d0
movss xmm2, dword [rax + r8*4 - 0xa5a8]
xorps xmm3, xmm3
ucomiss xmm3, xmm2
seta byte [rax + r9 - 0x1e]
mov word [rax + r8*2 - 0x373e], 0
mov byte [rax + r9], 0
movss xmm4, dword [rax + r8*4 - 0xa5a8]
movss dword [rax + r8*4 - 0xa594], xmm4
ucomiss xmm3, xmm4
ja 0x14003c040
addss xmm4, dword [rax + 0x18]
movaps xmm3, xmm4
lea rsi, [rax + r11]
add rsi, 0x3748
lea rdi, [rax + r11*2]
add rdi, 0x3752
ucomiss xmm2, xmm1
movss dword [rax + r8*4 - 0xa5a8], xmm3
jae 0x14003c120
movsd xmm2, qword [rax + 0x3e48]
subsd xmm2, qword [rax + r8*8 - 0x18320]
cvtsd2ss xmm2, xmm2
ucomiss xmm2, dword [rax + 0x30]
jae 0x14003c160
xorps xmm2, xmm2
test dl, 1
je 0x14003c0a1
movsd xmm3, qword [rax + r8*8 - 0x18348]
movaps xmm2, xmm0
subps xmm2, xmm3
mulps xmm2, xmm2
movaps xmm3, xmm2
shufps xmm3, xmm2, 0x55
addss xmm3, xmm2
movss xmm2, dword [rax + 0x34]
mulss xmm2, xmm2
ucomiss xmm3, xmm2
jae 0x14003c160
inc word [rax + r8*2 - 0x3734]
jmp 0x14003c16b
mov byte [rax + r9 - 0x1e], 0
mov word [rax + r8*2 - 0x373e], 0
movss xmm2, dword [rax + r8*4 - 0xa5a8]
ucomiss xmm1, xmm2
setbe byte [rax + r9]
lea rsi, [rax + r8]
lea rdi, [rax + r10]
movss dword [rax + r8*4 - 0xa594], xmm2
mov dword [rax + r8*4 - 0xa5a8], 0xbf800000
jmp 0x14003c1a3
xorps xmm2, xmm2
test dl, 1
je 0x14003c146
movsd xmm2, qword [rax + r8*8 - 0x18348]
movaps xmm3, xmm0
subps xmm3, xmm2
mulps xmm3, xmm3
movaps xmm2, xmm3
shufps xmm2, xmm3, 0x55
addss xmm2, xmm3
maxss xmm2, dword [rax + r8*4 - 0xa580]
movss dword [rax + r8*4 - 0xa580], xmm2
jmp 0x14003c1a3
mov word [rax + r8*2 - 0x3734], 1
movsd xmm2, qword [rax + 0x3e48]
movsd qword [rax + r8*8 - 0x18320], xmm2
mov qword [rax + r8*8 - 0x18348], rcx
movzx ebx, word [rax + r8*2 - 0x3734]
mov word [rax + r8*2 - 0x373e], bx
mov dword [rax + r8*4 - 0xa580], 0
cmp word [rdi], 2
sete byte [rax + r9 - 0x19]
cmp byte [rsi], 0
je 0x14003bfd0
mov byte [rax + 0x4917], 0
jmp 0x14003bfd0
call fcn.140037fa0
call fcn.1400378e0
mov rbx, qword [0x140205610]
mov eax, dword [rbx + 0x48a0]
test eax, eax
jle 0x14003c212
mov rcx, qword [rbx + 0x48a8]
inc rax
jmp 0x14003c1f9
dec rax
cmp rax, 1
jbe 0x14003c212
lea edx, [rax - 2]
imul rdx, rdx, 0x38
mov rdx, qword [rcx + rdx + 8]
test rdx, rdx
je 0x14003c1f0
test byte [rdx + 0x17], 8
je 0x14003c1f0
jmp 0x14003c229
cmp qword [r15 + 0x4a60], 0
je 0x14003c253
xorps xmm0, xmm0
ucomiss xmm0, dword [r15 + 0x4a7c]
jae 0x14003c253
movss xmm0, dword [r15 + 0x18]
mulss xmm0, dword [0x14010c4f0]
addss xmm0, dword [r15 + 0x4a94]
minss xmm0, dword [0x14010be30]
movss dword [r15 + 0x4a94], xmm0
jmp 0x14003c27a
movss xmm0, dword [r15 + 0x18]
mulss xmm0, dword [0x14010f444]
addss xmm0, dword [r15 + 0x4a94]
xorps xmm1, xmm1
maxss xmm1, xmm0
movss dword [r15 + 0x4a94], xmm1
mov dword [r15 + 0x4a98], 0
mov dword [r15 + 0x5e5c], 0xffffffff
mov qword [r15 + 0x5e54], 0xffffffffffffffff
movups xmm0, xmmword [r15 + 0x5be8]
movups xmmword [r15 + 0x5bf8], xmm0
mov byte [r15 + 0x5be8], 0
mov rdi, qword [rbx + 0x3f18]
test rdi, rdi
je 0x14003c38d
movss xmm0, dword [rbx + 0x3f2c]
subss xmm0, dword [rbx + 0x18]
movss dword [rbx + 0x3f2c], xmm0
movsd xmm1, qword [rbx + 0xe08]
ucomiss xmm1, dword [0x14010f420]
jb 0x14003c320
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
ucomiss xmm2, dword [0x14010f420]
jb 0x14003c320
movsd xmm2, qword [rbx + 0x3f20]
subps xmm1, xmm2
mulps xmm1, xmm1
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
addss xmm2, xmm1
movss xmm1, dword [rbx + 0x38]
mulss xmm1, xmm1
ucomiss xmm2, xmm1
ja 0x14003c32b
xorps xmm1, xmm1
ucomiss xmm0, xmm1
mov r14, rbx
ja 0x14003c392
mov dword [rbx + 0x3f2c], 0
test byte [rbx + 0x5ce4], 0x40
mov r14, rbx
je 0x14003c35b
lea rcx, str._io__LockWheelingWindow_____s__n
lea rdx, [0x140110f04]
call fcn.14002fb80
mov r14, qword [0x140205610]
mov qword [rbx + 0x3f18], 0
mov rax, qword [rbx + 0xe08]
mov qword [rbx + 0x3f20], rax
mov dword [rbx + 0x3f28], 0xffffffff
mov qword [rbx + 0x3f38], 0
xor edi, edi
jmp 0x14003c392
xor edi, edi
mov r14, rbx
xorps xmm0, xmm0
cmp dword [r14 + 0x45e8], 0xffffffff
xorps xmm1, xmm1
je 0x14003c67b
cmp dword [r14 + 0x45f4], 0xffffffff
je 0x14003c691
mov rsi, rdi
test rdi, rdi
jne 0x14003c3c8
mov rsi, qword [rbx + 0x3f00]
test rsi, rsi
je 0x14003c3d5
cmp byte [rsi + 0xb9], 0
je 0x14003c69e
movss xmm6, dword [0x14010f300]
cmp byte [r15 + 0x3e5f], 0
jne 0x14003c40c
movss xmm0, dword [r15 + 0x80]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003c40c
movsd xmm1, qword [r15 + 0x3e48]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm1
subss xmm6, xmm0
cmp dword [r15 + 0x3e98], 0
je 0x14003c489
xor esi, esi
jmp 0x14003c42f
inc rsi
mov eax, dword [r15 + 0x3e98]
cmp rsi, rax
je 0x14003c489
mov rax, qword [r15 + 0x3ea0]
mov rcx, qword [rax + rsi*8]
movzx eax, byte [rcx + 0xb6]
mov byte [rcx + 0xb7], al
mov byte [rcx + 0xb6], 0
mov byte [rcx + 0xb8], 0
movzx edx, word [rcx + 0xc2]
mov word [rcx + 0xc4], dx
mov word [rcx + 0xc2], 0
test al, al
jne 0x14003c420
cmp byte [rcx + 0x3e4], 0
jne 0x14003c420
ucomiss xmm6, dword [rcx + 0x264]
jbe 0x14003c420
call fcn.1400367f0
jmp 0x14003c420
mov eax, dword [r15 + 0x4ba0]
test eax, eax
jle 0x14003c4e0
xor esi, esi
xorps xmm7, xmm7
xor edi, edi
jmp 0x14003c4b2
inc rdi
movsxd rcx, eax
add rsi, 0x238
cmp rdi, rcx
jge 0x14003c4e0
mov rcx, qword [r15 + 0x4ba8]
movss xmm0, dword [rcx + rdi*4]
ucomiss xmm7, xmm0
ja 0x14003c4a0
ucomiss xmm0, xmm6
jae 0x14003c4a0
mov rcx, qword [r15 + 0x4b80]
add rcx, rsi
call fcn.14006aae0
mov eax, dword [r15 + 0x4ba0]
jmp 0x14003c4a0
mov eax, dword [r15 + 0x4b68]
test eax, eax
jle 0x14003c537
xor esi, esi
xorps xmm7, xmm7
xor edi, edi
jmp 0x14003c50f
inc rdi
movsxd rcx, eax
add rsi, 0x70
cmp rdi, rcx
jge 0x14003c537
mov rcx, qword [r15 + 0x4b70]
movss xmm0, dword [rcx + rsi + 4]
ucomiss xmm7, xmm0
ja 0x14003c500
ucomiss xmm0, xmm6
jae 0x14003c500
add rcx, rsi
call fcn.14006abc0
mov eax, dword [r15 + 0x4b68]
jmp 0x14003c500
cmp byte [r15 + 0x3e5f], 0
je 0x14003c5c7
mov rsi, qword [0x140205610]
mov rcx, qword [rsi + 0x4888]
test rcx, rcx
je 0x14003c581
mov qword [rsi + 0x4880], 0
dec dword [rsi + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [rsi + 0x4888], 0
mov rcx, qword [rsi + 0x4898]
test rcx, rcx
je 0x14003c5c2
mov qword [rsi + 0x4890], 0
mov rax, qword [0x140205610]
test rax, rax
je 0x14003c5aa
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [rsi + 0x4898], 0
call fcn.14006abe0
mov byte [r15 + 0x3e5f], 0
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x14003c5e8
cmp byte [rax + 0xb7], 0
je 0x14003c84b
cmp dword [r15 + 0x3ecc], 0
jns 0x14003c8b4
mov rax, qword [0x140205610]
test rax, rax
je 0x14003c608
inc dword [rax + 0xf4]
mov rdx, qword [0x140205620]
xor ecx, ecx
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [r15 + 0x3ed0]
test rdx, rdx
je 0x14003c664
movsxd rax, dword [r15 + 0x3ec8]
imul r8, rax, 0x58
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r15 + 0x3ed0]
test rcx, rcx
je 0x14003c657
mov rax, qword [0x140205610]
test rax, rax
je 0x14003c657
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [r15 + 0x3ed0], rdi
mov dword [r15 + 0x3ecc], 0
jmp 0x14003c8b4
movss xmm1, dword [rbx + 0xe1c]
cmp dword [r14 + 0x45f4], 0xffffffff
jne 0x14003c3b4
movss xmm0, dword [rbx + 0xe18]
jmp 0x14003c3b4
xorps xmm2, xmm2
ucomiss xmm0, xmm2
movzx eax, byte [rbx + 0xe24]
je 0x14003cba9
test al, al
je 0x14003cbb1
cmp byte [rbx + 0x64], 0
je 0x14003c3d5
andps xmm0, xmmword [0x14010c4a0]
movss xmm1, dword [0x14010f474]
mulss xmm0, xmm1
addss xmm0, dword [r14 + 0x3f2c]
minss xmm0, xmm1
movss dword [r14 + 0x3f2c], xmm0
cmp qword [r14 + 0x3f18], rsi
je 0x14003c724
test byte [r14 + 0x5ce4], 0x40
je 0x14003c70f
mov rdx, qword [rsi + 8]
lea rcx, str._io__LockWheelingWindow_____s__n
call fcn.14002fb80
mov qword [r14 + 0x3f18], rsi
mov rax, qword [r14 + 0xe08]
mov qword [r14 + 0x3f20], rax
movss xmm1, dword [rsi + 0x290]
movss xmm0, dword [rbx + 0xe18]
mulss xmm0, dword [0x14010f470]
addss xmm0, xmm1
minss xmm0, dword [0x14010f478]
maxss xmm0, dword [0x14010c4c0]
movss dword [rsi + 0x290], xmm0
cmp rsi, qword [rsi + 0x378]
jne 0x14003c3d5
divss xmm0, xmm1
movss xmm1, dword [0x14010be30]
subss xmm1, xmm0
movsd xmm2, qword [rbx + 0xe08]
movsd xmm3, qword [rsi + 0x20]
subps xmm2, xmm3
shufps xmm1, xmm1, 0
mulps xmm1, xmm2
and dword [rsi + 0xdc], 0xfffffff1
addps xmm1, xmm3
movabs rax, 0x7f7fffff7f7fffff
mov qword [rsi + 0xe0], rax
cvttps2dq xmm1, xmm1
cvtdq2ps xmm1, xmm1
movlps qword [rsi + 0x20], xmm1
subps xmm1, xmm3
xorps xmm2, xmm2
movaps xmm3, xmm1
cmpeqps xmm3, xmm2
movaps xmm4, xmm1
shufps xmm4, xmm1, 0x55
cmpeqps xmm4, xmm2
andps xmm4, xmm3
movd eax, xmm4
test al, 1
jne 0x14003c830
test byte [rsi + 0x15], 1
jne 0x14003c7f8
mov rax, qword [0x140205610]
ucomiss xmm2, dword [rax + 0x5c0c]
jb 0x14003c7f8
movss xmm2, dword [rax + 0x1c]
movss dword [rax + 0x5c0c], xmm2
movsd xmm2, qword [rsi + 0x100]
addps xmm2, xmm1
movlps qword [rsi + 0x100], xmm2
movsd xmm2, qword [rsi + 0x120]
addps xmm2, xmm1
movlhps xmm1, xmm1
movlps qword [rsi + 0x120], xmm2
movups xmm2, xmmword [rsi + 0x110]
addps xmm2, xmm1
movups xmmword [rsi + 0x110], xmm2
movups xmm1, xmmword [rsi + 0x28]
shufps xmm0, xmm0, 0
mulps xmm0, xmm1
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
movups xmmword [rsi + 0x28], xmm0
jmp 0x14003c3d5
mov rcx, qword [0x140205610]
mov eax, dword [rcx + 0x3ea8]
test eax, eax
jle 0x14003c89a
dec eax
mov rdx, qword [rcx + 0x3eb0]
inc rax
jmp 0x14003c875
dec rax
jle 0x14003c89a
mov rcx, qword [rdx + rax*8 - 8]
test rcx, rcx
je 0x14003c870
cmp byte [rcx + 0xb7], 0
je 0x14003c870
mov r8d, dword [rcx + 0x14]
not r8d
test r8d, 0x40200
je 0x14003c870
jmp 0x14003c89c
xor ecx, ecx
mov edx, 1
call fcn.140037430
cmp dword [r15 + 0x3ecc], 0
js 0x14003c5f6
mov dword [r15 + 0x3ec8], 0
cmp dword [r15 + 0x48b4], 0
jns 0x14003c94d
mov rax, qword [0x140205610]
test rax, rax
je 0x14003c8df
inc dword [rax + 0xf4]
mov rdx, qword [0x140205620]
xor ecx, ecx
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [r15 + 0x48b8]
test rdx, rdx
je 0x14003c93b
movsxd rax, dword [r15 + 0x48b0]
imul r8, rax, 0x38
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r15 + 0x48b8]
test rcx, rcx
je 0x14003c92e
mov rax, qword [0x140205610]
test rax, rax
je 0x14003c92e
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [r15 + 0x48b8], rdi
mov dword [r15 + 0x48b4], 0
mov dword [r15 + 0x48b0], 0
cmp dword [r15 + 0x4884], 0
js 0x14003c981
mov dword [r15 + 0x4880], 0
je 0x14003ca01
mov rdi, qword [r15 + 0x4888]
xor eax, eax
jmp 0x14003ca8b
mov rax, qword [0x140205610]
test rax, rax
je 0x14003c993
inc dword [rax + 0xf4]
mov rdx, qword [0x140205620]
xor ecx, ecx
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [r15 + 0x4888]
test rdx, rdx
je 0x14003c9ef
movsxd r8, dword [r15 + 0x4880]
shl r8, 2
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r15 + 0x4888]
test rcx, rcx
je 0x14003c9e2
mov rax, qword [0x140205610]
test rax, rax
je 0x14003c9e2
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [r15 + 0x4888], rdi
mov qword [r15 + 0x4880], 0
mov rax, qword [0x140205610]
test rax, rax
je 0x14003ca13
inc dword [rax + 0xf4]
mov rdx, qword [0x140205620]
mov ecx, 0x20
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [r15 + 0x4888]
test rdx, rdx
je 0x14003ca72
movsxd r8, dword [r15 + 0x4880]
shl r8, 2
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r15 + 0x4888]
test rcx, rcx
je 0x14003ca65
mov rax, qword [0x140205610]
test rax, rax
je 0x14003ca65
dec dword [rax + 0xf4]
mov rdx, qword [0x140205620]
call qword [0x1401e7350]
mov qword [r15 + 0x4888], rdi
mov dword [r15 + 0x4884], 8
mov eax, dword [r15 + 0x4880]
cdqe
mov dword [rdi + rax*4], 0
inc dword [r15 + 0x4880]
cmp dword [r15 + 0x4894], 0
jns 0x14003cb2d
mov rax, qword [0x140205610]
test rax, rax
je 0x14003cabb
inc dword [rax + 0xf4]
mov rdx, qword [0x140205620]
xor ecx, ecx
call qword [0x1401e7348]
mov rdi, rax
mov rdx, qword [r15 + 0x4898]
test rdx, rdx
je 0x14003cb1b
movsxd rax, dword [r15 + 0x4890]
shl rax, 4
lea r8, [rax + rax*2]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r15 + 0x4898]
test rcx, rcx
je 0x14003cb0e
mov qword [r15 + 0x4898], rdi
mov dword [r15 + 0x4894], 0
mov dword [r15 + 0x4890], 0
mov rbx, qword [0x140205610]
mov dword [rbx + 0x5d18], 0
cmp byte [rbx + 0x5d13], 0
je 0x14003ced1
mov edi, dword [rbx + 0x3f48]
mov dword [rbx + 0x4a98], 7
cmp byte [rbx + 0x2f0c], 0
je 0x14003cd7a
movss xmm0, dword [rbx + 0x2f10]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003cd7a
test al, al
jne 0x14003c3d5
xor eax, eax
cmp byte [rbx + 0x3775], 0
sete al
movd xmm2, eax
pshufd xmm3, xmm2, 0x50
pslld xmm3, 0x1f
psrad xmm3, 0x1f
unpcklps xmm1, xmm0
pxor xmm2, xmm2
xorps xmm4, xmm4
movss xmm4, xmm0
andps xmm1, xmm3
andnps xmm3, xmm4
orps xmm3, xmm1
movaps xmm0, xmmword [0x14010c4a0]
andps xmm0, xmm3
movsd xmm6, qword [rbx + 0x3f30]
movsd xmm1, qword [rbx + 0x3f38]
mulps xmm1, xmmword [str.www_www_]
mulps xmm0, xmmword [0x14010f490]
addps xmm0, xmm1
movlps qword [rbx + 0x3f38], xmm0
addps xmm6, xmm3
mov qword [rbx + 0x3f30], 0
cmpeqps xmm2, xmm6
unpcklps xmm0, xmm2
movmskpd eax, xmm0
cmp al, 3
je 0x14003c3d5
test rdi, rdi
je 0x14003cd02
movzx eax, word [rdi + 0x14]
test eax, 0x210
jne 0x14003c3d5
xorps xmm0, xmm0
ucomiss xmm6, xmm0
je 0x14003d205
ucomiss xmm0, dword [rdi + 0x8c]
setne al
jmp 0x14003d207
pextrw ecx, xmm2, 2
xorps xmm0, xmm0
ucomiss xmm6, xmm0
je 0x14003d192
mov rax, qword [r14 + 0x3f00]
mov edx, dword [rax + 0x14]
mov r8d, edx
mov rdi, rax
and r8d, 0x1000000
je 0x14003cd5e
mov r9d, edx
mov rdi, rax
jmp 0x14003cd48
mov rdi, qword [rdi + 0x368]
mov r9d, dword [rdi + 0x14]
test r9d, 0x1000000
je 0x14003cd5e
ucomiss xmm0, dword [rdi + 0x8c]
je 0x14003cd34
and r9d, 0x210
cmp r9d, 0x10
je 0x14003cd34
test cl, 1
jne 0x14003cc43
jmp 0x14003d1b1
mov esi, dword [rbx + 0xe28]
cmp esi, 0x3000
jne 0x14003cdf9
mov dword [rbx + 0x3f40], 0
mov eax, dword [rbx + 0x5d30]
inc eax
cmp dword [rbx + 0x3e50], eax
jne 0x14003d01c
mov esi, dword [rbx + 0x3f48]
test esi, esi
je 0x14003cf0e
movzx eax, byte [r15 + 0x5d11]
test al, al
je 0x14003d03e
test cl, 1
jne 0x14003c3d5
mov rax, qword [r14 + 0x3f00]
mov edx, dword [rax + 0x14]
mov r8d, edx
and r8d, 0x1000000
xor edi, edi
test r8d, r8d
je 0x14003d1e1
xorps xmm0, xmm0
jmp 0x14003d1cd
mov rax, qword [rax + 0x368]
mov edx, dword [rax + 0x14]
test edx, 0x1000000
je 0x14003d1e1
ucomiss xmm0, dword [rax + 0x90]
je 0x14003d1bb
and edx, 0x210
cmp edx, 0x10
je 0x14003d1bb
test rdi, rdi
sete dl
cmp rdi, rax
sete r8b
or r8b, dl
or cl, r8b
test cl, 1
je 0x14003d37e
mov rdi, rax
jmp 0x14003cc43
xor eax, eax
mov byte [rsp + 0x50], al
movaps xmm7, xmm6
shufps xmm7, xmm6, 0x55
ucomiss xmm7, xmm0
je 0x14003d253
movss xmm0, dword [rdi + 0x90]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
setne byte [rsp + 0x51]
test al, al
je 0x14003d258
ucomiss xmm0, xmm1
je 0x14003d258
movss xmm0, dword [rbx + 0x3f38]
xor eax, eax
ucomiss xmm0, dword [rbx + 0x3f3c]
seta al
mov byte [rsp + rax + 0x50], 0
movzx eax, byte [rsp + 0x50]
jmp 0x14003d258
mov byte [rsp + 0x51], 0
test al, al
je 0x14003d2e5
mov rcx, rdi
movaps xmm1, xmm6
call fcn.14004dac0
movss xmm0, dword [rdi + 0x200]
subss xmm0, dword [rdi + 0x1f8]
mulss xmm0, dword [0x14010f4a0]
mov rax, qword [rdi]
movss xmm1, dword [rdi + 0x290]
mulss xmm1, dword [rax + 0x3c24]
mov rax, qword [rdi + 0x368]
test rax, rax
je 0x14003d2aa
mulss xmm1, dword [rax + 0x290]
addss xmm1, xmm1
minss xmm1, xmm0
cvttps2dq xmm0, xmm1
cvtdq2ps xmm0, xmm0
movss xmm1, dword [rdi + 0x84]
mulss xmm6, xmm0
subss xmm1, xmm6
movss dword [rdi + 0x94], xmm1
mov dword [rdi + 0x9c], 0
mov dword [rdi + 0xa4], 0
cmp byte [rsp + 0x51], 0
je 0x14003c3d5
mov rcx, rdi
movaps xmm1, xmm7
call fcn.14004dac0
movss xmm0, dword [rdi + 0x204]
subss xmm0, dword [rdi + 0x1fc]
mulss xmm0, dword [0x14010f4a0]
mov rax, qword [rdi]
movss xmm1, dword [rdi + 0x290]
mulss xmm1, dword [rax + 0x3c24]
mov rax, qword [rdi + 0x368]
test rax, rax
je 0x14003d33a
mulss xmm1, dword [rax + 0x290]
mulss xmm1, dword [0x14010c4ec]
minss xmm1, xmm0
cvttps2dq xmm0, xmm1
cvtdq2ps xmm0, xmm0
movss xmm1, dword [rdi + 0x88]
mulss xmm7, xmm0
subss xmm1, xmm7
movss dword [rdi + 0x98], xmm1
mov dword [rdi + 0xa0], 0
mov dword [rdi + 0xa8], 0
jmp 0x14003c3d5
mov ecx, dword [r14 + 0x3e50]
mov edx, dword [r14 + 0x3f28]
cmp edx, 0xffffffff
jne 0x14003d39a
mov dword [r14 + 0x3f28], ecx
mov edx, ecx
xorps xmm0, xmm0
ucomiss xmm6, xmm0
je 0x14003d3a6
cmp edx, ecx
je 0x14003d3bd
movss xmm0, dword [r14 + 0x3f38]
ucomiss xmm0, dword [r14 + 0x3f3c]
jne 0x14003d462
movss dword [r14 + 0x3f30], xmm6
shufps xmm6, xmm6, 0x55
movss dword [r14 + 0x3f34], xmm6
jmp 0x14003c3d5
movaps xmm1, xmmword [0x14010cbf0]
xorps xmm1, xmm0
addss xmm1, dword [rcx + 0x84]
cvttps2dq xmm1, xmm1
cvtdq2ps xmm1, xmm1
movss dword [rcx + 0x94], xmm1
mov dword [rcx + 0x9c], 0
mov dword [rcx + 0xa4], 0
mov r8d, edx
and r8d, 0xfffffffe
cmp r8d, 2
jne 0x14003bd29
cmp edx, 2
je 0x14003d428
movaps xmm1, xmm0
jmp 0x14003d432
movaps xmm1, xmmword [0x14010cbf0]
xorps xmm1, xmm0
addss xmm1, dword [rcx + 0x88]
cvttps2dq xmm1, xmm1
cvtdq2ps xmm1, xmm1
movss dword [rcx + 0x98], xmm1
mov dword [rcx + 0xa0], 0
mov dword [rcx + 0xa8], 0
jmp 0x14003bd29
cmovbe rdi, rax
jmp 0x14003cc43
mov edx, 3
mov eax, 1
jmp 0x14003bc56