Function at 0x14003b2b0
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 [0x140208a80]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov r14, qword [0x14020ab90]
mov eax, dword [r14 + 0x5c50]
test eax, eax
jle 0x14003b3b3
lea rsi, [rax + 1]
jmp 0x14003b329
dec rsi
cmp rsi, 1
jbe 0x14003b371
lea r8d, [rsi - 2]
mov rdx, qword [r14 + 0x5c58]
mov r9, r8
shl r9, 5
cmp dword [rdx + r9 + 4], 7
jne 0x14003b320
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 0x14003b320
test eax, eax
jle 0x14003b3b3
xor esi, esi
xor edi, edi
jmp 0x14003b38f
inc rdi
movsxd rcx, eax
add rsi, 0x20
cmp rdi, rcx
jge 0x14003b3b3
mov r8, qword [r14 + 0x5c58]
cmp dword [r8 + rsi + 4], 0
jne 0x14003b380
lea rdx, [r8 + rsi]
mov rcx, r14
call qword [r8 + rsi + 0x10]
mov eax, dword [r14 + 0x5c50]
jmp 0x14003b380
mov rsi, qword [0x14020ab90]
cmp byte [rsi + 0x7e], 0
je 0x14003b3ca
test byte [rsi + 0xc], 2
jne 0x14003b3ca
mov byte [rsi + 0x7e], 0
cmp byte [rsi + 0x5c09], 0
jne 0x14003b43c
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x14003b435
mov qword [rsp + 0x50], 0
lea rdx, [0x140115ff3]
lea r8, [rsp + 0x50]
xor r9d, r9d
call fcn.140031490
test rax, rax
je 0x14003b435
mov rdi, rax
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x14003b413
mov rcx, rdi
call fcn.14004f1b0
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003b425
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
mov rcx, rdi
call qword [0x1401ec340]
mov byte [rsi + 0x5c09], 1
movss xmm0, dword [rsi + 0x5c0c]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
jae 0x14003b4db
subss xmm0, dword [rsi + 0x18]
movss dword [rsi + 0x5c0c], xmm0
ucomiss xmm0, xmm1
ja 0x14003b4db
mov rbx, qword [rsi + 0x20]
test rbx, rbx
je 0x14003b4ca
mov rax, qword [0x14020ab90]
mov dword [rax + 0x5c0c], 0
mov qword [rsp + 0x50], 0
lea rcx, [rsp + 0x50]
call fcn.14004f580
mov rdi, rax
lea rdx, [0x140115ff6]
mov rcx, rbx
call fcn.140031290
test rax, rax
je 0x14003b4d1
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 0x14003b4d1
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 0x14003b5b2
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003b53e
inc dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
xor ecx, ecx
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [r14 + 0x5be0]
test rdx, rdx
je 0x14003b59a
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 0x14003b58d
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003b58d
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
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 0x14003b660
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
divss xmm0, xmm1
jmp 0x14003b668
movss xmm0, dword [0x140114510]
movss dword [r14 + 0xe0], xmm0
cmp dword [r14 + 0x3e84], 0
jns 0x14003b706
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003b691
inc dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
xor ecx, ecx
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [r14 + 0x3e88]
test rdx, rdx
je 0x14003b6f4
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 0x14003b6e7
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003b6e7
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
mov qword [r14 + 0x3e88], rdi
mov dword [r14 + 0x3e84], 0
mov dword [r14 + 0x3e80], 0
movzx ecx, byte [r14 + 0x7a]
call fcn.140040240
mov rax, qword [0x14020ab90]
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 0x14003b7a1
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 0x14003b750
mov rax, qword [r14 + 0x58]
mov byte [rax + 0x18], 1
mov rax, qword [0x14020ab90]
mov rcx, qword [rax + 0x68]
test rcx, rcx
jne 0x14003b7c4
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 [0x140110e30]
movss dword [rax + 0x3c24], xmm0
mov rdx, qword [rax + 0x3ef8]
test rdx, rdx
je 0x14003b820
mov r8, qword [rdx]
movss xmm0, dword [rdx + 0x290]
mulss xmm0, dword [r8 + 0x3c24]
mov rdx, qword [rdx + 0x368]
test rdx, rdx
je 0x14003b823
mulss xmm0, dword [rdx + 0x290]
jmp 0x14003b823
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 0x14003b8db
mov rcx, qword [r14 + 0x48d0]
movaps xmm1, xmmword [0x140114640]
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 0x14003b8a0
jmp 0x14003b8e2
movaps xmm0, xmmword [0x140114640]
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.140052350
movzx eax, byte [r14 + 0x38a0]
mov dword [r14 + 0x3c54], eax
cmp byte [r14 + 0x38a1], 0
je 0x14003b944
mov rcx, qword [r14 + 0x3c18]
mov rcx, qword [rcx + 0x40]
test byte [rcx], 4
jne 0x14003b944
or eax, 2
mov dword [r14 + 0x3c54], eax
cmp byte [r14 + 0x38a2], 0
je 0x14003b958
or eax, 4
mov dword [r14 + 0x3c54], eax
test byte [r14 + 0xc], 8
je 0x14003b969
or eax, 8
mov dword [r14 + 0x3c54], eax
cmp dword [r14 + 0x48c8], 0
jle 0x14003b9a6
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 0x14003b980
cmp byte [r14 + 0x4a9c], 0
je 0x14003b9e4
mov eax, dword [r14 + 0x4abc]
cmp eax, dword [r14 + 0x3f58]
jne 0x14003b9e4
mov rcx, qword [0x14020ab90]
cmp dword [rcx + 0x3f58], eax
jne 0x14003b9d5
mov dword [rcx + 0x3f5c], eax
cmp dword [rcx + 0x3f88], eax
jne 0x14003b9e4
mov byte [rcx + 0x3f8c], 1
cmp dword [r14 + 0x3f48], 0
je 0x14003ba0f
mov eax, dword [r14 + 0x3f44]
test eax, eax
je 0x14003ba5e
cmp dword [r14 + 0x3f58], eax
jne 0x14003ba25
mov dword [r14 + 0x3f54], 0
jmp 0x14003ba25
mov eax, dword [r14 + 0x3f44]
xorps xmm0, xmm0
movlps qword [r14 + 0x3f50], xmm0
test eax, eax
je 0x14003ba5e
movss xmm0, dword [r14 + 0x18]
movss xmm1, dword [r14 + 0x3f50]
addss xmm1, xmm0
movss dword [r14 + 0x3f50], xmm1
cmp dword [r14 + 0x3f58], eax
je 0x14003ba60
addss xmm0, dword [r14 + 0x3f54]
movss dword [r14 + 0x3f54], xmm0
jmp 0x14003ba60
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 0x14003bae1
cmp dword [r14 + 0x3f5c], eax
je 0x14003bac5
cmp dword [r14 + 0x3f88], eax
jne 0x14003bac5
test byte [r14 + 0x5ce4], 1
je 0x14003baaf
lea rcx, str.NewFrame__:_ClearActiveID___because_it_isnt_marked_alive_anymore__n
call fcn.140032940
xor esi, esi
xor ecx, ecx
xor edx, edx
call fcn.140039840
mov eax, dword [r14 + 0x3f58]
test eax, eax
je 0x14003bae3
movss xmm0, dword [r14 + 0x3f60]
addss xmm0, dword [r14 + 0x18]
movss dword [r14 + 0x3f60], xmm0
mov esi, eax
jmp 0x14003bae3
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 0x14003bb5c
cmp esi, eax
je 0x14003bb5c
mov dword [r14 + 0x5b48], 0
test esi, esi
je 0x14003bb88
test byte [r14 + 0x4770], 2
je 0x14003bba6
mov rax, qword [0x14020ab90]
mov dword [rax + 0x404c], esi
mov dword [rax + 0x4048], esi
mov word [rax + 0x4050], 0
jmp 0x14003bba6
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 0x14003bbe8
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 0x14003bc2d
xorps xmm0, xmm0
ucomiss xmm0, dword [r14 + 0x4c18]
jae 0x14003bc2d
movss xmm0, dword [r14 + 0x18]
movss xmm1, dword [r14 + 0x4c1c]
addss xmm1, xmm0
movss dword [r14 + 0x4c1c], xmm1
addss xmm0, xmm0
maxss xmm0, dword [0x140114650]
ucomiss xmm1, xmm0
jb 0x14003bc2d
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 [0x14020ab90]
cmp byte [rbx + 0x37ba], 0
je 0x14003bd78
xor eax, eax
jmp 0x14003bc8c
add rax, 2
cmp rax, 0x8c
je 0x14003bcc4
movsxd rcx, dword [rbx + rax*4 + 0x900]
cmp rcx, 0xffffffffffffffff
je 0x14003bca7
lea edx, [rax + 0x200]
mov dword [rbx + rcx*4 + 0x100], edx
movsxd rcx, dword [rbx + rax*4 + 0x904]
cmp rcx, 0xffffffffffffffff
je 0x14003bc80
lea edx, [rax + 0x201]
mov dword [rbx + rcx*4 + 0x100], edx
jmp 0x14003bc80
xor eax, eax
jmp 0x14003bce2
mov byte [rbx + 0x37ba], 1
inc rax
cmp rax, 0x200
je 0x14003bd3d
movzx ecx, byte [rbx + rax + 0xb30]
test cl, cl
jne 0x14003bcf7
cmp byte [rbx + 0x37ba], 1
jne 0x14003bd30
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 0x14003bcd0
movzx ecx, byte [rbx + rax + 0xb30]
mov byte [rbx + rdx + 0xb30], cl
jmp 0x14003bcd0
inc rax
cmp rax, 0x200
jne 0x14003bce2
jmp 0x14003bd78
movzx eax, byte [rbx + 0xe24]
mov rcx, qword [0x14020ab90]
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 0x14003bf48
cmp byte [rbx + 0x37bb], 0
je 0x14003bf48
mov eax, dword [rbx + 0xc]
and eax, 1
je 0x14003bf48
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 [0x140110e30]
xorps xmm2, xmm2
test cl, cl
je 0x14003bf64
movaps xmm2, xmm1
mov rax, qword [0x14020ab90]
mov byte [rax + 0x363c], cl
movss dword [rax + 0x3648], xmm2
movzx ecx, byte [rbx + 0xe11]
xorps xmm2, xmm2
test cl, cl
je 0x14003bf8a
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 0x14003bfa9
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 0x14003bfc8
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 0x14003bfe7
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 0x14003c9b7
xor ecx, ecx
cmp byte [rax + 0x4608], 0
sete cl
shl ecx, 0xc
cmp byte [rax + 0x36bc], 0
je 0x14003c060
cmp byte [rax + 0x4614], 0
lea edx, [rcx + 0x2000]
cmovne edx, ecx
mov ecx, edx
cmp byte [rax + 0x36cc], 0
je 0x14003c07b
cmp byte [rax + 0x4620], 0
lea edx, [rcx + 0x4000]
cmovne edx, ecx
mov ecx, edx
cmp byte [rax + 0x36dc], 0
je 0x14003c096
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 0x14003c125
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 0x14003c0e0
mov eax, 0xe34
movss xmm0, dword [0x140111784]
jmp 0x14003c152
movss dword [rbx + rax - 4], xmm2
add rax, 0x10
cmp rax, 0x36f4
je 0x14003c179
movss xmm1, dword [rbx + rax - 4]
movss dword [rbx + rax], xmm1
cmp byte [rbx + rax - 8], 0
movaps xmm2, xmm0
je 0x14003c140
xorps xmm2, xmm2
ucomiss xmm1, xmm2
jb 0x14003c140
addss xmm1, dword [rbx + 0x18]
movaps xmm2, xmm1
jmp 0x14003c140
lea rax, [rbx + 0x3fa9]
xor ecx, ecx
jmp 0x14003c1ba
mov dword [rax - 5], 0xffffffff
cmp byte [rax], 0
je 0x14003c1cf
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 0x14003c1d3
mov edx, dword [rax - 5]
mov dword [rax - 9], edx
cmp byte [rbx + rcx + 0x2e2c], 0
je 0x14003c190
cmp byte [rax], 0
jne 0x14003c19c
xor edx, edx
jmp 0x14003c1a4
mov r10, qword [0x14020ab90]
cmp dword [rbx + 0x475c], 0
mov qword [rsp + 0x28], r10
jns 0x14003c266
test r10, r10
je 0x14003c1f4
inc dword [r10 + 0xf4]
mov rdx, qword [0x14020aba0]
xor ecx, ecx
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [rbx + 0x4760]
test rdx, rdx
je 0x14003c250
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 0x14003c243
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003c243
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
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 0x14003c293
mov r12d, r8d
inc r15
cmp r15, 0x28c
je 0x14003c528
movzx eax, word [rbx + r15*2 + 0x4230]
mov ecx, r12d
cmp ax, 0xffff
jne 0x14003c2ef
jmp 0x14003c4b6
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 0x14003c343
nop word cs:[rax + rax]
movzx eax, word [r13]
cmp ax, 0xffff
je 0x14003c4b0
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 0x14003c2e0
mov eax, dword [rbx + 0x4758]
cmp eax, dword [rbx + 0x475c]
jne 0x14003c3fc
lea r14d, [rax + 1]
test eax, eax
je 0x14003c35b
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
add ecx, eax
jmp 0x14003c360
lea rcx, [rsi + rbp]
add rcx, 8
lea rax, [r10 + rax*4]
add rax, 0x3fa0
mov ecx, dword [rcx]
mov dword [rax], ecx
jmp 0x14003c2e0
mov ecx, 8
cmp ecx, r14d
cmovg r14d, ecx
cmp eax, r14d
jge 0x14003c3fc
movsxd rcx, r14d
shl rcx, 4
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003c389
inc dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [rbx + 0x4760]
test rdx, rdx
je 0x14003c3e3
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 0x14003c3d6
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003c3d6
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
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 0x14003c2e0
mov rax, r15
test r15d, 0xf800
je 0x14003c2c0
cmp r15d, 0x1fff
jle 0x14003c468
cmp r15d, 0x8000
je 0x14003c48f
cmp r15d, 0x4000
je 0x14003c499
cmp r15d, 0x2000
jne 0x14003c487
mov eax, 0x289
jmp 0x14003c2c0
cmp r15d, 0x800
je 0x14003c2aa
mov eax, 0x288
cmp r15d, 0x1000
je 0x14003c2c0
mov rax, r15
jmp 0x14003c2c0
mov eax, 0x28b
jmp 0x14003c2c0
mov eax, 0x28a
jmp 0x14003c2c0
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 0x14003c280
movsxd rax, r12d
mov rcx, rax
shl rcx, 4
inc r12d
mov edx, r12d
mov r12d, r8d
jmp 0x14003c512
mov r9, qword [rbx + 0x4760]
mov word [r9 + rcx], r8w
movsxd r12, dword [rbx + 0x4758]
add rcx, 0x10
inc edx
cmp rax, r12
jge 0x14003c283
inc rax
movsxd r9, r12d
mov r8d, edx
cmp rax, r9
jl 0x14003c4f0
mov r8d, 0xffff
jmp 0x14003c4f0
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 [0x14020ab90]
mov byte [r15 + 0xdb], 0
mov r13d, dword [r15 + 8]
test r13b, 2
je 0x14003c589
test byte [r15 + 0xc], 1
jne 0x14003c9cb
mov dword [rsp + 0x28], 0
test r13b, 1
je 0x14003c674
cmp byte [r15 + 0x2eec], 0
je 0x14003c5ba
cmp byte [r15 + 0x4038], 0
jne 0x14003c5ba
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2efc], 0
je 0x14003c5d9
cmp byte [r15 + 0x4044], 0
jne 0x14003c5d9
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2f0c], 0
je 0x14003c5f8
cmp byte [r15 + 0x4050], 0
jne 0x14003c5f8
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2e4c], 0
je 0x14003c617
cmp byte [r15 + 0x3fc0], 0
jne 0x14003c617
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2e3c], 0
je 0x14003c636
cmp byte [r15 + 0x3fb4], 0
jne 0x14003c636
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2e5c], 0
je 0x14003c655
cmp byte [r15 + 0x3fcc], 0
jne 0x14003c655
mov dword [r15 + 0x490c], 2
cmp byte [r15 + 0x2e6c], 0
je 0x14003c674
cmp byte [r15 + 0x3fd8], 0
jne 0x14003c674
mov dword [r15 + 0x490c], 2
mov dword [r15 + 0x48f8], 0
cmp dword [r15 + 0x4928], 0
je 0x14003c68e
call fcn.14004deb0
mov word [r15 + 0x4919], 0
mov dword [r15 + 0x4928], 0
cmp byte [r15 + 0x4950], 0
je 0x14003c6b2
call fcn.14004dff0
mov dword [r15 + 0x4994], 0
mov word [r15 + 0x4950], 0
cmp byte [r15 + 0x4915], 0
je 0x14003c6e9
cmp byte [r15 + 0x4914], 0
je 0x14003c6e9
cmp byte [r15 + 0x4916], 0
je 0x14003cc7f
mov dword [rsp + 0x38], 0
mov byte [r15 + 0x4915], 0
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x14003c764
mov rcx, rax
nop dword [rax + rax]
cmp qword [rcx + 0x378], rcx
je 0x14003c72d
test byte [rcx + 0x17], 0x14
jne 0x14003c72d
mov rcx, qword [rcx + 0x368]
test rcx, rcx
jne 0x14003c710
jmp 0x14003c740
cmp rcx, rax
je 0x14003c740
mov qword [rcx + 0x398], rax
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x14003c764
cmp qword [rax + 0x398], 0
je 0x14003c764
cmp dword [r15 + 0x4910], 0
jne 0x14003c764
mov qword [rax + 0x398], 0
mov r12, qword [0x14020ab90]
mov ecx, dword [r12 + 0x48a0]
mov al, 1
test ecx, ecx
jle 0x14003c7c0
mov rdx, qword [r12 + 0x48a8]
inc rcx
jmp 0x14003c799
dec rcx
cmp rcx, 2
jb 0x14003c7c0
lea r8d, [rcx - 2]
imul r8, r8, 0x38
mov r8, qword [rdx + r8 + 8]
test r8, r8
je 0x14003c790
test byte [r8 + 0x17], 8
je 0x14003c790
mov qword [r12 + 0x4a60], 0
xor eax, eax
mov dword [rsp + 0x34], r13d
cmp qword [r12 + 0x4a68], 0
je 0x14003c821
cmp qword [r12 + 0x4a60], 0
jne 0x14003c821
movss xmm0, dword [r12 + 0x18]
mulss xmm0, dword [0x140114654]
addss xmm0, dword [r12 + 0x4a7c]
xorps xmm1, xmm1
maxss xmm0, xmm1
movss dword [r12 + 0x4a7c], xmm0
ucomiss xmm1, dword [r12 + 0x4a94]
jb 0x14003c821
ucomiss xmm0, xmm1
ja 0x14003c821
mov qword [r12 + 0x4a68], 0
mov ecx, 0xffffffff
mov r9b, 0x23
lea rdx, [0x14011671e]
lea r8, [0x1401148a0]
mov ebp, 0xffffffff
jmp 0x14003c85d
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 0x14003c879
movzx r10d, byte [rdx - 1]
cmp r9b, 0x23
jne 0x14003c840
cmp r10b, 0x23
jne 0x14003c840
cmp byte [rdx], 0x23
cmove ebp, ecx
mov r10b, 0x23
jmp 0x14003c840
mov esi, dword [r12 + 8]
test sil, 2
jne 0x14003c889
xor r14d, r14d
jmp 0x14003c893
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 0x14003cb30
mov edi, dword [r12 + 0x4a58]
test edi, edi
je 0x14003c927
mov ecx, edi
mov edx, ebp
mov r8d, 0x1101
call fcn.14004b620
test al, al
je 0x14003c927
test edi, 0x800
je 0x14003c8f6
mov rax, qword [0x14020ab90]
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 0x14003c927
and edi, 0xffff07ff
je 0x14003d51f
mov ecx, edi
mov edx, ebp
mov r8d, 1
call fcn.14004b9f0
mov r13d, eax
jmp 0x14003c92a
xor r13d, r13d
mov ebx, dword [r12 + 0x4a5c]
test ebx, ebx
je 0x14003cadc
mov edi, esi
mov rsi, qword [0x14020ab90]
mov ecx, ebx
mov edx, ebp
mov r8d, 0x1101
call fcn.14004b620
test al, al
je 0x14003cad6
test ebx, 0x800
je 0x14003c982
mov rax, qword [0x14020ab90]
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 0x14003cad6
and ebx, 0xffff07ff
je 0x14003d555
mov ecx, ebx
mov edx, ebp
mov r8d, 1
call fcn.14004b9f0
mov ebx, eax
jmp 0x14003cad8
xor ecx, ecx
cmp byte [rax + 0x36bc], 0
jne 0x14003c04e
jmp 0x14003c060
cmp byte [r15 + 0x34ec], 0
je 0x14003c9ea
cmp byte [r15 + 0x44b8], 0
jne 0x14003c9ea
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x34dc], 0
je 0x14003ca09
cmp byte [r15 + 0x44ac], 0
jne 0x14003ca09
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x34fc], 0
je 0x14003ca28
cmp byte [r15 + 0x44c4], 0
jne 0x14003ca28
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x350c], 0
je 0x14003ca47
cmp byte [r15 + 0x44d0], 0
jne 0x14003ca47
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x352c], 0
je 0x14003ca66
cmp byte [r15 + 0x44e8], 0
jne 0x14003ca66
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x351c], 0
je 0x14003ca85
cmp byte [r15 + 0x44dc], 0
jne 0x14003ca85
mov dword [r15 + 0x490c], 3
cmp byte [r15 + 0x353c], 0
je 0x14003caa4
cmp byte [r15 + 0x44f4], 0
jne 0x14003caa4
mov dword [r15 + 0x490c], 3
mov al, 1
mov dword [rsp + 0x28], eax
cmp byte [r15 + 0x354c], 0
je 0x14003c591
cmp byte [r15 + 0x4500], 0
jne 0x14003c591
mov dword [r15 + 0x490c], 3
jmp 0x14003c591
xor ebx, ebx
mov esi, edi
jmp 0x14003cade
xor ebx, ebx
mov rax, qword [r12 + 0x4a60]
test rax, rax
sete cl
and r14b, cl
cmp r14b, 1
jne 0x14003cb21
mov rax, qword [0x14020ab90]
cmp byte [rax + 0x34dc], 0
je 0x14003cb1f
xorps xmm0, xmm0
ucomiss xmm0, dword [rax + 0x34e0]
jne 0x14003cb1f
cmp byte [rax + 0x44ac], 0
sete cl
xor eax, eax
jmp 0x14003cb23
xor eax, eax
xor ecx, ecx
test rax, rax
sete al
mov edx, r13d
or dl, bl
and dl, al
test cl, cl
jne 0x14003cb3c
test dl, dl
je 0x14003cbd6
mov rax, qword [r12 + 0x48d8]
test rax, rax
je 0x14003cbb6
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 0x14003cbd6
mov ecx, dword [r12 + 0x4a5c]
or ecx, dword [r12 + 0x4a58]
and ecx, 0xf800
mov edx, ebp
xor r8d, r8d
call fcn.14004bd00
jmp 0x14003cbd6
mov eax, dword [r12 + 0x3ea8]
test eax, eax
jle 0x14003cbd6
mov r8, qword [0x14020ab90]
cmp eax, dword [r8 + 0x3ea8]
jle 0x14003d2ee
movss xmm0, dword [r12 + 0x4a78]
addss xmm0, dword [r12 + 0x18]
movss dword [r12 + 0x4a78], xmm0
mov r14, qword [r12 + 0x4a60]
test r14, r14
je 0x14003cc67
mov eax, dword [r12 + 0x490c]
cmp eax, 3
mov ebp, dword [rsp + 0x34]
jne 0x14003cd8d
mulss xmm0, dword [0x140111a3c]
addss xmm0, dword [0x140114658]
minss xmm0, dword [0x140110e30]
xorps xmm2, xmm2
maxss xmm0, xmm2
maxss xmm0, dword [r12 + 0x4a7c]
movss dword [r12 + 0x4a7c], xmm0
mov rax, qword [0x14020ab90]
cmp byte [rax + 0x355c], 0
je 0x14003cc63
movss xmm1, dword [rax + 0x3560]
ucomiss xmm2, xmm1
jbe 0x14003cca1
xor ecx, ecx
jmp 0x14003ccb4
xor ebx, ebx
xor r14d, r14d
mov ebp, dword [rsp + 0x34]
test sil, 1
jne 0x14003ce38
jmp 0x14003ce72
cmp byte [r15 + 0x4917], 0
je 0x14003c6e9
cmp qword [r15 + 0x48d8], 0
setne al
mov dword [rsp + 0x38], eax
jmp 0x14003c6f1
ucomiss xmm1, xmm2
jne 0x14003d3fc
cmp byte [rax + 0x450c], 0
sete cl
movzx ecx, cl
cmp byte [rax + 0x356c], 0
je 0x14003ccd0
movss xmm1, dword [rax + 0x3570]
xorps xmm2, xmm2
ucomiss xmm2, xmm1
jbe 0x14003ccd4
xor edx, edx
jmp 0x14003cce7
ucomiss xmm1, xmm2
jne 0x14003d48c
cmp byte [rax + 0x4518], 0
sete dl
movzx edx, dl
sub ecx, edx
je 0x14003cd0e
call fcn.140050cb0
mov dword [r12 + 0x4a7c], 0x3f800000
movss xmm0, dword [0x140110e30]
mov rax, qword [0x14020ab90]
cmp byte [rax + 0x34dc], 0
je 0x14003cd20
cmp byte [rax + 0x44ac], 0
je 0x14003cd78
ucomiss xmm0, dword [0x140110e30]
setb al
cmp byte [r12 + 0x4a80], 0
setne cl
and cl, al
mov byte [r12 + 0x4a80], cl
je 0x14003cd53
cmp qword [r12 + 0x48d8], 0
setne bl
xor r14d, r14d
jmp 0x14003cd5d
mov r14, qword [r12 + 0x4a60]
xor ebx, ebx
mov qword [r12 + 0x4a60], 0
test sil, 1
jne 0x14003ce38
jmp 0x14003ce72
mov r14, qword [r12 + 0x4a60]
test r14, r14
je 0x14003cdf5
mov eax, dword [r12 + 0x490c]
cmp eax, 2
jne 0x14003cdf5
mov eax, dword [r12 + 0x4a58]
movss xmm0, dword [r12 + 0x4a78]
mulss xmm0, dword [0x140111a3c]
addss xmm0, dword [0x140114658]
minss xmm0, dword [0x140110e30]
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 0x14003ce02
movzx ecx, r13b
neg ecx
or ecx, 1
call fcn.140050cb0
xor ebx, ebx
xor r14d, r14d
test sil, 1
jne 0x14003ce38
jmp 0x14003ce72
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 0x14003ce72
mov rax, qword [0x14020ab90]
cmp byte [rax + 0x36cc], 0
je 0x14003ce72
xorps xmm0, xmm0
ucomiss xmm0, dword [rax + 0x36d0]
jne 0x14003ce72
cmp dword [rax + 0x4618], 0xffffffff
jne 0x14003ce72
mov byte [r12 + 0x4a80], 1
mov dword [r12 + 0x490c], 2
cmp byte [r12 + 0x4a80], 0
je 0x14003cf15
cmp dword [r12 + 0x490c], 2
jne 0x14003cf15
cmp dword [r12 + 0x37c0], 0
jg 0x14003ced0
cmp byte [r12 + 0xe24], 0
jne 0x14003ced0
cmp byte [r12 + 0xe25], 0
jne 0x14003ced0
cmp byte [r12 + 0xe27], 0
jne 0x14003ced0
mov rax, qword [0x14020ab90]
cmp dword [rax + 0x4618], 0xffffffff
je 0x14003e745
mov byte [r12 + 0x4a80], 0
mov cl, 1
mov rax, qword [0x14020ab90]
xorps xmm0, xmm0
ucomiss xmm0, dword [rax + 0x36d4]
movzx edx, byte [rax + 0x36cc]
jbe 0x14003cefb
test dl, dl
jne 0x14003cf03
jmp 0x14003cf0c
test dl, dl
je 0x14003d334
cmp byte [rax + 0x4620], 0
je 0x14003cf15
mov byte [r12 + 0x4a80], 0
mov rax, qword [r12 + 0x4a60]
test rax, rax
je 0x14003d066
test byte [rax + 0x14], 4
jne 0x14003d066
mov ecx, dword [r12 + 0x490c]
cmp ecx, 3
je 0x14003cf77
xorps xmm0, xmm0
cmp ecx, 2
jne 0x14003cfa7
cmp byte [r12 + 0xe25], 0
jne 0x14003cfa7
mov rcx, qword [0x14020ab90]
movss xmm1, dword [rcx + 0x2e78]
lea rdx, [rcx + 0x2e58]
subss xmm1, dword [rcx + 0x2e68]
add rcx, 0x2e48
jmp 0x14003cf9c
mov rcx, qword [0x14020ab90]
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 0x14003d066
movss xmm1, dword [r12 + 0x18]
mulss xmm1, dword [0x14011465c]
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 0x14003d066
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.14003a800
movsd xmm0, qword [r12 + 0x4a84]
subps xmm0, xmm6
movlps qword [r12 + 0x4a84], xmm0
test r14, r14
je 0x14003d0f3
mov rax, qword [r12 + 0x48d8]
test rax, rax
je 0x14003d085
cmp r14, qword [rax + 0x378]
je 0x14003d0e7
xor ecx, ecx
xor edx, edx
call fcn.140039840
mov rax, qword [0x14020ab90]
mov word [rax + 0x4915], 1
mov byte [rax + 0x4917], 1
mov rcx, r14
xor edx, edx
call fcn.14003ac60
mov rcx, r14
mov edx, 1
call fcn.14003a1f0
mov rdi, qword [r12 + 0x48d8]
cmp dword [rdi + 0x3a0], 0
je 0x14003d197
cmp word [rdi + 0x15e], 2
jne 0x14003d0e7
mov dword [r12 + 0x4910], 1
mov qword [r12 + 0x4a60], 0
test bl, bl
je 0x14003d1df
cmp qword [r12 + 0x48d8], 0
je 0x14003d1df
xor ecx, ecx
xor edx, edx
call fcn.140039840
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 0x14003d155
test byte [rdi + 0x15c], 2
jne 0x14003d155
mov edx, dword [rdi + 0x14]
and edx, eax
cmp edx, 0x1000000
je 0x14003d130
cmp rdi, rsi
je 0x14003d173
mov rcx, rdi
xor edx, edx
call fcn.14003a1f0
mov qword [rdi + 0x398], rsi
mov rsi, qword [r12 + 0x48d8]
test byte [rsi + 0x15c], 2
mov eax, dword [r12 + 0x4910]
jne 0x14003d18c
xor ecx, ecx
test eax, eax
jne 0x14003d1c3
jmp 0x14003d1df
test eax, eax
je 0x14003d1b4
xor eax, 1
mov ecx, eax
jmp 0x14003d1c3
mov rcx, rdi
xor edx, edx
call fcn.140048040
cmp word [rdi + 0x15e], 2
je 0x14003d0db
jmp 0x14003d0e7
mov dword [rsi + 0x3a4], 0
mov ecx, 1
call fcn.140050d90
mov rax, qword [0x14020ab90]
mov word [rax + 0x4915], 1
mov byte [rax + 0x4917], 1
mov ebx, ebp
or bl, byte [rsp + 0x28]
test bl, 1
je 0x14003d21f
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x14003d21f
test dword [rax + 0x14], 0x40000
sete byte [r15 + 0xdd]
jne 0x14003d227
cmp dword [r15 + 0x48e0], 0
je 0x14003d227
cmp byte [r15 + 0x4916], 0
jne 0x14003d227
mov al, 1
jmp 0x14003d232
mov byte [r15 + 0xdd], 0
cmp qword [r15 + 0x4a60], 0
setne al
mov byte [r15 + 0xde], al
mov rsi, qword [0x14020ab90]
mov ecx, dword [rsi + 8]
test cl, 2
jne 0x14003d251
xor eax, eax
test cl, 1
jne 0x14003d25c
jmp 0x14003d28c
movzx eax, byte [rsi + 0xc]
and al, 1
test cl, 1
je 0x14003d28c
cmp byte [rsi + 0x2f0c], 0
je 0x14003d28c
xorps xmm0, xmm0
ucomiss xmm0, dword [rsi + 0x2f10]
jne 0x14003d28c
cmp byte [rsi + 0x476c], 0
je 0x14003d283
cmp dword [rsi + 0x3f58], 0xffffffff
jne 0x14003d28c
cmp dword [rsi + 0x4048], 0xffffffff
je 0x14003d2be
test al, al
je 0x14003d71a
cmp byte [rsi + 0x34ec], 0
je 0x14003d71a
xorps xmm0, xmm0
ucomiss xmm0, dword [rsi + 0x34f0]
jne 0x14003d71a
cmp dword [rsi + 0x44b0], 0xffffffff
jne 0x14003d71a
test byte [rsi + 0x5ce4], 8
je 0x14003d2d3
lea rcx, str._nav__NavUpdateCancelRequest___n
call fcn.140032940
cmp dword [rsi + 0x3f58], 0
je 0x14003d3cc
xor ecx, ecx
xor edx, edx
call fcn.140039840
jmp 0x14003d71a
mov r8, qword [r8 + 0x3eb0]
inc rax
jmp 0x14003d30d
dec rax
cmp rax, 1
jbe 0x14003cbd6
lea r9d, [rax - 2]
mov r9, qword [r8 + r9*8]
cmp byte [r9 + 0xb7], 0
je 0x14003d300
cmp qword [r9 + 0x378], r9
jne 0x14003d300
test byte [r9 + 0x16], 8
jne 0x14003d300
jmp 0x14003cb50
cmp byte [rax + 0x4620], 0
setne al
or cl, al
jne 0x14003cf0c
cmp dword [r12 + 0x3f58], 0
je 0x14003d360
cmp byte [r12 + 0x3f65], 0
je 0x14003cf0c
movss xmm0, dword [r12 + 0xe08]
movss xmm1, dword [r12 + 0xe0c]
movss xmm2, dword [0x140114630]
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 0x14003cf0c
cmp dword [rsi + 0x4910], 0
je 0x14003d58b
xor ecx, ecx
call fcn.140050d90
mov rax, qword [0x14020ab90]
mov word [rax + 0x4915], 1
mov byte [rax + 0x4917], 1
jmp 0x14003d71a
movss xmm2, dword [rax + 0x3c]
ucomiss xmm1, xmm2
jbe 0x14003cc63
movaps xmm3, xmm1
subss xmm3, dword [rax + 0x18]
ucomiss xmm3, xmm1
jae 0x14003cc63
movss xmm4, dword [rax + 0x40]
xorps xmm5, xmm5
ucomiss xmm4, xmm5
jbe 0x14003e4b6
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 [0x140110e30]
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 0x14003e4c8
movss xmm2, dword [rax + 0x3c]
ucomiss xmm1, xmm2
jbe 0x14003ccd0
movaps xmm3, xmm1
subss xmm3, dword [rax + 0x18]
ucomiss xmm3, xmm1
jae 0x14003ccd0
movss xmm4, dword [rax + 0x40]
xorps xmm5, xmm5
ucomiss xmm4, xmm5
jbe 0x14003e4d5
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 [0x140110e30]
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 0x14003e4e7
cmp eax, 0x1fff
jle 0x14003d6ac
cmp eax, 0x8000
je 0x14003e468
cmp eax, 0x4000
je 0x14003e472
cmp eax, 0x2000
jne 0x14003d6c7
mov edi, 0x289
jmp 0x14003c913
cmp eax, 0x1fff
jle 0x14003d6ce
cmp eax, 0x8000
je 0x14003e47c
cmp eax, 0x4000
je 0x14003e486
cmp eax, 0x2000
jne 0x14003d6e9
mov ebx, 0x289
jmp 0x14003c9a1
mov r14, qword [rsi + 0x48d8]
test r14, r14
je 0x14003d67c
cmp r14, qword [r14 + 0x378]
je 0x14003d67c
test byte [r14 + 0x17], 4
jne 0x14003d67c
mov rdi, qword [r14 + 0x368]
test rdi, rdi
je 0x14003d67c
movsd xmm6, qword [r14 + 0x20]
movsd xmm7, qword [r14 + 0x28]
addps xmm7, xmm6
mov rcx, rdi
xor edx, edx
call fcn.14003a1f0
mov eax, dword [r14 + 0x80]
mov rcx, qword [0x14020ab90]
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 [0x14020ab90]
mov rcx, qword [rax + 0x48d8]
mov rcx, qword [rcx + 0x390]
movsxd rax, dword [rax + 0x4910]
mov dword [rcx + rax*8 + 0x3cc], 0x7f7fffff
jmp 0x14003d3e0
mov ecx, dword [rsi + 0x48a0]
test ecx, ecx
jle 0x14003d6f0
mov rax, qword [rsi + 0x48a8]
dec ecx
imul rdx, rcx, 0x38
mov rax, qword [rax + rdx + 8]
test rax, rax
je 0x14003d6f0
test byte [rax + 0x17], 8
jne 0x14003d6f0
mov dl, 1
call fcn.14004d180
jmp 0x14003d71a
cmp eax, 0x800
je 0x14003e490
mov edi, 0x288
cmp eax, 0x1000
je 0x14003c913
mov edi, eax
jmp 0x14003c913
cmp eax, 0x800
je 0x14003e4a4
mov ebx, 0x288
cmp eax, 0x1000
je 0x14003c9a1
mov ebx, eax
jmp 0x14003c9a1
test r14, r14
je 0x14003d710
mov eax, 0x5000000
and eax, dword [r14 + 0x14]
cmp eax, 0x1000000
je 0x14003d710
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 0x14003d748
cmp byte [r15 + 0x4916], 0
jne 0x14003d748
cmp qword [r15 + 0x4a60], 0
je 0x14003dbae
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x14003d762
test byte [rax + 0x16], 4
je 0x14003d762
mov byte [r15 + 0x4916], 1
mov eax, dword [r15 + 0x4904]
test eax, eax
je 0x14003d790
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 [0x14020ab90]
mov ebp, dword [r14 + 8]
test bpl, 2
jne 0x14003d7b1
xor r13d, r13d
jmp 0x14003d7ba
movzx r13d, byte [r14 + 0xc]
and r13b, 1
mov rdi, qword [r14 + 0x48d8]
cmp byte [r14 + 0x4952], 0
je 0x14003d7f6
test rdi, rdi
je 0x14003d7f6
test byte [r14 + 0x5ce4], 8
je 0x14003d9a3
mov edx, dword [r14 + 0x4960]
lea rcx, str._nav__NavMoveRequestForward__d_n
call fcn.140032940
jmp 0x14003d9a3
mov dword [r14 + 0x4960], 0xffffffff
mov qword [r14 + 0x4954], 0
test rdi, rdi
je 0x14003da10
mov r12d, 0xffffffff
cmp qword [r14 + 0x4a60], 0
jne 0x14003d98d
test byte [rdi + 0x16], 4
jne 0x14003d98d
mov esi, dword [r14 + 0x4768]
test sil, 1
jne 0x14003d891
test r13b, r13b
je 0x14003d85e
mov ecx, 0x26f
mov edx, 0xffffffff
mov r8d, 5
call fcn.14004b9f0
test al, al
jne 0x14003d883
test bpl, 1
je 0x14003d891
mov r12d, 0xffffffff
mov ecx, 0x201
mov edx, 0xffffffff
mov r8d, 5
call fcn.14004b9f0
test al, al
je 0x14003d891
mov dword [r14 + 0x4960], 0
xor r12d, r12d
test sil, 2
jne 0x14003d8e5
test r13b, r13b
je 0x14003d8b5
mov ecx, 0x270
mov edx, 0xffffffff
mov r8d, 5
call fcn.14004b9f0
test al, al
jne 0x14003d8d4
test bpl, 1
je 0x14003d8e5
mov ecx, 0x202
mov edx, 0xffffffff
mov r8d, 5
call fcn.14004b9f0
test al, al
je 0x14003d8e5
mov dword [r14 + 0x4960], 1
mov r12d, 1
test sil, 4
jne 0x14003d939
test r13b, r13b
je 0x14003d909
mov ecx, 0x271
mov edx, 0xffffffff
mov r8d, 5
call fcn.14004b9f0
test al, al
jne 0x14003d928
test bpl, 1
je 0x14003d939
mov ecx, 0x203
mov edx, 0xffffffff
mov r8d, 5
call fcn.14004b9f0
test al, al
je 0x14003d939
mov dword [r14 + 0x4960], 2
mov r12d, 2
test sil, 8
jne 0x14003d98d
test r13b, r13b
je 0x14003d95d
mov ecx, 0x272
mov edx, 0xffffffff
mov r8d, 5
call fcn.14004b9f0
test al, al
jne 0x14003d97c
test bpl, 1
je 0x14003d98d
mov ecx, 0x204
mov edx, 0xffffffff
mov r8d, 5
call fcn.14004b9f0
test al, al
je 0x14003d98d
mov dword [r14 + 0x4960], 3
mov r12d, 3
mov dword [r14 + 0x4968], r12d
movaps xmm0, xmmword [0x140114640]
movups xmmword [r14 + 0x497c], xmm0
cmp dword [r14 + 0x4960], 0xffffffff
xorps xmm6, xmm6
jne 0x14003da2d
and ebp, 1
je 0x14003da2d
mov r13, qword [0x14020ab90]
mov r12, qword [r13 + 0x48d8]
test byte [r12 + 0x16], 4
jne 0x14003da2d
cmp qword [r13 + 0x4a60], 0
jne 0x14003da2d
cmp byte [r13 + 0x2e7c], 0
je 0x14003d9fb
cmp byte [r13 + 0x476c], 0
je 0x14003e0ed
cmp dword [r13 + 0x3f58], 0xffffffff
je 0x14003e0ed
xor esi, esi
cmp byte [r13 + 0x2e8c], 0
jne 0x14003e103
jmp 0x14003e117
mov dword [r14 + 0x4968], 0xffffffff
movaps xmm0, xmmword [0x140114640]
movups xmmword [r14 + 0x497c], xmm0
xorps xmm6, xmm6
mov byte [r14 + 0x4952], 0
mov ecx, dword [r14 + 0x4960]
cmp ecx, 0xffffffff
je 0x14003db54
mov edx, dword [r14 + 0x4954]
mov r8d, dword [r14 + 0x4958]
mov r9d, dword [r14 + 0x4968]
mov rax, qword [0x14020ab90]
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 [0x1401145c0]
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 0x14003de02
cmp dword [r14 + 0x48e0], 0
jne 0x14003dc4d
test byte [r14 + 0x5ce4], 8
jne 0x14003db9c
mov word [r14 + 0x4919], 0x101
mov dword [r14 + 0x4928], 0
mov byte [r14 + 0x4916], 0
jmp 0x14003dc4d
mov r8d, dword [r14 + 0x4910]
test rdi, rdi
je 0x14003dc0f
mov rdx, qword [rdi + 8]
jmp 0x14003dc16
mov rcx, qword [r15 + 0x48d8]
test rcx, rcx
je 0x14003d762
test byte [rcx + 0x16], 4
jne 0x14003d748
test bpl, 1
je 0x14003e175
mov r8, qword [0x14020ab90]
cmp byte [r8 + 0x2eec], 0
je 0x14003e3d7
movzx ecx, byte [r8 + 0x4038]
test cl, cl
setne dl
test byte [rsp + 0x28], dl
jne 0x14003e3e2
test cl, cl
je 0x14003e5ed
xor ecx, ecx
xor edx, edx
jmp 0x14003e408
lea rdx, str._NULL_
lea rcx, str._nav__NavInitRequest:_from_move__window___s___layer_d_n
call fcn.140032940
mov word [r14 + 0x4919], 0x101
mov dword [r14 + 0x4928], 0
mov byte [r14 + 0x4916], 0
cmp byte [r14 + 0x4950], 0
je 0x14003de02
cmp dword [r14 + 0x490c], 3
jne 0x14003de02
cmp dword [r14 + 0x4910], 0
jne 0x14003de02
test rdi, rdi
je 0x14003de02
movd xmm0, dword [r14 + 0x4954]
pshufd xmm7, xmm0, 0x50
pand xmm7, xmmword [0x140114660]
movsd xmm10, qword [rdi + 0x110]
movsd xmm9, qword [rdi + 0x1f8]
movsd xmm8, qword [rdi + 0x200]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.140049ae0
pshufd xmm0, xmm7, 0x50
xorps xmm1, xmm1
pcmpeqd xmm1, xmm0
movmskpd eax, xmm1
test eax, eax
je 0x14003de07
addps xmm8, xmmword [0x140111730]
addps xmm9, xmmword [0x140111880]
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 0x14003dd3f
movaps xmm0, xmm11
shufps xmm0, xmm11, 0x55
ucomiss xmm0, dword [rdi + 0x3ac]
ja 0x14003dd3f
ucomiss xmm10, dword [rdi + 0x3b0]
jb 0x14003dd3f
movaps xmm0, xmm10
shufps xmm0, xmm10, 0x55
ucomiss xmm0, dword [rdi + 0x3b4]
jae 0x14003de07
test byte [r14 + 0x5ce4], 8
je 0x14003dd55
lea rcx, str._nav__NavMoveRequest:_clamp_NavRectRel_for_gamepad_move_n
call fcn.140032940
mov rax, qword [rdi]
movss xmm0, dword [rdi + 0x290]
mulss xmm0, dword [rax + 0x3c24]
mov rax, qword [rdi + 0x368]
mulss xmm0, dword [0x140111760]
test rax, rax
je 0x14003dd84
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 [0x140114670]
orps xmm1, xmm11
pshufd xmm1, xmm1, 0x44
subps xmm10, xmm0
andps xmm10, xmm7
andnps xmm7, xmmword [0x1401145c0]
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 0x14003de07
test rdi, rdi
je 0x14003de62
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 0x14003de73
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 0x14003de7e
movaps xmm3, xmm8
movaps xmm0, xmm5
movaps xmm1, xmm7
movaps xmm2, xmm4
jmp 0x14003de7e
xorps xmm2, xmm2
xorps xmm1, xmm1
xorps xmm0, xmm0
xorps xmm6, xmm6
jmp 0x14003df8d
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 0x14003df8d
mov edx, dword [r14 + 0x4960]
mov rcx, qword [rdi + 0x390]
mov r8, qword [0x14020ab90]
mov r8, qword [r8 + 0x48d8]
movss xmm4, dword [r8 + 0x110]
movss xmm3, dword [r8 + 0x114]
test byte [r14 + 0x4954], 0x80
jne 0x14003df39
movss xmm5, dword [0x140114510]
ucomiss xmm5, dword [rcx + rax*8 + 0x3c8]
jne 0x14003df13
movss xmm7, dword [0x140110e30]
addss xmm7, xmm2
minss xmm7, xmm0
subss xmm7, xmm4
movss dword [rcx + rax*8 + 0x3c8], xmm7
ucomiss xmm5, dword [rcx + rax*8 + 0x3cc]
jne 0x14003df39
movaps xmm5, xmm6
addss xmm5, xmm1
mulss xmm5, dword [0x140111760]
subss xmm5, xmm3
movss dword [rcx + rax*8 + 0x3cc], xmm5
mov r8d, edx
and r8d, 0xfffffffe
cmp r8d, 2
jne 0x14003df68
movss xmm3, dword [rcx + rax*8 + 0x3c8]
movss xmm5, dword [0x140114510]
ucomiss xmm5, xmm3
je 0x14003df8d
addss xmm3, xmm4
movaps xmm2, xmm3
movaps xmm0, xmm3
jmp 0x14003df8d
cmp edx, 1
ja 0x14003df8d
movss xmm4, dword [rcx + rax*8 + 0x3cc]
movss xmm5, dword [0x140114510]
ucomiss xmm5, xmm4
je 0x14003df8d
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 0x14003dffb
movss dword [r14 + 0x497c], xmm2
ucomiss xmm1, dword [r14 + 0x4980]
jb 0x14003e005
ucomiss xmm0, dword [r14 + 0x4984]
jbe 0x14003e018
movss dword [r14 + 0x4984], xmm0
ucomiss xmm6, dword [r14 + 0x4988]
ja 0x14003e022
cmp dword [r15 + 0x4960], 0xffffffff
jne 0x14003ea4c
jmp 0x14003e039
ucomiss xmm1, dword [r14 + 0x4980]
jae 0x14003dfce
movss dword [r14 + 0x4980], xmm1
ucomiss xmm0, dword [r14 + 0x4984]
ja 0x14003dfd8
ucomiss xmm6, dword [r14 + 0x4988]
jbe 0x14003dfeb
movss dword [r14 + 0x4988], xmm6
cmp dword [r15 + 0x4960], 0xffffffff
jne 0x14003ea4c
mov rsi, qword [0x14020ab90]
mov rdi, qword [rsi + 0x48d8]
test rdi, rdi
je 0x14003ea4c
cmp qword [rsi + 0x4a60], 0
jne 0x14003ea4c
test byte [rdi + 0x16], 4
jne 0x14003ea4c
cmp byte [rsi + 0x2e2c], 0
je 0x14003ea4c
movss xmm0, dword [rsi + 0x2e30]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003ea4c
ucomiss xmm0, xmm1
jne 0x14003e43e
cmp byte [rsi + 0x476c], 0
je 0x14003e0a8
cmp dword [rsi + 0x3f58], 0xffffffff
jne 0x14003ea4c
cmp dword [rsi + 0x3fa0], 0xffffffff
jne 0x14003ea4c
cmp byte [rsi + 0xe24], 0
jne 0x14003ea4c
cmp byte [rsi + 0xe26], 0
jne 0x14003ea4c
test byte [rsi + 8], 1
movzx eax, byte [rsi + 0xe25]
jne 0x14003e9e8
test al, al
jne 0x14003e9ec
jmp 0x14003ea05
cmp dword [r13 + 0x3fdc], 0xffffffff
sete sil
cmp byte [r13 + 0x2e8c], 0
je 0x14003e117
cmp byte [r13 + 0x476c], 0
je 0x14003e128
cmp dword [r13 + 0x3f58], 0xffffffff
je 0x14003e128
xor ebp, ebp
cmp byte [r13 + 0x2e9c], 0
jne 0x14003e13e
jmp 0x14003e1ab
cmp dword [r13 + 0x3fe8], 0xffffffff
sete bpl
cmp byte [r13 + 0x2e9c], 0
je 0x14003e1ab
movss xmm0, dword [r13 + 0x2ea0]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003e1ab
ucomiss xmm0, xmm1
jne 0x14003e18c
cmp byte [r13 + 0x476c], 0
je 0x14003e168
cmp dword [r13 + 0x3f58], 0xffffffff
jne 0x14003e1ab
cmp dword [r13 + 0x3ff4], 0xffffffff
sete cl
jmp 0x14003e1ad
cmp byte [rsp + 0x28], 0
je 0x14003e3c1
mov r8, qword [0x14020ab90]
jmp 0x14003e3e2
movss xmm1, dword [r13 + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003e1ab
movss xmm2, dword [r13 + 0x40]
mov ecx, 0x207
call fcn.14004b2c0
test eax, eax
jg 0x14003e154
xor ecx, ecx
cmp byte [r13 + 0x2eac], 0
je 0x14003e215
movss xmm0, dword [r13 + 0x2eb0]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003e215
ucomiss xmm0, xmm1
jne 0x14003e1ee
cmp byte [r13 + 0x476c], 0
je 0x14003e1e1
cmp dword [r13 + 0x3f58], 0xffffffff
jne 0x14003e215
cmp dword [r13 + 0x4000], 0xffffffff
sete dl
jmp 0x14003e217
movss xmm1, dword [r13 + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003e215
movss xmm2, dword [r13 + 0x40]
mov dword [rsp + 0x34], ecx
mov ecx, 0x208
call fcn.14004b2c0
mov ecx, dword [rsp + 0x34]
test eax, eax
jg 0x14003e1cd
xor edx, edx
cmp sil, bpl
jne 0x14003e226
mov eax, ecx
xor al, dl
je 0x14003da2d
cmp dword [r13 + 0x4910], 0
je 0x14003e23f
mov esi, ecx
xor ecx, ecx
mov ebp, edx
call fcn.140050d90
mov edx, ebp
mov ecx, esi
cmp word [r12 + 0x15c], 0
je 0x14003e314
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 0x14003e2a4
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 [0x14020ab90]
cmp byte [rsi + 0x2e7c], 0
je 0x14003e52f
movss xmm0, dword [rsi + 0x2e80]
ucomiss xmm1, xmm0
ja 0x14003e52f
ucomiss xmm0, xmm1
jne 0x14003e4f4
cmp byte [rsi + 0x3fe4], 0
jne 0x14003e52f
xorps xmm6, xmmword [0x140111e90]
mov eax, 2
mov ecx, 3
jmp 0x14003e570
cmp byte [r12 + 0x162], 0
je 0x14003e24f
mov r13d, edx
mov ebp, ecx
mov rsi, qword [0x14020ab90]
cmp byte [rsi + 0x2e7c], 0
je 0x14003e8dc
movss xmm0, dword [rsi + 0x2e80]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003e8dc
ucomiss xmm0, xmm1
jne 0x14003e8bb
cmp byte [rsi + 0x476c], 0
je 0x14003e36f
cmp dword [rsi + 0x3f58], 0xffffffff
jne 0x14003e8dc
cmp dword [rsi + 0x3fdc], 0xffffffff
jne 0x14003e8dc
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 0x14003da2a
xor edx, edx
mov r8d, dword [r15 + 0x3f58]
xor r9d, r9d
mov ecx, 0
jmp 0x14003e731
cmp byte [rsp + 0x28], 0
je 0x14003e705
cmp byte [r8 + 0x350c], 0
je 0x14003e3fa
cmp byte [r8 + 0x44d0], 0
je 0x14003e5d5
xor edx, edx
xor ecx, ecx
test bpl, 1
je 0x14003e7ac
cmp byte [r8 + 0x2efc], 0
je 0x14003e7ac
movzx r9d, byte [r8 + 0x4044]
test r9b, r9b
setne r10b
test byte [rsp + 0x28], r10b
jne 0x14003e7b3
test r9b, r9b
jne 0x14003e7cb
jmp 0x14003e975
movss xmm1, dword [rsi + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003ea4c
movss xmm2, dword [rsi + 0x40]
mov ecx, 0x200
call fcn.14004b2c0
test eax, eax
jg 0x14003e092
jmp 0x14003ea4c
mov edi, 0x28b
jmp 0x14003c913
mov edi, 0x28a
jmp 0x14003c913
mov ebx, 0x28b
jmp 0x14003c9a1
mov ebx, 0x28a
jmp 0x14003c9a1
movzx eax, byte [r12 + 0x79]
lea edi, [rax + rax*2]
or edi, 0x288
jmp 0x14003c913
movzx eax, byte [rsi + 0x79]
lea ebx, [rax + rax*2]
or ebx, 0x288
jmp 0x14003c9a1
cmpltps xmm3, xmm2
cmpleps xmm2, xmm1
andps xmm2, xmm3
movd ecx, xmm2
and ecx, 1
test ecx, ecx
jg 0x14003ccaa
jmp 0x14003cc63
cmpltps xmm3, xmm2
cmpleps xmm2, xmm1
andps xmm2, xmm3
movd edx, xmm2
and edx, 1
test edx, edx
jg 0x14003ccdd
jmp 0x14003ccd0
movss xmm1, dword [rsi + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003e52f
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.14004b2c0
mov r8, qword [rsp + 0x40]
mov edx, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x34]
test eax, eax
jg 0x14003e2f1
cmp byte [rsi + 0x2e8c], 0
je 0x14003e649
movss xmm0, dword [rsi + 0x2e90]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003e649
ucomiss xmm0, xmm1
jne 0x14003e60e
cmp byte [rsi + 0x3ff0], 0
jne 0x14003e649
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 0x14003da2d
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 0x14003da2d
test bpl, 1
je 0x14003e74c
cmp byte [r8 + 0x2eec], 0
je 0x14003e75b
xorps xmm0, xmm0
ucomiss xmm0, dword [r8 + 0x2ef0]
jne 0x14003e75b
cmp byte [r8 + 0x4038], 0
sete cl
jmp 0x14003e75d
movss xmm1, dword [rsi + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003e649
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.14004b2c0
mov r8, qword [rsp + 0x40]
mov edx, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x34]
test eax, eax
jg 0x14003e559
lea rax, [r12 + rbp]
add rax, 0x3b4
test cl, cl
je 0x14003e6a7
mov dword [rax], 0
mov dword [r8 + 4], 0
movss xmm0, dword [r8]
ucomiss xmm0, dword [r12 + rbp + 0x3b0]
jbe 0x14003e68c
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 0x14003da2a
xorps xmm6, xmm6
test dl, dl
je 0x14003da2d
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 0x14003e6ea
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 0x14003da2d
cmp byte [r8 + 0x2efc], 0
je 0x14003e71d
cmp byte [r8 + 0x4044], 0
je 0x14003e971
mov r8d, dword [r15 + 0x3f58]
xor r9d, r9d
mov ecx, 0
mov edx, 0
mov r10d, 0
test r8d, r8d
jne 0x14003e825
jmp 0x14003e853
xor ecx, ecx
jmp 0x14003cee2
mov dl, 1
cmp byte [rsp + 0x28], 0
je 0x14003e3c3
jmp 0x14003e784
xor ecx, ecx
mov dl, 1
test cl, cl
jne 0x14003e408
mov r9d, dword [rsp + 0x28]
xor r9b, 1
jne 0x14003e408
cmp byte [r8 + 0x350c], 0
je 0x14003e9e1
mov dl, 1
xorps xmm0, xmm0
ucomiss xmm0, dword [r8 + 0x3510]
jne 0x14003e3fc
cmp byte [r8 + 0x44d0], 0
sete cl
test bpl, 1
jne 0x14003e408
cmp byte [rsp + 0x28], 0
je 0x14003e7cb
cmp byte [r8 + 0x34fc], 0
je 0x14003e7cb
cmp byte [r8 + 0x44c4], 0
je 0x14003e89e
xor r10d, r10d
xor r9d, r9d
mov r8d, dword [r15 + 0x3f58]
test cl, cl
je 0x14003e7fc
test r8d, r8d
jne 0x14003e7fc
mov dword [r15 + 0x48e8], eax
mov dword [r15 + 0x48f4], 2
test r9b, r9b
jne 0x14003e839
mov cl, 1
jmp 0x14003e850
test r8d, r8d
je 0x14003e834
cmp r8d, eax
sete r11b
test r9b, r11b
je 0x14003e825
mov dword [r15 + 0x48e8], eax
mov dword [r15 + 0x48f4], 1
mov r9b, 1
mov r8d, eax
or dl, r10b
cmp dl, 1
jne 0x14003e86f
cmp r8d, eax
je 0x14003e85c
jmp 0x14003e86f
test r9b, r9b
je 0x14003e850
mov dword [r15 + 0x48e8], eax
mov dword [r15 + 0x48f4], 1
mov r9b, 1
jmp 0x14003e853
xor r9d, r9d
test dl, dl
jne 0x14003e85c
test r10b, r10b
je 0x14003e885
mov dword [r15 + 0x48ec], eax
mov r8d, dword [r15 + 0x3f58]
test r8d, r8d
je 0x14003e885
or cl, r9b
cmp cl, 1
jne 0x14003d748
cmp r8d, eax
je 0x14003e892
jmp 0x14003d748
test r9b, r9b
jne 0x14003e892
test cl, cl
je 0x14003d748
mov dword [r15 + 0x48f0], eax
jmp 0x14003d748
test bpl, 1
je 0x14003e962
cmp byte [r8 + 0x2efc], 0
jne 0x14003e975
jmp 0x14003e990
movss xmm1, dword [rsi + 0x3c]
ucomiss xmm0, xmm1
jbe 0x14003e8dc
movss xmm2, dword [rsi + 0x40]
mov ecx, 0x205
call fcn.14004b2c0
test eax, eax
jg 0x14003e359
mov ecx, 0x206
mov edx, 0xffffffff
mov r8d, 1
call fcn.14004b9f0
test al, al
je 0x14003e915
movss xmm0, dword [r12 + 0x204]
addss xmm0, dword [r12 + 0x88]
subss xmm0, dword [r12 + 0x1fc]
jmp 0x14003e93b
test bpl, bpl
je 0x14003e928
mov dword [r12 + 0x98], 0
jmp 0x14003e945
test r13b, r13b
je 0x14003da2d
movss xmm0, dword [r12 + 0x90]
movss dword [r12 + 0x98], xmm0
mov dword [r12 + 0xa0], 0
mov dword [r12 + 0xa8], 0
jmp 0x14003da2d
cmp byte [rsp + 0x28], 0
jne 0x14003e9bc
mov r10b, 1
jmp 0x14003e7ce
xor edx, edx
xor ecx, ecx
xorps xmm0, xmm0
ucomiss xmm0, dword [r8 + 0x2f00]
jne 0x14003e990
cmp byte [r8 + 0x4044], 0
sete r9b
jmp 0x14003e993
xor r9d, r9d
mov r10b, 1
test r9b, r9b
jne 0x14003e7d1
mov r11d, dword [rsp + 0x28]
xor r11b, 1
jne 0x14003e7d1
cmp byte [r8 + 0x34fc], 0
je 0x14003e7ce
mov r10b, 1
xorps xmm0, xmm0
ucomiss xmm0, dword [r8 + 0x3500]
jne 0x14003e7ce
cmp byte [r8 + 0x44c4], 0
sete r9b
jmp 0x14003e7d1
xor ecx, ecx
jmp 0x14003e408
test al, al
je 0x14003e9f8
mov edx, 2
mov eax, 0xffffffff
jmp 0x14003ea16
cmp byte [rsi + 0x4916], 0
je 0x14004022b
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.14004a5a0
mov dword [rsi + 0x4994], 0xffffffff
mov rax, qword [0x14020ab90]
mov cl, 1
cmp byte [rax + 0x4951], 0
jne 0x14003ea65
movzx ecx, byte [rax + 0x4919]
mov byte [rax + 0x4918], cl
mov byte [r15 + 0x4914], 0
mov rcx, qword [r15 + 0x48d8]
test rcx, rcx
je 0x14003ebff
test byte [rcx + 0x16], 4
jne 0x14003ebff
cmp qword [r15 + 0x4a60], 0
jne 0x14003ebff
mov rdx, qword [rcx]
movss xmm0, dword [rcx + 0x290]
mulss xmm0, dword [rdx + 0x3c24]
mov rdx, qword [rcx + 0x368]
test rdx, rdx
je 0x14003eac2
mulss xmm0, dword [rdx + 0x290]
mulss xmm0, dword [0x140111a34]
mulss xmm0, dword [r15 + 0x18]
addss xmm0, dword [0x140111760]
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
cmp word [rcx + 0x15c], 0
je 0x14003eb42
cmp byte [rsp + 0x28], 0
je 0x14003ebff
movss xmm3, dword [rax + 0x35d8]
movss xmm1, dword [rax + 0x35f8]
subss xmm3, dword [rax + 0x35c8]
cmp byte [rax + 0x355c], 0
je 0x14003eb1e
cmp byte [rax + 0x450c], 0
je 0x14003eb70
movss xmm2, dword [0x140110e30]
cmp byte [rax + 0x356c], 0
je 0x14003eb78
cmp byte [rax + 0x4518], 0
jne 0x14003eb78
movss xmm2, dword [0x140111c48]
jmp 0x14003eb78
cmp byte [rcx + 0x162], 0
je 0x14003eae9
mov edx, dword [r15 + 0x4960]
cmp edx, 0xffffffff
je 0x14003eae9
cmp edx, 1
ja 0x1400401cd
test edx, edx
je 0x140040198
movaps xmm1, xmm0
jmp 0x1400401a2
movss xmm2, dword [0x140114680]
subss xmm1, dword [rax + 0x35e8]
xorps xmm4, xmm4
ucomiss xmm3, xmm4
je 0x14003ebc7
cmp byte [rcx + 0xb4], 0
je 0x14003ebc7
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 0x14003ebff
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 0x14003ec47
cmp byte [rsp + 0x38], 0
je 0x14003ec51
test byte [r15 + 8], 4
je 0x14003ec51
test byte [r15 + 0xc], 4
je 0x14003ec51
lea rcx, [rsp + 0x50]
call fcn.14004cfb0
mov rax, qword [rsp + 0x50]
mov qword [r15 + 0x36f0], rax
mov qword [r15 + 0xe08], rax
mov byte [r15 + 0xdb], 1
mov rax, qword [0x14020ab90]
jmp 0x14003ec51
mov word [r15 + 0x4916], 1
mov dword [r15 + 0x498c], 0
cmp byte [rax + 0xe25], 0
je 0x14003ec6e
movzx ecx, byte [rax + 0x79]
xor cl, 1
jmp 0x14003ec70
xor ecx, ecx
mov r15, qword [rsp + 0x48]
mov byte [rax + 0x3775], cl
movsd xmm0, qword [rax + 0xe08]
ucomiss xmm0, dword [0x140114630]
jb 0x14003ecc6
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
ucomiss xmm1, dword [0x140114630]
jb 0x14003ecc6
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 [0x140114630]
jb 0x14003ed31
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
ucomiss xmm1, dword [0x140114630]
jb 0x14003ed31
movsd xmm1, qword [rax + 0x36f0]
ucomiss xmm1, dword [0x140114630]
jb 0x14003ed31
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
ucomiss xmm2, dword [0x140114630]
jb 0x14003ed31
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 0x14003ed3c
mov byte [rax + 0x4917], 0
jmp 0x14003ed3c
mov qword [rax + 0xf8], 0
mov rcx, qword [rax + 0xe08]
movq xmm0, rcx
mov qword [rax + 0x36f0], rcx
movss xmm1, dword [0x140114630]
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 0x14003edaa
inc r11
inc r8
inc r9
add r10, 2
cmp r8, 0x374d
je 0x14003ef82
cmp byte [rax + r9 - 0x2956], 0
je 0x14003ee90
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 0x14003ee00
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 0x14003eee0
movsd xmm2, qword [rax + 0x3e48]
subsd xmm2, qword [rax + r8*8 - 0x18320]
cvtsd2ss xmm2, xmm2
ucomiss xmm2, dword [rax + 0x30]
jae 0x14003ef20
xorps xmm2, xmm2
test dl, 1
je 0x14003ee61
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 0x14003ef20
inc word [rax + r8*2 - 0x3734]
jmp 0x14003ef2b
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 0x14003ef63
xorps xmm2, xmm2
test dl, 1
je 0x14003ef06
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 0x14003ef63
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 0x14003ed90
mov byte [rax + 0x4917], 0
jmp 0x14003ed90
call fcn.14003ad60
call fcn.14003a6a0
mov rbx, qword [0x14020ab90]
mov eax, dword [rbx + 0x48a0]
test eax, eax
jle 0x14003efd2
mov rcx, qword [rbx + 0x48a8]
inc rax
jmp 0x14003efb9
dec rax
cmp rax, 1
jbe 0x14003efd2
lea edx, [rax - 2]
imul rdx, rdx, 0x38
mov rdx, qword [rcx + rdx + 8]
test rdx, rdx
je 0x14003efb0
test byte [rdx + 0x17], 8
je 0x14003efb0
jmp 0x14003efe9
cmp qword [r15 + 0x4a60], 0
je 0x14003f013
xorps xmm0, xmm0
ucomiss xmm0, dword [r15 + 0x4a7c]
jae 0x14003f013
movss xmm0, dword [r15 + 0x18]
mulss xmm0, dword [0x140111790]
addss xmm0, dword [r15 + 0x4a94]
minss xmm0, dword [0x140110e30]
movss dword [r15 + 0x4a94], xmm0
jmp 0x14003f03a
movss xmm0, dword [r15 + 0x18]
mulss xmm0, dword [0x140114654]
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 0x14003f14d
movss xmm0, dword [rbx + 0x3f2c]
subss xmm0, dword [rbx + 0x18]
movss dword [rbx + 0x3f2c], xmm0
movsd xmm1, qword [rbx + 0xe08]
ucomiss xmm1, dword [0x140114630]
jb 0x14003f0e0
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
ucomiss xmm2, dword [0x140114630]
jb 0x14003f0e0
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 0x14003f0eb
xorps xmm1, xmm1
ucomiss xmm0, xmm1
mov r14, rbx
ja 0x14003f152
mov dword [rbx + 0x3f2c], 0
test byte [rbx + 0x5ce4], 0x40
mov r14, rbx
je 0x14003f11b
lea rcx, str._io__LockWheelingWindow_____s__n
lea rdx, [0x140116114]
call fcn.140032940
mov r14, qword [0x14020ab90]
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 0x14003f152
xor edi, edi
mov r14, rbx
xorps xmm0, xmm0
cmp dword [r14 + 0x45e8], 0xffffffff
xorps xmm1, xmm1
je 0x14003f43b
cmp dword [r14 + 0x45f4], 0xffffffff
je 0x14003f451
mov rsi, rdi
test rdi, rdi
jne 0x14003f188
mov rsi, qword [rbx + 0x3f00]
test rsi, rsi
je 0x14003f195
cmp byte [rsi + 0xb9], 0
je 0x14003f45e
movss xmm6, dword [0x140114510]
cmp byte [r15 + 0x3e5f], 0
jne 0x14003f1cc
movss xmm0, dword [r15 + 0x80]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003f1cc
movsd xmm1, qword [r15 + 0x3e48]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm1
subss xmm6, xmm0
cmp dword [r15 + 0x3e98], 0
je 0x14003f249
xor esi, esi
jmp 0x14003f1ef
inc rsi
mov eax, dword [r15 + 0x3e98]
cmp rsi, rax
je 0x14003f249
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 0x14003f1e0
cmp byte [rcx + 0x3e4], 0
jne 0x14003f1e0
ucomiss xmm6, dword [rcx + 0x264]
jbe 0x14003f1e0
call fcn.1400395b0
jmp 0x14003f1e0
mov eax, dword [r15 + 0x4ba0]
test eax, eax
jle 0x14003f2a0
xor esi, esi
xorps xmm7, xmm7
xor edi, edi
jmp 0x14003f272
inc rdi
movsxd rcx, eax
add rsi, 0x238
cmp rdi, rcx
jge 0x14003f2a0
mov rcx, qword [r15 + 0x4ba8]
movss xmm0, dword [rcx + rdi*4]
ucomiss xmm7, xmm0
ja 0x14003f260
ucomiss xmm0, xmm6
jae 0x14003f260
mov rcx, qword [r15 + 0x4b80]
add rcx, rsi
call fcn.14006d8a0
mov eax, dword [r15 + 0x4ba0]
jmp 0x14003f260
mov eax, dword [r15 + 0x4b68]
test eax, eax
jle 0x14003f2f7
xor esi, esi
xorps xmm7, xmm7
xor edi, edi
jmp 0x14003f2cf
inc rdi
movsxd rcx, eax
add rsi, 0x70
cmp rdi, rcx
jge 0x14003f2f7
mov rcx, qword [r15 + 0x4b70]
movss xmm0, dword [rcx + rsi + 4]
ucomiss xmm7, xmm0
ja 0x14003f2c0
ucomiss xmm0, xmm6
jae 0x14003f2c0
add rcx, rsi
call fcn.14006d980
mov eax, dword [r15 + 0x4b68]
jmp 0x14003f2c0
cmp byte [r15 + 0x3e5f], 0
je 0x14003f387
mov rsi, qword [0x14020ab90]
mov rcx, qword [rsi + 0x4888]
test rcx, rcx
je 0x14003f341
mov qword [rsi + 0x4880], 0
dec dword [rsi + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
mov qword [rsi + 0x4888], 0
mov rcx, qword [rsi + 0x4898]
test rcx, rcx
je 0x14003f382
mov qword [rsi + 0x4890], 0
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f36a
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
mov qword [rsi + 0x4898], 0
call fcn.14006d9a0
mov byte [r15 + 0x3e5f], 0
mov rax, qword [r15 + 0x48d8]
test rax, rax
je 0x14003f3a8
cmp byte [rax + 0xb7], 0
je 0x14003f60b
cmp dword [r15 + 0x3ecc], 0
jns 0x14003f674
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f3c8
inc dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
xor ecx, ecx
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [r15 + 0x3ed0]
test rdx, rdx
je 0x14003f424
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 0x14003f417
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f417
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
mov qword [r15 + 0x3ed0], rdi
mov dword [r15 + 0x3ecc], 0
jmp 0x14003f674
movss xmm1, dword [rbx + 0xe1c]
cmp dword [r14 + 0x45f4], 0xffffffff
jne 0x14003f174
movss xmm0, dword [rbx + 0xe18]
jmp 0x14003f174
xorps xmm2, xmm2
ucomiss xmm0, xmm2
movzx eax, byte [rbx + 0xe24]
je 0x14003f969
test al, al
je 0x14003f971
cmp byte [rbx + 0x64], 0
je 0x14003f195
andps xmm0, xmmword [0x140111740]
movss xmm1, dword [0x140114684]
mulss xmm0, xmm1
addss xmm0, dword [r14 + 0x3f2c]
minss xmm0, xmm1
movss dword [r14 + 0x3f2c], xmm0
cmp qword [r14 + 0x3f18], rsi
je 0x14003f4e4
test byte [r14 + 0x5ce4], 0x40
je 0x14003f4cf
mov rdx, qword [rsi + 8]
lea rcx, str._io__LockWheelingWindow_____s__n
call fcn.140032940
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 [0x140114680]
addss xmm0, xmm1
minss xmm0, dword [0x140114688]
maxss xmm0, dword [0x140111760]
movss dword [rsi + 0x290], xmm0
cmp rsi, qword [rsi + 0x378]
jne 0x14003f195
divss xmm0, xmm1
movss xmm1, dword [0x140110e30]
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 0x14003f5f0
test byte [rsi + 0x15], 1
jne 0x14003f5b8
mov rax, qword [0x14020ab90]
ucomiss xmm2, dword [rax + 0x5c0c]
jb 0x14003f5b8
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 0x14003f195
mov rcx, qword [0x14020ab90]
mov eax, dword [rcx + 0x3ea8]
test eax, eax
jle 0x14003f65a
dec eax
mov rdx, qword [rcx + 0x3eb0]
inc rax
jmp 0x14003f635
dec rax
jle 0x14003f65a
mov rcx, qword [rdx + rax*8 - 8]
test rcx, rcx
je 0x14003f630
cmp byte [rcx + 0xb7], 0
je 0x14003f630
mov r8d, dword [rcx + 0x14]
not r8d
test r8d, 0x40200
je 0x14003f630
jmp 0x14003f65c
xor ecx, ecx
mov edx, 1
call fcn.14003a1f0
cmp dword [r15 + 0x3ecc], 0
js 0x14003f3b6
mov dword [r15 + 0x3ec8], 0
cmp dword [r15 + 0x48b4], 0
jns 0x14003f70d
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f69f
inc dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
xor ecx, ecx
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [r15 + 0x48b8]
test rdx, rdx
je 0x14003f6fb
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 0x14003f6ee
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f6ee
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
mov qword [r15 + 0x48b8], rdi
mov dword [r15 + 0x48b4], 0
mov dword [r15 + 0x48b0], 0
cmp dword [r15 + 0x4884], 0
js 0x14003f741
mov dword [r15 + 0x4880], 0
je 0x14003f7c1
mov rdi, qword [r15 + 0x4888]
xor eax, eax
jmp 0x14003f84b
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f753
inc dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
xor ecx, ecx
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [r15 + 0x4888]
test rdx, rdx
je 0x14003f7af
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 0x14003f7a2
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f7a2
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
mov qword [r15 + 0x4888], rdi
mov qword [r15 + 0x4880], 0
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f7d3
inc dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
mov ecx, 0x20
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [r15 + 0x4888]
test rdx, rdx
je 0x14003f832
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 0x14003f825
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f825
dec dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
call qword [0x1401ec340]
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 0x14003f8ed
mov rax, qword [0x14020ab90]
test rax, rax
je 0x14003f87b
inc dword [rax + 0xf4]
mov rdx, qword [0x14020aba0]
xor ecx, ecx
call qword [0x1401ec338]
mov rdi, rax
mov rdx, qword [r15 + 0x4898]
test rdx, rdx
je 0x14003f8db
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 0x14003f8ce
mov qword [r15 + 0x4898], rdi
mov dword [r15 + 0x4894], 0
mov dword [r15 + 0x4890], 0
mov rbx, qword [0x14020ab90]
mov dword [rbx + 0x5d18], 0
cmp byte [rbx + 0x5d13], 0
je 0x14003fc91
mov edi, dword [rbx + 0x3f48]
mov dword [rbx + 0x4a98], 7
cmp byte [rbx + 0x2f0c], 0
je 0x14003fb3a
movss xmm0, dword [rbx + 0x2f10]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14003fb3a
test al, al
jne 0x14003f195
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 [0x140111740]
andps xmm0, xmm3
movsd xmm6, qword [rbx + 0x3f30]
movsd xmm1, qword [rbx + 0x3f38]
mulps xmm1, xmmword [str.www_www_]
mulps xmm0, xmmword [0x1401146a0]
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 0x14003f195
test rdi, rdi
je 0x14003fac2
movzx eax, word [rdi + 0x14]
test eax, 0x210
jne 0x14003f195
xorps xmm0, xmm0
ucomiss xmm6, xmm0
je 0x14003ffc5
ucomiss xmm0, dword [rdi + 0x8c]
setne al
jmp 0x14003ffc7
pextrw ecx, xmm2, 2
xorps xmm0, xmm0
ucomiss xmm6, xmm0
je 0x14003ff52
mov rax, qword [r14 + 0x3f00]
mov edx, dword [rax + 0x14]
mov r8d, edx
mov rdi, rax
and r8d, 0x1000000
je 0x14003fb1e
mov r9d, edx
mov rdi, rax
jmp 0x14003fb08
mov rdi, qword [rdi + 0x368]
mov r9d, dword [rdi + 0x14]
test r9d, 0x1000000
je 0x14003fb1e
ucomiss xmm0, dword [rdi + 0x8c]
je 0x14003faf4
and r9d, 0x210
cmp r9d, 0x10
je 0x14003faf4
test cl, 1
jne 0x14003fa03
jmp 0x14003ff71
mov esi, dword [rbx + 0xe28]
cmp esi, 0x3000
jne 0x14003fbb9
mov dword [rbx + 0x3f40], 0
mov eax, dword [rbx + 0x5d30]
inc eax
cmp dword [rbx + 0x3e50], eax
jne 0x14003fddc
mov esi, dword [rbx + 0x3f48]
test esi, esi
je 0x14003fcce
movzx eax, byte [r15 + 0x5d11]
test al, al
je 0x14003fdfe
test cl, 1
jne 0x14003f195
mov rax, qword [r14 + 0x3f00]
mov edx, dword [rax + 0x14]
mov r8d, edx
and r8d, 0x1000000
xor edi, edi
test r8d, r8d
je 0x14003ffa1
xorps xmm0, xmm0
jmp 0x14003ff8d
mov rax, qword [rax + 0x368]
mov edx, dword [rax + 0x14]
test edx, 0x1000000
je 0x14003ffa1
ucomiss xmm0, dword [rax + 0x90]
je 0x14003ff7b
and edx, 0x210
cmp edx, 0x10
je 0x14003ff7b
test rdi, rdi
sete dl
cmp rdi, rax
sete r8b
or r8b, dl
or cl, r8b
test cl, 1
je 0x14004013e
mov rdi, rax
jmp 0x14003fa03
xor eax, eax
mov byte [rsp + 0x50], al
movaps xmm7, xmm6
shufps xmm7, xmm6, 0x55
ucomiss xmm7, xmm0
je 0x140040013
movss xmm0, dword [rdi + 0x90]
xorps xmm1, xmm1
ucomiss xmm1, xmm0
setne byte [rsp + 0x51]
test al, al
je 0x140040018
ucomiss xmm0, xmm1
je 0x140040018
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 0x140040018
mov byte [rsp + 0x51], 0
test al, al
je 0x1400400a5
mov rcx, rdi
movaps xmm1, xmm6
call fcn.140050880
movss xmm0, dword [rdi + 0x200]
subss xmm0, dword [rdi + 0x1f8]
mulss xmm0, dword [0x1401146b0]
mov rax, qword [rdi]
movss xmm1, dword [rdi + 0x290]
mulss xmm1, dword [rax + 0x3c24]
mov rax, qword [rdi + 0x368]
test rax, rax
je 0x14004006a
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 0x14003f195
mov rcx, rdi
movaps xmm1, xmm7
call fcn.140050880
movss xmm0, dword [rdi + 0x204]
subss xmm0, dword [rdi + 0x1fc]
mulss xmm0, dword [0x1401146b0]
mov rax, qword [rdi]
movss xmm1, dword [rdi + 0x290]
mulss xmm1, dword [rax + 0x3c24]
mov rax, qword [rdi + 0x368]
test rax, rax
je 0x1400400fa
mulss xmm1, dword [rax + 0x290]
mulss xmm1, dword [0x14011178c]
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 0x14003f195
mov ecx, dword [r14 + 0x3e50]
mov edx, dword [r14 + 0x3f28]
cmp edx, 0xffffffff
jne 0x14004015a
mov dword [r14 + 0x3f28], ecx
mov edx, ecx
xorps xmm0, xmm0
ucomiss xmm6, xmm0
je 0x140040166
cmp edx, ecx
je 0x14004017d
movss xmm0, dword [r14 + 0x3f38]
ucomiss xmm0, dword [r14 + 0x3f3c]
jne 0x140040222
movss dword [r14 + 0x3f30], xmm6
shufps xmm6, xmm6, 0x55
movss dword [r14 + 0x3f34], xmm6
jmp 0x14003f195
movaps xmm1, xmmword [0x140111e90]
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 0x14003eae9
cmp edx, 2
je 0x1400401e8
movaps xmm1, xmm0
jmp 0x1400401f2
movaps xmm1, xmmword [0x140111e90]
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 0x14003eae9
cmovbe rdi, rax
jmp 0x14003fa03
mov edx, 3
mov eax, 1
jmp 0x14003ea16