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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x248
movups xmmword [rsp + 0x1a0], xmm6
movups xmmword [rsp + 0x1b0], xmm7
movups xmmword [rsp + 0x1c0], xmm8
movups xmmword [rsp + 0x1d0], xmm9
movups xmmword [rsp + 0x1e0], xmm10
movups xmmword [rsp + 0x1f0], xmm11
movups xmmword [rsp + 0x200], xmm12
movups xmmword [rsp + 0x210], xmm13
movups xmmword [rsp + 0x220], xmm14
movups xmmword [rsp + 0x230], xmm15
mov rsi, qword [0x140218048]
mov qword [rsp + 0x290], rcx
mov edi, r8d
mov qword [rsp + 0x298], rdx
call fcn.140011140
test rax, rax
mov qword [rsp + 0x58], rax
mov rbx, rax
sete byte [rsp + 0x7b]
je 0x140030060
mov edx, edi
mov eax, edi
mov r13d, dword [rsi + 0x3f60]
not edx
or eax, 6
and edx, 0x30200
cmove edi, eax
mov eax, dword [rbx + 0x270]
xor edx, edx
mov dword [rsp + 0x4c], eax
movsxd rax, dword [rsi + 0x3fd8]
test eax, eax
jne 0x14002d317
movzx edx, byte [rsi + 0x3f6d]
mov byte [rbx + 0xc6], dl
mov ecx, edi
lea edx, [r13 - 1]
cmp dword [rsp + 0x4c], edx
setl r12b
and ecx, 0x4000000
mov dword [rsp + 0x50], ecx
je 0x14002d36d
movsxd rcx, dword [rsi + 0x4aa0]
lea rdx, [rcx*8]
sub rdx, rcx
mov rcx, qword [rsi + 0x4a98]
lea rcx, [rcx + rdx*8]
mov edx, dword [rcx]
cmp dword [rbx + 0xd8], edx
setne dl
or edx, r12d
cmp qword [rcx + 8], rbx
setne r12b
or r12d, edx
mov byte [rbx + 0xc4], r12b
test r12b, r12b
je 0x14002d383
or dword [rbx + 0xe8], 0x80808
cmp dword [rsp + 0x4c], r13d
jne 0x14002ed10
mov edi, dword [rbx + 0x14]
xor r9d, r9d
test eax, eax
jne 0x14002f370
mov eax, edi
mov rbp, qword [rbx + 0x378]
and eax, 0x4000000
mov dword [rsp + 0x50], eax
movsxd rax, dword [rbx + 0x100]
test eax, eax
je 0x14002eded
movdqu xmm7, xmmword [rsi + 0x4978]
movd xmm1, dword [rsi + 0x4a40]
movd xmm0, eax
mov qword [rsi + 0x4008], rbx
movd xmm2, dword [rsi + 0x4a70]
movd xmm6, dword [rsi + 0x4aa0]
mov qword [rsp + 0x140], rbx
movups xmmword [rsp + 0x148], xmm7
movdqu xmm7, xmmword [rsi + 0x4988]
movzx eax, word [rsi + 0x5e34]
punpckldq xmm2, xmm6
movups xmmword [rsp + 0x158], xmm7
movdqu xmm7, xmmword [rsi + 0x4998]
mov word [rsp + 0x194], ax
movsxd rax, dword [rsi + 0x3fd8]
movups xmmword [rsp + 0x168], xmm7
movdqu xmm7, xmmword [rsi + 0x49a4]
movups xmmword [rsp + 0x174], xmm7
movd xmm7, dword [rsi + 0x4a50]
punpckldq xmm1, xmm7
movd xmm7, dword [rsi + 0x4a30]
punpckldq xmm0, xmm7
movd xmm7, dword [rsi + 0x4a80]
punpcklqdq xmm0, xmm1
movd xmm1, dword [rsi + 0x4a60]
punpckldq xmm1, xmm7
punpcklqdq xmm1, xmm2
movdqa xmm2, xmm0
punpcklwd xmm0, xmm1
punpckhwd xmm2, xmm1
movdqa xmm1, xmm0
punpcklwd xmm0, xmm2
punpckhwd xmm1, xmm2
punpcklwd xmm0, xmm1
movups xmmword [rsp + 0x184], xmm0
cmp eax, dword [rsi + 0x3fdc]
je 0x14002eea8
mov r14, qword [rsi + 0x3fe0]
movdqu xmm6, xmmword [rsp + 0x140]
lea rdx, [rax + rax*4]
movdqu xmm7, xmmword [rsp + 0x150]
lea rax, [rax + rdx*2]
mov rdx, qword [rsp + 0x190]
lea rax, [r14 + rax*8]
movups xmmword [rax], xmm6
movdqu xmm6, xmmword [rsp + 0x160]
movups xmmword [rax + 0x10], xmm7
movdqu xmm7, xmmword [rsp + 0x170]
movups xmmword [rax + 0x20], xmm6
movdqu xmm6, xmmword [rsp + 0x180]
mov qword [rax + 0x50], rdx
movups xmmword [rax + 0x30], xmm7
movups xmmword [rax + 0x40], xmm6
mov eax, edi
add dword [rsi + 0x3fd8], 1
and eax, 0x10000000
mov dword [rsp + 0x84], eax
je 0x14002d523
add dword [rsi + 0x4ac0], 1
cmp dword [rsp + 0x4c], r13d
je 0x14002d5bb
movq xmm6, rbx
mov qword [rbx + 0x378], rbp
movddup xmm0, xmm6
movups xmmword [rbx + 0x388], xmm0
movups xmmword [rbx + 0x398], xmm0
test rbp, rbp
je 0x14002d591
mov eax, edi
and eax, 0x3000000
cmp eax, 0x1000000
jne 0x14002d56d
mov rax, qword [rbp + 0x388]
mov qword [rbx + 0x388], rax
mov r11d, dword [rsp + 0x50]
test r11d, r11d
je 0x14002d585
mov rax, qword [rbp + 0x390]
mov qword [rbx + 0x390], rax
test edi, 0x8000000
je 0x14002f390
test byte [rbx + 0x16], 0x80
je 0x14002d5b4
mov rax, rbp
test byte [rbp + 0x16], 0x80
je 0x14002d5ad
mov rax, qword [rax + 0x378]
test byte [rax + 0x16], 0x80
jne 0x14002d5a0
mov qword [rbx + 0x3a0], rax
mov qword [rbx + 0x380], r9
mov r14, qword [0x140218048]
mov r15d, dword [rbx + 0x10]
movsxd rax, dword [r14 + 0x4a60]
cmp eax, dword [r14 + 0x4a64]
je 0x14002f170
mov r10, qword [r14 + 0x4a68]
mov dword [r10 + rax*4], r15d
mov r10d, dword [rsp + 0x50]
add dword [r14 + 0x4a60], 1
mov dword [r14 + 0x494c], r15d
mov eax, dword [rsi + 0x494c]
mov dword [rbx + 0x3e8], eax
mov qword [rsi + 0x4008], 0
test r10d, r10d
jne 0x14002f210
mov eax, dword [rsi + 0x49b8]
mov byte [rsp + 0x60], 0
test al, 1
je 0x14002d682
movsx eax, byte [rbx + 0xe8]
mov r8d, dword [rsi + 0x49bc]
mov edx, eax
and eax, r8d
je 0x14002d666
movss xmm0, dword [rsi + 0x49d0]
movss xmm1, dword [rsi + 0x49d4]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
comiss xmm0, dword [0x1401ab320]
ja 0x14002f3f0
test eax, eax
lea rdx, [rsi + 0x49c8]
mov rcx, rbx
setne byte [rsp + 0x60]
call fcn.140012ed0
mov eax, dword [rsi + 0x49b8]
test al, 2
je 0x14002ed00
movsx eax, byte [rbx + 0xe9]
mov r8d, dword [rsi + 0x49c0]
mov edx, eax
test eax, r8d
je 0x14002f348
movss xmm1, dword [rsi + 0x49d8]
pxor xmm0, xmm0
comiss xmm1, xmm0
movss xmm1, dword [rsi + 0x49dc]
seta byte [rsp + 0x7c]
comiss xmm1, xmm0
seta byte [rsp + 0x70]
mov eax, dword [rbx + 0x18]
mov ecx, eax
and ecx, 8
test al, 4
je 0x14002ee7d
and edx, 4
je 0x14002ee70
lea rdx, [rsi + 0x49d8]
mov rcx, rbx
call fcn.140013280
mov eax, dword [rsi + 0x49b8]
test al, 0x80
je 0x14002d73b
movss xmm0, dword [rsi + 0x49e8]
pxor xmm1, xmm1
comiss xmm0, xmm1
jb 0x14002d71a
movss dword [rbx + 0x9c], xmm0
movss dword [rbx + 0xa4], xmm1
movss xmm0, dword [rsi + 0x49ec]
pxor xmm1, xmm1
comiss xmm0, xmm1
jb 0x14002d73b
movss dword [rbx + 0xa0], xmm0
movss dword [rbx + 0xa8], xmm1
test al, 4
je 0x14002ece8
mov rdx, qword [rsi + 0x49e0]
mov qword [rbx + 0x50], rdx
test al, 8
je 0x14002d78a
mov ecx, dword [rsi + 0x49c4]
movzx r8d, byte [rsi + 0x49f4]
movzx edx, byte [rbx + 0xea]
test ecx, ecx
je 0x14002d774
movsx r9d, dl
test r9d, ecx
je 0x14002d78a
and edx, 0xfffffff1
mov byte [rbx + 0xc1], r8b
mov byte [rbx + 0xea], dl
mov eax, dword [rsi + 0x49b8]
test al, 0x20
jne 0x14002f298
cmp byte [rbx + 0xc4], 0
je 0x14002d7a5
and dword [rbx + 0xe8], 0xfff7f7f7
cmp dword [rsp + 0x4c], r13d
je 0x14002ef38
mov eax, edi
movups xmm0, xmmword [0x1401ab330]
mov byte [rbx + 0xbe], 1
and eax, 0x3000000
cmp qword [rsp + 0x298], 0
mov dword [rsp + 0x80], eax
movzx eax, byte [rbx + 0xe5]
setne byte [rbx + 0xc8]
mov byte [rsp + 0x98], al
mov eax, dword [rbx + 0x104]
movups xmmword [rbx + 0x248], xmm0
test eax, eax
jg 0x14002d857
cmp eax, 1
sbb rcx, rcx
and ecx, 0x1c
add rcx, 4
cmp eax, 1
sbb r14d, r14d
call fcn.140009130
mov rdx, qword [rbx + 0x108]
and r14d, 7
add r14d, 1
mov r15, rax
test rdx, rdx
je 0x14002d849
movsxd r8, dword [rbx + 0x100]
mov rcx, rax
shl r8, 2
call fcn.1400de8e0
mov rcx, qword [rbx + 0x108]
call fcn.140009220
mov qword [rbx + 0x108], r15
mov dword [rbx + 0x104], r14d
mov dword [rbx + 0x100], 1
mov rcx, qword [rbx + 0x2a8]
call fcn.14006d0b0
cmp byte [rbx + 0x3f4], 0
mov dword [rbx + 0x1c0], 0xffffffff
jne 0x14002f360
cmp qword [rsi + 0x4cc8], 0
mov r14d, dword [rbx + 0x14]
je 0x14002d8bf
test r14d, 0x20000
jne 0x14002d8bf
cmp qword [rsp + 0x58], 0
je 0x14002d8bf
mov r15, qword [rbx + 8]
mov rcx, qword [rsp + 0x290]
mov rdx, r15
call fcn.1400dea28
test eax, eax
jne 0x1400309d0
movzx r10d, byte [rbx + 0xc1]
movzx eax, byte [rbx + 0xe5]
movzx edx, byte [rbx + 0xe4]
test r10b, r10b
je 0x14002d8e7
cmp byte [rbx + 0xdc], 0
jle 0x14002f480
cmp byte [rbx + 0xc5], 0
je 0x14002ec48
test al, al
jne 0x14002ec48
test dl, dl
jle 0x14002ec48
sub edx, 1
mov byte [rbx + 0xe4], dl
nop dword [rax]
movzx eax, byte [rbx + 0xe6]
test al, al
jle 0x14002d924
sub eax, 1
mov byte [rbx + 0xe6], al
cmp qword [rsp + 0x58], 0
je 0x14002ffe8
mov rdx, qword [0x140218048]
mov r9d, edi
and r9d, 0x40
mov rax, qword [rdx + 0x4ad0]
test r12b, r12b
je 0x14002f580
test edi, 0x6000000
je 0x14002f580
mov byte [rbx + 0xe5], 1
test r9d, r9d
je 0x14002f580
cmp byte [rsp + 0x7c], 0
jne 0x14002d97f
mov dword [rbx + 0x38], 0
mov dword [rbx + 0x30], 0
cmp byte [rsp + 0x70], 0
je 0x140030d75
mov qword [rbx + 0x48], 0
mov r15, qword [rax]
mov qword [rbx + 0x40], 0
nop dword [rax]
mov rcx, qword [rbx]
movsxd r8, dword [rbx + 0x1c0]
mov qword [rbx + 0x20], r15
movss xmm0, dword [rbx + 0x2a0]
mov qword [rdx + 0x4008], rbx
mulss xmm0, dword [rcx + 0x3d44]
mov rax, qword [rbx + 0x378]
cmp r8d, 0xffffffff
je 0x140030560
lea r11, [r8 + r8*8]
lea r8, [r8 + r11*4]
shl r8, 4
add r8, qword [rdx + 0x4dd0]
mov qword [rdx + 0x4da8], r8
test rax, rax
je 0x14002d9fd
mulss xmm0, dword [rax + 0x2a0]
movss dword [rdx + 0x3d58], xmm0
xor r11d, r11d
movss dword [rdx + 0x3d40], xmm0
test r8, r8
je 0x140030588
mov byte [rbx + 0x170], r11b
mov r8d, edi
mov r11d, edi
and r11d, 0x5000000
and r8d, 0x1000000
mov dword [rsp + 0x88], r11d
mov dword [rsp + 0x68], r8d
je 0x14002f658
movss xmm0, dword [rsi + 0x3920]
mov r8, qword [rsi + 0x38f8]
movss dword [rbx + 0x64], xmm0
mov qword [rbx + 0x58], r8
cmp r11d, 0x1000000
jne 0x14002f688
test byte [rbx + 0x18], 2
jne 0x1400302e0
pxor xmm1, xmm1
ucomiss xmm0, xmm1
jp 0x1400302e0
jne 0x1400302e0
pxor xmm0, xmm0
test edi, 0x400
jne 0x140030e10
mov dword [rbx + 0x58], 0
pxor xmm2, xmm2
mov byte [rsp + 0x8f], 1
movss dword [rbx + 0x5c], xmm0
nop dword [rax]
movss xmm0, dword [rsi + 0x393c]
movss xmm1, dword [rsi + 0x4a1c]
mov r8d, r14d
and r8d, 1
movaps xmm3, xmm0
cmpnless xmm3, xmm2
andps xmm0, xmm3
andnps xmm3, xmm2
orps xmm0, xmm3
movaps xmm3, xmm1
cmpnless xmm3, xmm0
andps xmm1, xmm3
andnps xmm3, xmm0
orps xmm1, xmm3
movss dword [rbx + 0x174], xmm1
movss xmm0, dword [rsi + 0x4a20]
movss dword [rbx + 0x178], xmm0
test dil, 0x21
jne 0x14002f860
movss xmm3, dword [rbx + 0x2c]
pxor xmm0, xmm0
test r8d, r8d
jne 0x14002db4e
movss xmm1, dword [rcx + 0x3d44]
mulss xmm1, dword [rbx + 0x2a0]
test rax, rax
je 0x14002db3e
mulss xmm1, dword [rax + 0x2a0]
movss xmm0, dword [rcx + 0x3930]
addss xmm0, xmm0
addss xmm0, xmm1
movss xmm1, dword [rbx + 0x28]
movss xmm5, dword [rbx + 0x38]
cmp qword [rsi + 0x4010], rbx
je 0x140030a30
movzx r11d, byte [rsp + 0x7b]
cmp byte [rbx + 0xc2], 0
mov byte [rsp + 0x8e], r11b
je 0x14002dbc0
mov r11d, r10d
xor r11d, 1
cmp r10b, 1
mov r10d, 1
mov byte [rbx + 0xc1], r11b
movzx r11d, byte [rsp + 0x7b]
cmovne r10d, r11d
mov byte [rsp + 0x8e], r10b
test r14d, 0x100
jne 0x14002dbc0
pxor xmm0, xmm0
comiss xmm0, dword [rdx + 0x5eec]
jae 0x140030ddf
mov byte [rbx + 0xc2], 0
pxor xmm1, xmm1
movss xmm8, dword [rbx + 0xb4]
movss xmm10, dword [rbx + 0xb8]
mov dword [rbx + 0x68], 0
mov dword [rbx + 0x70], 0
test r8d, r8d
jne 0x14002dc1d
movss xmm0, dword [rcx + 0x3d44]
mulss xmm0, dword [rbx + 0x2a0]
test rax, rax
je 0x14002dc0d
mulss xmm0, dword [rax + 0x2a0]
movss xmm1, dword [rcx + 0x3930]
addss xmm1, xmm1
addss xmm1, xmm0
mov r10d, r14d
pxor xmm0, xmm0
and r10d, 0x400
je 0x14002dc66
movss xmm3, dword [rcx + 0x3d44]
movss xmm4, dword [rbx + 0x178]
mulss xmm3, dword [rbx + 0x2a0]
test rax, rax
je 0x14002dc52
mulss xmm3, dword [rax + 0x2a0]
movss xmm0, dword [rcx + 0x3930]
addss xmm3, xmm4
addss xmm0, xmm0
addss xmm0, xmm3
addss xmm2, xmm2
movss xmm11, dword [rbx + 0x5c]
addss xmm0, xmm1
pxor xmm3, xmm3
movss xmm1, dword [rbx + 0x48]
movss dword [rbx + 0x74], xmm3
movss xmm9, dword [0x1401ab080]
mov qword [rbx + 0xb4], 0
addss xmm11, xmm11
movaps xmm13, xmm2
movss xmm2, dword [rbx + 0x4c]
movaps xmm6, xmm0
movss dword [rbx + 0x6c], xmm0
addss xmm6, xmm3
addss xmm1, xmm13
addss xmm2, xmm11
addss xmm1, xmm3
addss xmm2, xmm6
test r14d, 0x2000000
jne 0x14002de28
test r14d, 0x15000000
je 0x1400303e0
movss xmm12, dword [0x1401ab0c0]
mov eax, dword [rbx + 0x18]
test al, 4
je 0x14002dcf5
movss xmm12, dword [rdx + 0x3908]
test al, 8
je 0x140030bd0
movss xmm7, dword [rdx + 0x390c]
movss xmm9, dword [0x1401ab080]
movss xmm0, dword [rdx + 0x39c0]
movss xmm3, dword [r15 + 0x20]
comiss xmm7, xmm2
addss xmm0, xmm0
subss xmm3, xmm0
movss xmm0, dword [rdx + 0x39bc]
movaps xmm4, xmm0
addss xmm4, xmm0
movss xmm0, dword [r15 + 0x1c]
subss xmm0, xmm4
movaps xmm4, xmm3
cmpnless xmm4, xmm7
andps xmm3, xmm4
andnps xmm4, xmm7
orps xmm3, xmm4
movaps xmm4, xmm0
cmpnless xmm4, xmm12
andps xmm0, xmm4
andnps xmm4, xmm12
orps xmm0, xmm4
ja 0x14002dd6d
movaps xmm7, xmm3
minss xmm7, xmm2
comiss xmm12, xmm1
ja 0x14002dd7b
minss xmm0, xmm1
movaps xmm12, xmm0
movaps xmm1, xmm12
movaps xmm2, xmm7
mov rcx, rbx
mov dword [rsp + 0x9c], r9d
mov qword [rsp + 0x90], rdx
call fcn.140002b70
movss xmm1, dword [rbx + 0x48]
mov r8d, dword [rbx + 0x14]
movd xmm0, eax
mov rdx, qword [rsp + 0x90]
mov r9d, dword [rsp + 0x9c]
subss xmm0, xmm13
comiss xmm1, xmm0
jbe 0x14002ddd9
mov r10d, r8d
mov ecx, 1
and r10d, 0x808
cmp r10d, 0x800
je 0x14002dde2
mov ecx, r8d
shr ecx, 0xf
and ecx, 1
movq xmm5, rax
movss xmm1, dword [rbx + 0x4c]
shufps xmm5, xmm5, 0x55
movdqa xmm0, xmm5
subss xmm0, xmm11
subss xmm0, xmm6
comiss xmm1, xmm0
jbe 0x14002f8f0
test r8b, 8
jne 0x14002f8f0
movss xmm1, dword [rdx + 0x3964]
test cl, cl
je 0x14002de20
addss xmm7, xmm1
addss xmm1, xmm12
movaps xmm2, xmm7
movaps xmm0, xmm1
unpcklps xmm0, xmm2
movlps qword [rsp + 0xb0], xmm0
test r9d, r9d
je 0x14002f590
cmp byte [rbx + 0xc1], 0
jne 0x14002f590
cmp byte [rsp + 0x7c], 0
je 0x140030bf0
movzx eax, byte [rsp + 0x7b]
movss xmm1, dword [rbx + 0x38]
mov byte [rsp + 0x90], al
cmp byte [rsp + 0x70], 0
jne 0x14002f625
mov byte [rsp + 0x8e], 1
movss dword [rbx + 0x3c], xmm2
mov rcx, rbx
call fcn.140002b70
mov r9d, dword [rsp + 0x68]
mov qword [rbx + 0x38], rax
test r9d, r9d
sete r11b
cmp byte [rbx + 0xc1], 0
je 0x14002deaa
test r11b, r11b
jne 0x1400302f8
mov rax, qword [rbx + 0x38]
mov qword [rbx + 0x30], rax
test r12b, r12b
je 0x14002deda
mov dword [rbx + 0xe0], 0xffffffff
mov eax, edi
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x14002deda
cmp byte [rsp + 0x60], 0
je 0x140030e29
mov ecx, dword [rsp + 0x68]
test ecx, ecx
jne 0x14002f498
movzx r10d, byte [rsp + 0x60]
movss xmm0, dword [rbx + 0xec]
xor r10d, 1
cmp dword [rsp + 0x80], 0x3000000
setne byte [rsp + 0x60]
ucomiss xmm0, dword [0x1401ab2d0]
jp 0x14002df13
je 0x14002df20
cmp byte [rbx + 0xe5], 0
je 0x140030938
mov eax, dword [rsp + 0x84]
test eax, eax
jne 0x140030038
mov r14d, dword [rsp + 0x50]
test r14d, r14d
je 0x14002df50
cmp byte [rsp + 0x98], 0
setg al
and al, r10b
mov r14d, eax
jne 0x140030cd0
test edi, 0x2000000
je 0x14002df70
test r10b, r10b
je 0x14002df70
cmp byte [rsp + 0x60], 0
jne 0x14002f548
nop dword [rax + rax]
movss xmm0, dword [rsi + 0x39c0]
movss xmm2, dword [rsi + 0x39b8]
movss xmm14, dword [rsi + 0x39b4]
movss xmm4, dword [r15 + 0x14]
movaps xmm1, xmm0
movss xmm3, dword [r15 + 0x1c]
mov r14d, dword [rbx + 0x14]
cmpnless xmm1, xmm2
movss xmm5, dword [r15 + 0x18]
movss xmm11, dword [r15 + 0x20]
addss xmm3, xmm4
movss xmm7, dword [r15 + 8]
movss xmm13, dword [r15 + 0x10]
addss xmm11, xmm5
movss xmm6, dword [r15 + 4]
movss xmm12, dword [r15 + 0xc]
andps xmm0, xmm1
andnps xmm1, xmm2
addss xmm13, xmm7
orps xmm0, xmm1
movss xmm1, dword [rsi + 0x39bc]
addss xmm12, xmm6
subss xmm11, xmm0
addss xmm0, xmm5
movaps xmm2, xmm1
cmpnless xmm2, xmm14
andps xmm1, xmm2
andnps xmm2, xmm14
orps xmm1, xmm2
subss xmm3, xmm1
addss xmm1, xmm4
movaps xmm4, xmm3
movaps xmm2, xmm1
unpcklps xmm4, xmm11
unpcklps xmm2, xmm0
movlhps xmm2, xmm4
movq xmm4, qword [rbx + 0x28]
movups xmmword [rsp + 0xd0], xmm2
cvttps2dq xmm2, xmm4
test r11b, r11b
je 0x14002e03c
test r10b, r10b
jne 0x14002f880
mov r10d, dword [rsp + 0x68]
cvtdq2ps xmm2, xmm2
movlps qword [rbx + 0x28], xmm2
test r10d, r10d
je 0x14002f8ad
movss xmm0, dword [rsi + 0x391c]
movss dword [rbx + 0x60], xmm0
xor r15d, r15d
test r12b, r12b
je 0x14002e08c
test edi, 0x1000
jne 0x14002e08c
mov r8d, dword [rsp + 0x50]
mov r9d, dword [rsp + 0x80]
test r8d, r8d
setne dl
test r9d, r9d
sete al
or edx, eax
mov r15d, edx
mov dword [rsp + 0xa8], 0xffffffff
mov dword [rsp + 0xac], 0xffffffff
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
mov dword [rsp + 0x50], 0
test r14d, 0x1000000
jne 0x14002e0d6
movzx eax, byte [rsi + 0x5e]
add eax, 1
mov dword [rsp + 0x50], eax
addss xmm0, xmm9
movss xmm1, dword [rsi + 0x3d40]
pxor xmm5, xmm5
movss xmm2, dword [0x1401ab370]
movzx edx, byte [rbx + 0xc1]
mulss xmm2, xmm1
mulss xmm1, dword [0x1401ab340]
addss xmm0, xmm2
movaps xmm2, xmm0
cmpnless xmm2, xmm1
andps xmm0, xmm2
andnps xmm2, xmm1
orps xmm0, xmm2
cvttss2si eax, xmm0
cvtsi2ss xmm5, eax
movss dword [rsp + 0x68], xmm5
test dl, dl
je 0x14002fea0
lea r11, [rsp + 0xe0]
mov eax, 0xffffffff
mov ecx, 0xffffffff
mov qword [rsp + 0x70], r11
movss xmm1, dword [rbx + 0x58]
mov byte [rbx + 0xca], al
mov eax, edi
and eax, 0x808
movss xmm0, dword [rbx + 0x5c]
movss xmm2, dword [rbx + 0x74]
mov byte [rbx + 0xc9], cl
movaps xmm3, xmm1
movss xmm11, dword [rbx + 0x6c]
movss xmm4, dword [rbx + 0x38]
mov dword [rsp + 0x84], eax
addss xmm3, xmm1
addss xmm3, dword [rbx + 0x40]
mov eax, edi
and eax, 8
addss xmm0, xmm0
addss xmm0, dword [rbx + 0x44]
mov dword [rsp + 0x7c], eax
movd eax, xmm3
test dl, dl
je 0x14002f6c0
movss xmm15, dword [rbx + 0x70]
cmp dword [rsp + 0x88], 0x1000000
unpcklps xmm15, xmm2
je 0x14002f7f2
movaps xmm2, xmm6
movaps xmm3, xmm12
unpcklps xmm2, xmm7
unpcklps xmm3, xmm13
movlhps xmm2, xmm3
movups xmmword [rsp + 0xf0], xmm2
movq xmm5, qword [rbx + 0x30]
movq xmm8, qword [rbx + 0x28]
and r14d, 1
mov r8, qword [rbx]
movaps xmm10, xmm5
movshdup xmm2, xmm8
movd edx, xmm5
movss xmm5, dword [rbx + 0x28]
addps xmm10, xmm8
addss xmm5, dword [rbx + 0x30]
movaps xmm3, xmm8
movq rcx, xmm10
movss xmm10, dword [rbx + 0x2c]
addss xmm10, dword [rbx + 0x34]
unpcklps xmm5, xmm10
movaps xmm10, xmm8
unpcklps xmm10, xmm2
movlhps xmm10, xmm5
pxor xmm5, xmm5
jne 0x14002e267
movss xmm14, dword [r8 + 0x3d44]
mov r9, qword [rbx + 0x378]
mulss xmm14, dword [rbx + 0x2a0]
test r9, r9
je 0x14002e255
mulss xmm14, dword [r9 + 0x2a0]
movss xmm5, dword [r8 + 0x3930]
addss xmm5, xmm5
addss xmm5, xmm14
unpcklps xmm4, xmm5
addss xmm3, dword [rbx + 0x68]
addss xmm2, xmm11
movups xmmword [rbx + 0x1f8], xmm10
addps xmm4, xmm8
movss xmm5, dword [rbx + 0x1fc]
movaps xmm8, xmm6
mov r8, qword [rbx + 0x28]
movss xmm14, dword [rbx + 0x204]
movaps xmm11, xmm3
mov qword [rsp + 0x100], r8
movlps qword [rsp + 0x108], xmm4
movaps xmm4, xmm7
minss xmm14, xmm13
unpcklps xmm11, xmm2
cmpless xmm4, xmm5
andps xmm5, xmm4
andnps xmm4, xmm7
orps xmm5, xmm4
movss xmm4, dword [rbx + 0x1f8]
cmpless xmm8, xmm4
andps xmm4, xmm8
andnps xmm8, xmm6
orps xmm4, xmm8
movss xmm8, dword [rbx + 0x200]
unpcklps xmm4, xmm5
minss xmm8, xmm12
movlps qword [rbx + 0x1f8], xmm4
movq xmm4, rcx
mov ecx, edi
subps xmm4, xmm15
and ecx, 0x401
unpcklps xmm8, xmm14
movlhps xmm8, xmm11
movshdup xmm5, xmm4
movss xmm11, dword [rbx + 0x64]
movaps xmm10, xmm4
movups xmmword [rbx + 0x200], xmm8
movlps qword [rbx + 0x210], xmm4
movaps xmm15, xmm11
cmp ecx, 1
je 0x14002e341
movss xmm15, dword [rsi + 0x3938]
movss xmm8, dword [0x1401ab120]
movaps xmm14, xmm11
movaps xmm4, xmm3
mulss xmm1, xmm8
addss xmm4, xmm8
cvttss2si ecx, xmm1
pxor xmm1, xmm1
cvtsi2ss xmm1, ecx
cmpless xmm14, xmm1
andps xmm1, xmm14
andnps xmm14, xmm11
orps xmm1, xmm14
movaps xmm14, xmm2
addss xmm4, xmm1
addss xmm14, xmm8
cvttss2si ecx, xmm4
addss xmm14, xmm15
movaps xmm15, xmm10
addss xmm15, xmm8
pxor xmm4, xmm4
cvtsi2ss xmm4, ecx
subss xmm15, xmm1
pxor xmm1, xmm1
cvttss2si ecx, xmm14
pxor xmm14, xmm14
cvtsi2ss xmm14, ecx
cvttss2si ecx, xmm15
movaps xmm15, xmm5
addss xmm15, xmm8
comiss xmm7, xmm14
cvtsi2ss xmm1, ecx
subss xmm15, xmm11
pxor xmm11, xmm11
cvttss2si ecx, xmm15
cvtsi2ss xmm11, ecx
ja 0x14002f6b0
movaps xmm15, xmm13
minss xmm15, xmm14
movaps xmm14, xmm15
comiss xmm6, xmm4
ja 0x14002f6a0
movaps xmm15, xmm12
minss xmm15, xmm4
movaps xmm4, xmm15
comiss xmm7, xmm11
unpcklps xmm4, xmm14
movlps qword [rbx + 0x218], xmm4
ja 0x14002e425
movaps xmm7, xmm13
minss xmm7, xmm11
comiss xmm6, xmm1
ja 0x14002e432
movaps xmm6, xmm12
minss xmm6, xmm1
unpcklps xmm6, xmm7
pxor xmm1, xmm1
movd xmm7, edx
comiss xmm7, xmm1
movlps qword [rbx + 0x220], xmm6
jbe 0x14002f630
test edi, 0x2000040
jne 0x14002f630
movd xmm1, edx
mulss xmm1, dword [0x1401ab344]
cvttss2si edx, xmm1
pxor xmm1, xmm1
cvtsi2ss xmm1, edx
subss xmm10, xmm3
movss dword [rbx + 0x278], xmm1
movd xmm1, eax
pxor xmm3, xmm3
subss xmm1, xmm10
comiss xmm3, xmm1
jb 0x14002e493
movaps xmm1, xmm3
subss xmm5, xmm2
movss dword [rbx + 0x94], xmm1
pxor xmm1, xmm1
subss xmm0, xmm5
comiss xmm1, xmm0
jb 0x14002e4af
movaps xmm0, xmm1
movss dword [rbx + 0x98], xmm0
mov rcx, rbx
call fcn.140001650
mov qword [rbx + 0x78], 0
mov rcx, qword [rbx + 0x2a8]
mov qword [rbx + 0x8c], rax
mov rax, qword [0x1401ab2d0]
mov qword [rbx + 0x9c], rax
mov rax, qword [rsi + 0x3d38]
mov rax, qword [rax + 0x40]
mov rdx, qword [rax + 8]
call fcn.140066740
mov rax, qword [0x140218048]
xor r9d, r9d
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0xf8]
mov r14, qword [rax + 0x4008]
mov byte [r14 + 0xc0], 1
mov rcx, qword [r14 + 0x2a8]
call fcn.140066250
mov rdx, qword [r14 + 0x2a8]
movsxd rax, dword [rdx + 0x58]
shl rax, 4
add rax, qword [rdx + 0x60]
movups xmm7, xmmword [rax - 0x10]
movups xmmword [r14 + 0x248], xmm7
movzx r14d, byte [rsp + 0x8f]
and r14b, byte [rsp + 0x60]
jne 0x1400305b8
mov rax, qword [rsi + 0x4cb8]
mov r8d, 1
test rax, rax
je 0x14002ffc0
test r15b, r15b
jne 0x14002e58f
movss xmm1, dword [rbx + 0x50]
pxor xmm2, xmm2
movss xmm0, dword [rbx + 0x54]
ucomiss xmm1, xmm2
jp 0x14002f2b0
jne 0x14002f2b0
movss xmm4, dword [rbx + 0x128]
movss xmm5, dword [rbx + 0x120]
pxor xmm3, xmm3
ucomiss xmm0, xmm2
movaps xmm1, xmm4
subss xmm1, xmm5
cvttss2si ecx, xmm1
cvtsi2ss xmm3, ecx
movss dword [rbx + 0x40], xmm3
jp 0x14002f428
jne 0x14002f428
movss xmm2, dword [rbx + 0x12c]
movaps xmm1, xmm2
subss xmm1, dword [rbx + 0x124]
cvttss2si ecx, xmm1
pxor xmm1, xmm1
cvtsi2ss xmm1, ecx
movss dword [rbx + 0x44], xmm1
movss xmm1, dword [rbx + 0x130]
comiss xmm4, xmm1
jb 0x14002f43a
movss dword [rbx + 0x48], xmm3
movss xmm3, dword [rbx + 0x124]
jmp 0x14002f2f2
cmp dword [rsp + 0x4c], r13d
je 0x14002d74e
mov qword [rbx + 0x50], 0
jmp 0x14002d74e
mov byte [rsp + 0x70], 0
mov byte [rsp + 0x7c], 0
jmp 0x14002d6f5
mov rbp, qword [0x140218048]
movzx edx, byte [rbx + 0xc7]
test edi, 0x1000000
je 0x14002ee20
mov ecx, edi
and ecx, 0x14000000
cmp ecx, 0x4000000
je 0x14002ee20
mov ecx, edx
movzx edx, byte [rsp + 0x7b]
xor ecx, 1
or dl, cl
jne 0x1400304b8
mov edx, 1
nop dword [rax]
mov byte [rbx + 0xc7], dl
mov dword [rbx + 0x14], edi
mov edx, dword [rsi + 0x49b8]
and edx, 0x100
je 0x14002ed75
mov edx, dword [rsi + 0x49f0]
mov dword [rbx + 0x18], edx
pxor xmm0, xmm0
xor r15d, r15d
xor r9d, r9d
mov dword [rbx + 0x270], r13d
mov edx, dword [rsi + 0x3ff8]
cvtsd2ss xmm0, qword [rsi + 0x3f58]
mov word [rbx + 0xd0], r15w
lea ecx, [rdx + 1]
movss dword [rbx + 0x274], xmm0
mov dword [rsi + 0x3ff8], ecx
mov word [rbx + 0xd2], dx
test eax, eax
je 0x14002edd2
mov rcx, qword [rsi + 0x3fe0]
lea rdx, [rax + rax*4]
lea rax, [rax + rdx*2]
lea rax, [rcx + rax*8]
mov r9, qword [rax - 0x58]
movsxd rax, dword [rbx + 0x100]
xor ebp, ebp
test edi, 0x5000000
cmovne rbp, r9
test eax, eax
jne 0x14002d3bd
mov r14d, dword [rbx + 0x104]
test r14d, r14d
je 0x140030800
mov r14, qword [rbx + 0x108]
mov edx, dword [rbx + 0x10]
mov dword [r14 + rax*4], edx
mov eax, dword [rbx + 0x100]
add eax, 1
mov dword [rbx + 0x100], eax
jmp 0x14002d3bd
or dl, byte [rsp + 0x7b]
je 0x14002ed58
movsxd rax, dword [rbp + 0x3fb8]
cmp eax, dword [rbp + 0x3fbc]
je 0x140030fdb
mov r14, qword [rbp + 0x3fc0]
mov qword [r14 + rax*8], rbx
mov eax, dword [rbp + 0x3fb8]
xor edx, edx
add eax, 1
mov dword [rbp + 0x3fb8], eax
sub eax, 1
mov word [rbx + 0xd4], ax
movsxd rax, dword [rsi + 0x3fd8]
jmp 0x14002ed58
movss xmm0, dword [rbx + 0x38]
movss dword [rsi + 0x49d8], xmm0
test ecx, ecx
je 0x14002d6e0
test byte [rbx + 0xe9], 4
jne 0x14002d6e0
movss xmm0, dword [rbx + 0x3c]
movss dword [rsi + 0x49dc], xmm0
jmp 0x14002d6e0
lea r15d, [rax + 1]
test eax, eax
jne 0x14002f3b0
mov eax, 8
cmp r15d, eax
cmovl r15d, eax
movsxd rax, r15d
mov qword [rsp + 0x60], r9
lea rdx, [rax + rax*4]
lea rcx, [rax + rdx*2]
shl rcx, 3
call fcn.140009130
mov rdx, qword [rsi + 0x3fe0]
mov r9, qword [rsp + 0x60]
mov r14, rax
test rdx, rdx
je 0x14002ef19
movsxd rax, dword [rsi + 0x3fd8]
lea rcx, [rax + rax*4]
lea r8, [rax + rcx*2]
mov rcx, r14
shl r8, 3
call fcn.1400de8e0
mov rcx, qword [rsi + 0x3fe0]
call fcn.140009220
mov r9, qword [rsp + 0x60]
mov qword [rsi + 0x3fe0], r14
movsxd rax, dword [rsi + 0x3fd8]
mov dword [rsi + 0x3fdc], r15d
jmp 0x14002d4ad
mov rdx, qword [0x140218048]
mov rcx, qword [rbx]
movsxd rax, dword [rbx + 0x1c0]
movss xmm0, dword [rcx + 0x3d44]
mov qword [rdx + 0x4008], rbx
mulss xmm0, dword [rbx + 0x2a0]
cmp eax, 0xffffffff
je 0x1400307b8
lea rcx, [rax + rax*8]
lea rax, [rax + rcx*4]
mov rcx, qword [rbx + 0x378]
shl rax, 4
add rax, qword [rdx + 0x4dd0]
mov qword [rdx + 0x4da8], rax
test rcx, rcx
je 0x14002ef97
mulss xmm0, dword [rcx + 0x2a0]
movss dword [rdx + 0x3d58], xmm0
movss dword [rdx + 0x3d40], xmm0
xor edx, edx
test rax, rax
je 0x1400307e7
mov byte [rbx + 0x170], dl
mov r12, rbx
mov byte [r12 + 0xc0], 1
mov rcx, qword [r12 + 0x2a8]
lea rdx, [rbx + 0x218]
mov r9d, 1
lea r8, [rbx + 0x220]
call fcn.140066250
mov rdx, qword [r12 + 0x2a8]
movsxd rax, dword [rdx + 0x58]
shl rax, 4
add rax, qword [rdx + 0x60]
movups xmm7, xmmword [rax - 0x10]
movups xmmword [r12 + 0x248], xmm7
mov byte [rbx + 0xc0], 0
add word [rbx + 0xcc], 1
mov dword [rsi + 0x49b8], 0
cmp dword [rsp + 0x4c], r13d
je 0x14002f0ba
mov eax, edi
and eax, 0x11000000
cmp eax, 0x1000000
je 0x14002f940
pxor xmm0, xmm0
comiss xmm0, dword [rsi + 0x38f0]
jae 0x14002f8d0
cmp byte [rbx + 0xe4], 0
jg 0x14002f063
cmp byte [rbx + 0xe5], 0
jle 0x140030920
mov edx, 1
mov eax, 1
mov byte [rbx + 0xc5], al
movzx eax, byte [rbx + 0xe7]
test al, al
jle 0x14002f08e
sub eax, 1
or dword [rbx + 0x14], 0x30200
mov byte [rbx + 0xe7], al
cmp byte [rbx + 0xc1], 0
jne 0x14002f0a5
movzx eax, byte [rbx + 0xbe]
xor eax, 1
or al, dl
je 0x14002f0b4
xor eax, eax
cmp byte [rbx + 0xdc], 0
jle 0x14002f920
mov byte [rbx + 0xc3], al
movzx eax, byte [rbx + 0xc6]
test al, al
jne 0x14002f0f0
cmp byte [rsi + 0x78], 0
je 0x14002f0d6
cmp byte [rsp + 0x7b], 0
jne 0x140030b00
cmp byte [rsi + 0x79], 0
je 0x14002f0f0
movsx edx, byte [rsi + 0x5ffa]
cmp edx, dword [rsi + 0x3fd8]
je 0x140030b00
nop
movzx eax, byte [rbx + 0xc3]
xor eax, 1
movups xmm6, xmmword [rsp + 0x1a0]
movups xmm7, xmmword [rsp + 0x1b0]
movups xmm8, xmmword [rsp + 0x1c0]
movups xmm9, xmmword [rsp + 0x1d0]
movups xmm10, xmmword [rsp + 0x1e0]
movups xmm11, xmmword [rsp + 0x1f0]
movups xmm12, xmmword [rsp + 0x200]
movups xmm13, xmmword [rsp + 0x210]
movups xmm14, xmmword [rsp + 0x220]
movups xmm15, xmmword [rsp + 0x230]
add rsp, 0x248
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea r11d, [rax + 1]
test eax, eax
jne 0x14002f3d0
mov eax, 8
cmp r11d, eax
cmovl r11d, eax
movsxd rcx, r11d
mov qword [rsp + 0x68], r9
shl rcx, 2
mov dword [rsp + 0x60], r11d
call fcn.140009130
mov r11d, dword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
mov rdx, qword [r14 + 0x4a68]
mov r10, rax
test rdx, rdx
je 0x14002f1ef
movsxd r8, dword [r14 + 0x4a60]
mov rcx, rax
mov dword [rsp + 0x70], r11d
mov qword [rsp + 0x60], rax
shl r8, 2
call fcn.1400de8e0
mov rcx, qword [r14 + 0x4a68]
call fcn.140009220
mov r11d, dword [rsp + 0x70]
mov r9, qword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
mov qword [r14 + 0x4a68], r10
movsxd rax, dword [r14 + 0x4a60]
mov dword [r14 + 0x4a64], r11d
jmp 0x14002d5e1
movsxd rcx, dword [rsi + 0x4aa0]
mov r14, qword [rsi + 0x4a98]
lea rax, [rcx*8]
mov rdx, rcx
sub rax, rcx
mov ecx, dword [r9 + 0x168]
shl rax, 3
add r14, rax
mov qword [r14 + 8], rbx
mov dword [r14 + 0x18], ecx
cmp edx, dword [rsi + 0x4aa4]
je 0x140030878
mov r15, qword [rsi + 0x4aa8]
movdqu xmm6, xmmword [r14]
add r15, rax
movups xmmword [r15], xmm6
movdqu xmm6, xmmword [r14 + 0x10]
movups xmmword [r15 + 0x10], xmm6
movdqu xmm6, xmmword [r14 + 0x20]
movups xmmword [r15 + 0x20], xmm6
mov rax, qword [r14 + 0x30]
mov qword [r15 + 0x30], rax
mov eax, dword [r14]
add dword [rsi + 0x4aa0], 1
mov dword [rbx + 0xd8], eax
jmp 0x14002d619
xor edx, edx
mov rcx, rbx
call fcn.140022f40
jmp 0x14002d792
pxor xmm2, xmm2
movss dword [rbx + 0x40], xmm1
ucomiss xmm0, xmm2
jp 0x14002f470
jne 0x14002f470
movss xmm2, dword [rbx + 0x12c]
movss xmm3, dword [rbx + 0x124]
movaps xmm0, xmm2
subss xmm0, xmm3
cvttss2si ecx, xmm0
pxor xmm0, xmm0
cvtsi2ss xmm0, ecx
unpcklps xmm0, xmm1
movlps qword [rbx + 0x44], xmm0
movss xmm0, dword [rbx + 0x134]
movaps xmm1, xmm0
cmpnless xmm1, xmm2
andps xmm0, xmm1
andnps xmm1, xmm2
orps xmm0, xmm1
subss xmm0, xmm3
cvttss2si ecx, xmm0
pxor xmm0, xmm0
cvtsi2ss xmm0, ecx
movss dword [rbx + 0x4c], xmm0
test dl, dl
jle 0x14002f32d
sub edx, 1
mov byte [rbx + 0xe4], dl
test al, al
jle 0x14002d910
sub eax, 1
mov byte [rbx + 0xe5], al
jmp 0x14002d910
mov byte [rsp + 0x7c], 0
mov byte [rsp + 0x70], 0
jmp 0x14002d6c7
mov rcx, rbx
call fcn.14000a890
jmp 0x14002d884
lea rdx, [rax + rax*4]
lea rax, [rax + rdx*2]
mov rdx, qword [rsi + 0x3fe0]
lea rax, [rdx + rax*8]
mov r9, qword [rax - 0x58]
jmp 0x14002d39c
test edi, 0x5000000
je 0x14002d591
mov rax, qword [rbp + 0x398]
mov qword [rbx + 0x398], rax
jmp 0x14002d591
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
add edx, eax
cmp edx, r15d
cmovge r15d, edx
cmp eax, r15d
jge 0x14002d4a6
jmp 0x14002eec0
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
add edx, eax
cmp edx, r11d
cmovge r11d, edx
cmp eax, r11d
jge 0x14002d5da
jmp 0x14002f188
mov rax, qword [rsi + 0x49c8]
and edx, 0xfffffff1
mov byte [rsp + 0x60], 1
mov qword [rbx + 0xec], rax
mov rax, qword [rsi + 0x49d0]
mov byte [rbx + 0xe8], dl
mov qword [rbx + 0xf4], rax
mov eax, dword [rsi + 0x49b8]
jmp 0x14002d682
movss xmm1, dword [rbx + 0x130]
movss dword [rbx + 0x44], xmm0
comiss xmm4, xmm1
jae 0x14002f44a
subss xmm1, xmm5
pxor xmm3, xmm3
cvttss2si ecx, xmm1
cvtsi2ss xmm3, ecx
pxor xmm1, xmm1
movss dword [rbx + 0x48], xmm3
ucomiss xmm0, xmm1
jp 0x14002f31b
jne 0x14002f31b
movss xmm2, dword [rbx + 0x12c]
jmp 0x14002ecd6
movss dword [rbx + 0x44], xmm0
movss dword [rbx + 0x48], xmm1
jmp 0x14002f31b
cmp byte [rbx + 0xdd], 0
jg 0x14002d8e7
jmp 0x14002f320
movsxd rax, dword [rbp + 0x1a0]
mov word [rbx + 0xd0], ax
cmp eax, dword [rbp + 0x1a4]
je 0x140030c18
mov r14, qword [rbp + 0x1a8]
movzx r10d, byte [rsp + 0x60]
mov edx, dword [rsp + 0x50]
mov qword [r14 + rax*8], rbx
add dword [rbp + 0x1a0], 1
movss xmm0, dword [rbx + 0xec]
xor r10d, 1
cmp dword [rsp + 0x80], 0x3000000
setne byte [rsp + 0x60]
movzx eax, byte [rsp + 0x60]
test edx, edx
jne 0x140030010
test r10b, r10b
je 0x140030d10
test al, al
je 0x140030d10
ucomiss xmm0, dword [0x1401ab2d0]
mov rax, qword [rbp + 0x110]
mov qword [rbx + 0x28], rax
jp 0x14002df13
jne 0x14002df13
mov eax, dword [rsp + 0x84]
test eax, eax
jne 0x140030038
test edi, 0x2000000
je 0x14002df70
nop dword [rax]
mov rcx, rbx
mov byte [rsp + 0x70], r11b
call fcn.140019f60
mov byte [rsp + 0x60], 1
movzx r11d, byte [rsp + 0x70]
mov r10d, 1
mov qword [rbx + 0x28], rax
jmp 0x14002df70
mov r15, qword [rax]
jmp 0x14002d9a0
cmp byte [rbx + 0xdc], 0
jle 0x14002ff68
movzx eax, byte [rsp + 0x7b]
cmp byte [rsp + 0x7c], 0
mov byte [rsp + 0x90], al
jne 0x14002f5dc
cmp byte [rbx + 0xde], 0
je 0x14002f5cf
movss xmm3, dword [rbx + 0x38]
movaps xmm0, xmm1
cmpnless xmm0, xmm3
andps xmm1, xmm0
andnps xmm0, xmm3
orps xmm1, xmm0
mov byte [rsp + 0x90], 1
movss dword [rbx + 0x38], xmm1
cmp byte [rsp + 0x70], 0
jne 0x14002f5f0
cmp byte [rbx + 0xdd], 0
jg 0x14002ff8c
cmp byte [rbx + 0xc1], 0
jne 0x14002f620
test byte [rbx + 0x15], 1
jne 0x14002f620
mov rax, qword [0x140218048]
pxor xmm0, xmm0
comiss xmm0, dword [rax + 0x5eec]
jb 0x14002f620
movss xmm0, dword [rax + 0x1c]
movss dword [rax + 0x5eec], xmm0
movss xmm1, dword [rbx + 0x38]
movss xmm2, dword [rbx + 0x3c]
jmp 0x14002de80
movss xmm1, dword [0x1401ab228]
mulss xmm1, dword [rsi + 0x3d40]
cvttss2si edx, xmm1
pxor xmm1, xmm1
cvtsi2ss xmm1, edx
jmp 0x14002e471
test edi, 0x6000000
je 0x14002f8e0
test edi, 0x8000000
jne 0x14002f8e0
movss xmm0, dword [rsi + 0x3928]
mov r8, qword [rsi + 0x38f8]
movss dword [rbx + 0x64], xmm0
mov qword [rbx + 0x58], r8
mov byte [rsp + 0x8f], 0
movss xmm2, dword [rbx + 0x58]
jmp 0x14002dab8
movaps xmm4, xmm6
jmp 0x14002e40b
movaps xmm14, xmm7
jmp 0x14002e3f5
cmp qword [rsp + 0x58], 0
movss xmm3, dword [rbx + 0x3c]
movaps xmm14, xmm0
movd xmm15, eax
movss xmm5, dword [rbx + 0x20c]
mov edx, dword [rbx + 0x214]
mov r9d, dword [rbx + 0x210]
movss dword [rsp + 0x98], xmm5
movss xmm5, dword [rbx + 0x208]
movss dword [rsp + 0x9c], xmm5
je 0x140030a20
cmp byte [rsp + 0x90], 0
movaps xmm5, xmm4
jne 0x14002f729
movd xmm5, r9d
subss xmm5, dword [rsp + 0x9c]
addss xmm5, xmm8
cmp byte [rsp + 0x8e], 0
je 0x1400303c0
movaps xmm8, xmm11
addss xmm8, xmm2
subss xmm3, xmm8
mov edx, edi
and edx, 0x8000
test edi, 0x4000
jne 0x14002ff24
comiss xmm14, xmm3
ja 0x14002ff18
mov byte [rbx + 0xbd], 0
test edx, edx
je 0x140030d97
comiss xmm14, xmm3
mov byte [rbx + 0xbc], 1
ja 0x14002f795
mov byte [rbx + 0xbd], 0
movss xmm3, dword [rsi + 0x3964]
pxor xmm15, xmm15
jmp 0x14002f7c0
mov r10d, dword [rsp + 0x7c]
pxor xmm15, xmm15
movss xmm8, dword [rsi + 0x3964]
test r10d, r10d
movaps xmm3, xmm8
sete byte [rbx + 0xbd]
je 0x14002ff5a
nop dword [rax]
movaps xmm5, xmm15
addss xmm2, xmm3
addss xmm15, dword [rbx + 0x70]
cmp dword [rsp + 0x88], 0x1000000
unpcklps xmm5, xmm3
movlps qword [rbx + 0xb4], xmm5
unpcklps xmm15, xmm2
movlps qword [rbx + 0x70], xmm15
jne 0x14002e1bd
cmp dword [rsp + 0x80], 0x3000000
je 0x14002e1bd
movdqu xmm6, xmmword [rbp + 0x248]
movups xmmword [rsp + 0xf0], xmm6
movss xmm7, dword [rsp + 0xf4]
movss xmm6, dword [rsp + 0xf0]
movss xmm13, dword [rsp + 0xfc]
movss xmm12, dword [rsp + 0xf8]
jmp 0x14002e1d6
movzx r10d, byte [rsp + 0x7b]
mov byte [rbx + 0xc1], 0
mov byte [rsp + 0x8e], r10b
jmp 0x14002dbc0
movaps xmm14, xmm12
pxor xmm5, xmm5
subss xmm14, xmm6
comiss xmm14, xmm5
jbe 0x14002f8a6
movaps xmm14, xmm13
subss xmm14, xmm7
comiss xmm14, xmm5
ja 0x140030e53
cvtdq2ps xmm2, xmm2
movlps qword [rbx + 0x28], xmm2
mov eax, edi
and eax, 0xc000000
cmp eax, 0x4000000
je 0x140030868
movss xmm0, dword [rsi + 0x3900]
jmp 0x14002e059
mov byte [rbx + 0xe4], 1
jmp 0x14002f063
movss xmm0, dword [rsi + 0x3904]
jmp 0x14002f678
and r8d, 0x4000
jne 0x14002de10
test cl, cl
je 0x140030cc0
addss xmm7, dword [rdx + 0x3964]
movaps xmm1, xmm12
movaps xmm2, xmm7
jmp 0x14002de28
cmp byte [rbx + 0xdd], 0
jg 0x14002f0b4
cmp byte [rbx + 0xe5], 0
setle al
jmp 0x14002f0b4
and edi, 0x800000
je 0x14002f970
cmp byte [rsi + 0x4b24], 0
je 0x14002f970
mov rax, qword [rsi + 0x4ad8]
test rax, rax
je 0x14002f970
mov rdi, qword [rbx + 0x3a0]
cmp qword [rax + 0x3a0], rdi
je 0x14002f9a2
nop dword [rax]
cmp byte [rsi + 0x5f88], 0
jne 0x14002f9a2
movss xmm0, dword [rbx + 0x1f8]
comiss xmm0, dword [rbx + 0x200]
jb 0x140030df6
cmp byte [rbx + 0xdc], 0
jle 0x140031074
mov byte [rbx + 0xe5], 1
test rbp, rbp
je 0x14002f03c
cmp byte [rbp + 0xc1], 0
jne 0x140030c08
cmp byte [rbp + 0xe4], 0
jle 0x14002f9c8
mov byte [rbx + 0xe4], 1
cmp byte [rbp + 0xe5], 0
jle 0x14002f03c
mov byte [rbx + 0xe5], 1
jmp 0x14002f03c
lea rax, [rsp + 0xd0]
lea r8, [rsp + 0xa8]
mov rcx, rbx
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xe0]
lea rdx, [rsp + 0xb0]
mov qword [rsp + 0x70], rax
lea r9, [rsp + 0xac]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x20], eax
call fcn.14002bf90
mov r8d, eax
test eax, eax
jne 0x140030980
movzx ecx, byte [rsp + 0xa8]
movzx eax, byte [rsp + 0xac]
movzx edx, byte [rbx + 0xc1]
mov r14d, dword [rbx + 0x14]
jmp 0x14002e144
mov ecx, dword [rsp + 0x7c]
test ecx, ecx
jne 0x140030d88
movss xmm8, dword [rsi + 0x3964]
mov byte [rbx + 0xbd], 1
movaps xmm3, xmm8
test edx, edx
jne 0x140030690
subss xmm5, xmm8
comiss xmm15, xmm5
ja 0x140030675
mov byte [rbx + 0xbc], 0
pxor xmm3, xmm3
movaps xmm15, xmm8
jmp 0x14002f7c0
cmp byte [rbx + 0xdd], 0
jle 0x140030bb0
movzx eax, byte [rsp + 0x7b]
cmp byte [rsp + 0x70], 0
mov byte [rsp + 0x90], al
jne 0x14002f5f0
cmp byte [rbx + 0xde], 0
je 0x14002ffab
movss xmm1, dword [rbx + 0x3c]
movaps xmm0, xmm2
cmpnless xmm0, xmm1
andps xmm2, xmm0
andnps xmm0, xmm1
orps xmm2, xmm0
mov byte [rsp + 0x8e], 1
movss dword [rbx + 0x3c], xmm2
jmp 0x14002f5f0
test r15b, r15b
jne 0x14002e58f
cmp byte [rsp + 0x7c], 0
je 0x14002fffa
cmp byte [rsp + 0x70], 0
jne 0x14002d930
mov byte [rbx + 0xe5], 1
jmp 0x14002d930
ucomiss xmm0, dword [0x1401ab2d0]
jp 0x14002df13
jne 0x14002df13
mov eax, dword [rsp + 0x84]
test eax, eax
je 0x14002df39
nop word [rax + rax]
mov rcx, rbx
mov byte [rsp + 0x7c], r10b
mov byte [rsp + 0x70], r11b
call fcn.140019f60
movzx r11d, byte [rsp + 0x70]
movzx r10d, byte [rsp + 0x7c]
mov qword [rbx + 0x28], rax
jmp 0x14002df70
mov ecx, 0x3f8
call fcn.140009130
mov r8, qword [rsp + 0x290]
mov rdx, rsi
mov rbx, rax
mov rcx, rax
call fcn.14002b500
mov dword [rbx + 0x14], edi
mov edx, dword [rbx + 0x10]
mov r8, rbx
lea rcx, [rsi + 0x3fe8]
call fcn.14000ec30
mov r10, qword [0x140218048]
xor eax, eax
test edi, 0x100
jne 0x1400300d2
movsxd rax, dword [rbx + 0x2a4]
cmp eax, 0xffffffff
je 0x140031067
add rax, qword [r10 + 0x5f18]
test rax, rax
je 0x1400300d2
mov rdx, rax
sub rdx, qword [rsi + 0x5f18]
mov dword [rbx + 0x2a4], edx
movq xmm1, qword [0x1401ab240]
mov rdx, qword [r10 + 0x4ad0]
mov rdx, qword [rdx]
movq xmm0, qword [rdx + 4]
mov edx, 0xf0f
mov qword [rbx + 0x38], 0
mov qword [rbx + 0x30], 0
addps xmm0, xmm1
mov word [rbx + 0xe9], dx
movlps qword [rbx + 0x28], xmm0
test rax, rax
je 0x140030d40
mov edx, dword [rbx + 0xe8]
pxor xmm0, xmm0
pxor xmm1, xmm1
and edx, 0xff000000
or edx, 0xb0b0b
mov dword [rbx + 0xe8], edx
movsx edx, word [rax + 4]
cvtsi2ss xmm0, edx
movsx edx, word [rax + 6]
cvtsi2ss xmm1, edx
movsx edx, word [rax + 8]
unpcklps xmm0, xmm1
movlps qword [rbx + 0x28], xmm0
test dx, dx
jle 0x14003017a
movsx ecx, word [rax + 0xa]
test cx, cx
jle 0x14003017a
pxor xmm0, xmm0
pxor xmm1, xmm1
cvtsi2ss xmm0, edx
cvtsi2ss xmm1, ecx
unpcklps xmm0, xmm1
movlps qword [rbx + 0x38], xmm0
movq qword [rbx + 0x30], xmm0
movzx eax, byte [rax + 0xc]
mov byte [rbx + 0xc1], al
mov rax, qword [rbx + 0x28]
mov qword [rbx + 0x130], rax
mov qword [rbx + 0x128], rax
mov qword [rbx + 0x120], rax
test byte [rbx + 0x14], 0x40
je 0x140030b60
mov eax, 0x202
mov word [rbx + 0xdc], ax
xor eax, eax
mov byte [rbx + 0xde], al
mov edx, dword [rsi + 0x3fac]
movsxd rax, dword [rsi + 0x3fa8]
test edi, 0x2000
je 0x140030b38
test eax, eax
jne 0x140030d4c
test edx, edx
jne 0x140030b40
mov rdx, qword [0x1402180c8]
mov ecx, 0x40
call qword [case.0x1400092c2.1]
mov rdx, qword [0x140218048]
mov rbp, rax
test rdx, rdx
je 0x14003028e
movsx r9d, word [rdx + 0x6048]
mov r8d, dword [rdx + 0x3f60]
lea rcx, [rdx + 0x6040]
movsx r10, r9w
cmp r8d, dword [rdx + r10*8 + 0x604c]
je 0x1400311f8
add r9d, 1
movsxd rax, r9d
mov r10d, r9d
imul rax, rax, 0x2aaaaaab
sar r10d, 0x1f
shr rax, 0x20
sub eax, r10d
lea r10d, [rax + rax*2]
mov eax, r9d
add r10d, r10d
sub eax, r10d
mov word [rdx + 0x6048], ax
cdqe
lea r10, [rax*8]
mov dword [rdx + rax*8 + 0x604c], r8d
mov dword [rcx + r10 + 0x10], 0
lea r9, [rcx + r10 + 0xc]
add word [r9 + 4], 1
add dword [rdx + 0x6040], 1
mov rdx, qword [rsi + 0x3fb0]
test rdx, rdx
je 0x1400302b9
movsxd r8, dword [rsi + 0x3fa8]
mov rcx, rbp
shl r8, 3
call fcn.1400de8e0
mov rcx, qword [rsi + 0x3fb0]
call fcn.140009220
mov qword [rsi + 0x3fb0], rbp
movsxd rax, dword [rsi + 0x3fa8]
mov dword [rsi + 0x3fac], 8
jmp 0x140030b47
mov byte [rsp + 0x8f], 1
movss xmm2, dword [rbx + 0x58]
jmp 0x14002dab8
movss xmm2, dword [rbx + 0x2c]
mov rax, qword [rbx]
pxor xmm0, xmm0
test byte [rbx + 0x14], 1
jne 0x14003033e
mov rdx, qword [rbx + 0x378]
movss xmm1, dword [rax + 0x3d44]
mulss xmm1, dword [rbx + 0x2a0]
test rdx, rdx
je 0x14003032e
mulss xmm1, dword [rdx + 0x2a0]
movss xmm0, dword [rax + 0x3930]
addss xmm0, xmm0
addss xmm0, xmm1
movss xmm3, dword [rbx + 0x28]
movss xmm1, dword [rbx + 0x38]
addss xmm0, xmm2
addss xmm1, xmm3
subss xmm0, xmm2
subss xmm1, xmm3
unpcklps xmm1, xmm0
movlps qword [rbx + 0x30], xmm1
test r12b, r12b
je 0x14002dee6
mov dword [rbx + 0xe0], 0xffffffff
mov eax, edi
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x14002dee6
cmp byte [rsp + 0x60], 0
jne 0x14002dee6
movsxd rdx, dword [rsi + 0x4aa0]
mov r8, qword [rsi + 0x4aa8]
lea rax, [rdx*8]
sub rax, rdx
lea rax, [r8 + rax*8]
mov rax, qword [rax - 0x14]
mov qword [rbx + 0x28], rax
jmp 0x14002dee6
movd xmm3, edx
subss xmm3, dword [rsp + 0x98]
addss xmm3, xmm10
jmp 0x14002f745
movss xmm12, dword [0x1401ab0c0]
and r14d, 0x40
jne 0x1400303f8
movss xmm12, dword [rdx + 0x3908]
pxor xmm0, xmm0
test r8d, r8d
jne 0x14003042e
movss xmm3, dword [rcx + 0x3d44]
mulss xmm3, dword [rbx + 0x2a0]
test rax, rax
je 0x14003041e
mulss xmm3, dword [rax + 0x2a0]
movss xmm0, dword [rcx + 0x3930]
addss xmm0, xmm0
addss xmm0, xmm3
pxor xmm7, xmm7
test r10d, r10d
je 0x140030470
movss xmm3, dword [rcx + 0x3d44]
movss xmm4, dword [rbx + 0x178]
mulss xmm3, dword [rbx + 0x2a0]
test rax, rax
je 0x14003045c
mulss xmm3, dword [rax + 0x2a0]
movss xmm7, dword [rcx + 0x3930]
addss xmm3, xmm4
addss xmm7, xmm7
addss xmm7, xmm3
addss xmm7, xmm0
movss xmm0, dword [rdx + 0x3900]
pxor xmm3, xmm3
movss xmm9, dword [0x1401ab080]
subss xmm0, xmm9
comiss xmm3, xmm0
jb 0x140030496
movaps xmm0, xmm3
addss xmm7, xmm0
movaps xmm0, xmm7
cmpnless xmm0, xmm12
andps xmm7, xmm0
andnps xmm0, xmm12
orps xmm7, xmm0
jmp 0x14002dd0e
cmp qword [rsp + 0x58], 0
setne r14b
and r14b, cl
je 0x14002ed58
movsx edx, word [rbx + 0xd4]
movsxd rax, dword [rbp + 0x3fb8]
mov rcx, qword [rbp + 0x3fc0]
mov r8d, edx
add edx, 1
cmp edx, eax
jge 0x14003050d
movsxd rdx, edx
nop dword [rax]
mov r8, qword [rcx + rdx*8]
add rdx, 1
sub word [r8 + 0xd4], 1
cmp eax, edx
jg 0x1400304f0
movzx r8d, word [rbx + 0xd4]
movsx rdx, r8w
sub rax, 1
lea r8, [rdx*8]
sub rax, rdx
lea rdx, [rcx + r8 + 8]
add rcx, r8
lea r8, [rax*8]
call fcn.1400de8e8
mov eax, 0xffffffff
sub dword [rbp + 0x3fb8], 1
mov edx, r14d
mov word [rbx + 0xd4], ax
movsxd rax, dword [rsi + 0x3fd8]
jmp 0x14002ed58
mov qword [rdx + 0x4da8], 0
test rax, rax
je 0x140030578
mulss xmm0, dword [rax + 0x2a0]
movss dword [rdx + 0x3d58], xmm0
movss dword [rdx + 0x3d40], xmm0
cmp qword [rbx + 0x1b8], 0
sete r11b
jmp 0x14002da19
mov eax, dword [rbp + 0x1a0]
xor edx, edx
cmp eax, 1
jle 0x140030620
mov rcx, qword [rbp + 0x1a8]
sub eax, 2
cdqe
mov rax, qword [rcx + rax*8]
test rax, rax
je 0x140030620
movss xmm1, dword [rax + 0x2c]
movss xmm2, dword [rax + 0x34]
movss xmm0, dword [rbx + 0x2c]
addss xmm2, xmm1
comiss xmm2, xmm0
jbe 0x140030620
addss xmm0, dword [rbx + 0x34]
comiss xmm0, xmm1
jbe 0x140030620
mov rcx, qword [rbx + 0x2a8]
xor r14d, r14d
movsxd r8, dword [rcx]
lea rax, [r8*8]
sub rax, r8
mov r8, qword [rcx + 8]
lea rax, [r8 + rax*8]
mov r9d, dword [rax - 0x18]
test r9d, r9d
jne 0x14002e55f
mov rax, qword [rbp + 0x2a8]
mov ecx, dword [rax + 0x20]
test ecx, ecx
setne r14b
xor edx, 1
and r14b, dl
je 0x14002e55f
mov qword [rbx + 0x2a8], rax
jmp 0x14002e55f
cmp dword [rsp + 0x84], 0x800
jne 0x14002ff4f
nop word cs:[rax + rax]
mov byte [rbx + 0xbc], 1
jmp 0x14002ff5a
mov rax, qword [rbx + 0x378]
mov qword [rdx + 0x4da8], 0
test rax, rax
je 0x1400307d7
mulss xmm0, dword [rax + 0x2a0]
movss dword [rdx + 0x3d58], xmm0
movss dword [rdx + 0x3d40], xmm0
cmp qword [rbx + 0x1b8], 0
sete dl
jmp 0x14002efb2
mov ecx, 0x20
mov qword [rsp + 0x60], r9
call fcn.140009130
mov rdx, qword [rbx + 0x108]
mov r9, qword [rsp + 0x60]
mov r14, rax
test rdx, rdx
je 0x140030847
movsxd r8, dword [rbx + 0x100]
mov rcx, rax
shl r8, 2
call fcn.1400de8e0
mov rcx, qword [rbx + 0x108]
call fcn.140009220
mov r9, qword [rsp + 0x60]
mov qword [rbx + 0x108], r14
movsxd rax, dword [rbx + 0x100]
mov dword [rbx + 0x104], 8
jmp 0x14002ee04
movss xmm0, dword [rsi + 0x3924]
jmp 0x14002e059
lea r9d, [rdx + 1]
test edx, edx
jne 0x140030cf0
mov eax, 8
cmp r9d, eax
cmovl r9d, eax
movsxd rax, r9d
mov dword [rsp + 0x60], r9d
lea rcx, [rax*8]
sub rcx, rax
shl rcx, 3
call fcn.140009130
mov rdx, qword [rsi + 0x4aa8]
mov r9d, dword [rsp + 0x60]
mov r15, rax
test rdx, rdx
je 0x1400308ef
movsxd rax, dword [rsi + 0x4aa0]
mov rcx, r15
lea r8, [rax*8]
sub r8, rax
shl r8, 3
call fcn.1400de8e0
mov rcx, qword [rsi + 0x4aa8]
call fcn.140009220
mov r9d, dword [rsp + 0x60]
movsxd rdx, dword [rsi + 0x4aa0]
mov qword [rsi + 0x4aa8], r15
mov dword [rsi + 0x4aa4], r9d
lea rax, [rdx*8]
sub rax, rdx
shl rax, 3
jmp 0x14002f255
cmp byte [rbx + 0xe6], 0
setg al
xor edx, edx
jmp 0x14002f06d
movss xmm1, dword [rbx + 0xf0]
movq xmm2, qword [rbx + 0x30]
xor r8d, r8d
mov rcx, rbx
lea rdx, [rsp + 0x130]
unpcklps xmm0, xmm1
movq xmm1, qword [rbx + 0xf4]
mulps xmm1, xmm2
subps xmm0, xmm1
movlps qword [rsp + 0x130], xmm0
call fcn.140012ed0
jmp 0x14002df70
movzx ecx, byte [rsp + 0x90]
test al, 1
mov eax, 1
movzx edx, byte [rbx + 0xc1]
cmovne ecx, eax
and r8d, 2
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0x90], cl
movzx ecx, byte [rsp + 0xa8]
je 0x1400309be
mov byte [rsp + 0x8e], 1
mov r14d, dword [rbx + 0x14]
jmp 0x14002e144
mov rcx, qword [rsp + 0x290]
mov r14d, dword [rbx + 0x80]
call fcn.1400dea48
lea r8, [rax + 1]
movsxd rax, r14d
cmp rax, r8
jb 0x140030f1e
mov rdx, qword [rsp + 0x290]
mov rcx, r15
call fcn.1400de8e0
mov dword [rbx + 0x80], r14d
mov r14d, dword [rbx + 0x14]
mov qword [rbx + 8], r15
jmp 0x14002d8bf
pxor xmm14, xmm14
movaps xmm15, xmm14
jmp 0x14002f709
cmp qword [rsi + 0x4058], 0
jne 0x14002db65
movss xmm6, dword [rbx + 0x24c]
movaps xmm4, xmm6
cmpnless xmm4, xmm3
andps xmm6, xmm4
andnps xmm4, xmm3
addss xmm3, xmm0
movss xmm0, dword [rdx + 0x3954]
orps xmm6, xmm4
movss xmm4, dword [rbx + 0x248]
minss xmm3, dword [rbx + 0x254]
movaps xmm7, xmm4
cmpnless xmm7, xmm1
andps xmm4, xmm7
andnps xmm7, xmm1
addss xmm1, xmm5
movss xmm5, dword [rdx + 0xe48]
orps xmm4, xmm7
minss xmm1, dword [rbx + 0x250]
subss xmm4, xmm0
comiss xmm5, xmm4
jb 0x14002db65
movss xmm4, dword [rdx + 0x3958]
movss xmm7, dword [rdx + 0xe4c]
subss xmm6, xmm4
comiss xmm7, xmm6
jb 0x14002db65
addss xmm0, xmm1
comiss xmm0, xmm5
jbe 0x14002db65
addss xmm4, xmm3
comiss xmm4, xmm7
jbe 0x14002db65
cmp word [rsi + 0x3872], 2
jne 0x14002db65
mov byte [rbx + 0xc2], 1
jmp 0x14002db7c
movzx edx, byte [rbx + 0xdc]
test dl, dl
jle 0x140030b14
add edx, 1
mov byte [rbx + 0xdc], dl
movzx edx, byte [rbx + 0xdd]
test dl, dl
jle 0x14002f0fa
add edx, 1
mov byte [rbx + 0xdd], dl
jmp 0x14002f0fa
cmp eax, edx
je 0x140030f6f
mov rbp, qword [rsi + 0x3fb0]
mov qword [rbp + rax*8], rbx
mov eax, dword [rsi + 0x3fa8]
add eax, 1
mov dword [rsi + 0x3fa8], eax
jmp 0x14002d2e0
pxor xmm0, xmm0
comiss xmm0, dword [rbx + 0x30]
movss xmm1, dword [rbx + 0x34]
jae 0x140030b92
comiss xmm0, xmm1
movzx eax, byte [rbx + 0xdc]
jae 0x140030e1d
test al, al
jg 0x140030ba5
cmp byte [rbx + 0xdd], 0
setg al
jmp 0x1400301b5
comiss xmm0, xmm1
mov byte [rbx + 0xdc], 2
jb 0x140030ba5
mov byte [rbx + 0xdd], 2
mov eax, 1
jmp 0x1400301b5
movzx eax, byte [rsp + 0x7b]
movss xmm1, dword [rbx + 0x38]
movss xmm2, dword [rbx + 0x3c]
mov byte [rsp + 0x90], al
jmp 0x14002de80
movss xmm7, dword [0x1401ab0c0]
movss xmm9, dword [0x1401ab080]
jmp 0x14002dd0e
mov byte [rsp + 0x90], 1
movss dword [rbx + 0x38], xmm1
jmp 0x14002de68
mov byte [rbx + 0xe4], 1
jmp 0x14002f9d5
lea r10d, [rax + 1]
test eax, eax
je 0x140030dc2
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
add edx, eax
cmp edx, r10d
cmovge r10d, edx
cmp eax, r10d
jge 0x14002f4b2
movsxd rcx, r10d
mov byte [rsp + 0x7c], r11b
shl rcx, 3
mov dword [rsp + 0x70], r10d
call fcn.140009130
mov r10d, dword [rsp + 0x70]
mov rdx, qword [rbp + 0x1a8]
movzx r11d, byte [rsp + 0x7c]
mov r14, rax
test rdx, rdx
je 0x140030ca3
movsxd r8, dword [rbp + 0x1a0]
mov rcx, rax
mov dword [rsp + 0x7c], r10d
mov byte [rsp + 0x70], r11b
shl r8, 3
call fcn.1400de8e0
mov rcx, qword [rbp + 0x1a8]
call fcn.140009220
mov r10d, dword [rsp + 0x7c]
movzx r11d, byte [rsp + 0x70]
mov qword [rbp + 0x1a8], r14
movsxd rax, dword [rbp + 0x1a0]
mov dword [rbp + 0x1a4], r10d
jmp 0x14002f4b9
movaps xmm2, xmm7
movaps xmm1, xmm12
jmp 0x14002de28
mov rcx, rbx
mov byte [rsp + 0x70], r11b
call fcn.140019f60
movzx r11d, byte [rsp + 0x70]
mov r10d, r14d
mov qword [rbx + 0x28], rax
jmp 0x14002df70
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sar ecx, 1
add ecx, edx
cmp ecx, r9d
cmovge r9d, ecx
cmp edx, r9d
jge 0x14002f24e
jmp 0x140030890
ucomiss xmm0, dword [0x1401ab2d0]
jp 0x14002df13
jne 0x14002df13
mov eax, dword [rsp + 0x84]
test eax, eax
je 0x14002df70
jmp 0x140030038
mov byte [rbx + 0xe8], 0xf
jmp 0x140030184
cmp eax, edx
je 0x14003108d
mov rbp, qword [rsi + 0x3fb0]
test eax, eax
jg 0x1400311b8
mov qword [rbp], rbx
mov eax, dword [rsi + 0x3fa8]
add eax, 1
jmp 0x140030b55
mov dword [rbx + 0x3c], 0
mov dword [rbx + 0x34], 0
jmp 0x14002d98a
mov byte [rbx + 0xbd], 0
test edx, edx
jne 0x140031047
comiss xmm15, xmm5
jbe 0x140030dae
cmp dword [rsp + 0x84], 0x800
je 0x14002f772
pxor xmm3, xmm3
mov byte [rbx + 0xbc], 0
movaps xmm15, xmm3
jmp 0x14002f7c0
mov eax, 8
cmp r10d, eax
cmovl r10d, eax
jmp 0x140030c3f
movss xmm0, dword [rdx + 0x1c]
movss dword [rdx + 0x5eec], xmm0
movss xmm2, dword [rbx + 0x58]
jmp 0x14002dbc0
movss xmm0, dword [rbx + 0x1fc]
comiss xmm0, dword [rbx + 0x204]
jb 0x14002f9a2
jmp 0x14002f98e
movss xmm0, dword [rsi + 0x38fc]
jmp 0x14002da99
mov byte [rbx + 0xdd], 2
jmp 0x140030b7f
movsxd rdx, dword [rsi + 0x4aa0]
mov r8, qword [rsi + 0x4aa8]
lea rax, [rdx*8]
sub rax, rdx
lea rax, [r8 + rax*8]
mov rax, qword [rax - 0x14]
mov qword [rbx + 0x28], rax
jmp 0x14002deda
mov rax, qword [0x140218048]
movss xmm5, dword [rbx + 0x30]
movss xmm14, dword [rbx + 0x34]
cmp byte [rax + 0x5f], 0
je 0x140030eab
test r14b, 1
jne 0x140030eab
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x378]
movss xmm2, dword [rax + 0x3d44]
mulss xmm2, dword [rbx + 0x2a0]
test rdx, rdx
je 0x140030e98
mulss xmm2, dword [rdx + 0x2a0]
movss xmm14, dword [rax + 0x3930]
addss xmm14, xmm14
addss xmm14, xmm2
movshdup xmm2, xmm4
subss xmm0, xmm14
subss xmm1, xmm5
comiss xmm0, xmm2
ja 0x140030ec5
movaps xmm0, xmm11
minss xmm0, xmm2
comiss xmm1, xmm4
ja 0x140030ed1
minss xmm3, xmm4
movaps xmm1, xmm3
movaps xmm4, xmm1
unpcklps xmm4, xmm0
cvttps2dq xmm2, xmm4
jmp 0x14002f8a6
mov rcx, r15
mov qword [rsp + 0x68], r8
call fcn.140009220
mov rcx, qword [rsp + 0x68]
call fcn.140009130
mov r8, qword [rsp + 0x68]
mov r15, rax
mov r14d, r8d
jmp 0x1400309f4
lea ecx, [rax + 1]
test eax, eax
jne 0x140031198
mov eax, 8
cmp ecx, eax
cmovge eax, ecx
mov r12d, eax
movsxd rcx, r12d
shl rcx, 3
call fcn.140009130
mov rdx, qword [rsi + 0x3fb0]
mov rbp, rax
test rdx, rdx
je 0x140030fc1
movsxd r8, dword [rsi + 0x3fa8]
mov rcx, rax
shl r8, 3
call fcn.1400de8e0
mov rcx, qword [rsi + 0x3fb0]
call fcn.140009220
mov qword [rsi + 0x3fb0], rbp
movsxd rax, dword [rsi + 0x3fa8]
mov dword [rsi + 0x3fac], r12d
jmp 0x140030b47
lea r15d, [rax + 1]
test eax, eax
jne 0x1400311d8
mov eax, 8
cmp r15d, eax
cmovl r15d, eax
movsxd rcx, r15d
shl rcx, 3
call fcn.140009130
mov rdx, qword [rbp + 0x3fc0]
mov r14, rax
test rdx, rdx
je 0x14003102d
movsxd r8, dword [rbp + 0x3fb8]
mov rcx, rax
shl r8, 3
call fcn.1400de8e0
mov rcx, qword [rbp + 0x3fc0]
call fcn.140009220
mov qword [rbp + 0x3fc0], r14
movsxd rax, dword [rbp + 0x3fb8]
mov dword [rbp + 0x3fbc], r15d
jmp 0x14002ee44
mov r11d, 1
movss xmm3, dword [rsi + 0x3964]
pxor xmm15, xmm15
mov word [rbx + 0xbc], r11w
jmp 0x14002f7c0
mov ecx, dword [rbx + 0x10]
call fcn.14001ec60
jmp 0x1400300bd
cmp byte [rbx + 0xdd], 0
jg 0x14002f99b
mov byte [rbx + 0xe4], 1
jmp 0x14002f9a2
mov edx, eax
lea ecx, [rax + 1]
shr edx, 0x1f
add edx, eax
sar edx, 1
add edx, eax
cmp edx, ecx
cmovge ecx, edx
mov r12d, ecx
cmp ecx, eax
jle 0x140030d54
movsxd rcx, ecx
mov rdx, qword [0x1402180c8]
shl rcx, 3
call qword [case.0x1400092c2.1]
mov rdx, qword [0x140218048]
mov rbp, rax
test rdx, rdx
je 0x140031153
movsx ecx, word [rdx + 0x6048]
mov r9d, dword [rdx + 0x3f60]
lea r8, [rdx + 0x6040]
movsx r10, cx
cmp r9d, dword [rdx + r10*8 + 0x604c]
je 0x140031202
add ecx, 1
movsxd rax, ecx
mov r10d, ecx
imul rax, rax, 0x2aaaaaab
sar r10d, 0x1f
shr rax, 0x20
sub eax, r10d
lea r10d, [rax + rax*2]
mov eax, ecx
add r10d, r10d
sub eax, r10d
mov word [rdx + 0x6048], ax
cdqe
lea r10, [rax*8]
mov dword [rdx + rax*8 + 0x604c], r9d
mov dword [r8 + r10 + 0x10], 0
lea rcx, [r8 + r10 + 0xc]
add word [rcx + 4], 1
add dword [rdx + 0x6040], 1
mov rdx, qword [rsi + 0x3fb0]
test rdx, rdx
je 0x14003117e
movsxd r8, dword [rsi + 0x3fa8]
mov rcx, rbp
shl r8, 3
call fcn.1400de8e0
mov rcx, qword [rsi + 0x3fb0]
call fcn.140009220
mov qword [rsi + 0x3fb0], rbp
movsxd rax, dword [rsi + 0x3fa8]
mov dword [rsi + 0x3fac], r12d
jmp 0x140030d5b
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
add edx, eax
cmp edx, ecx
cmovge ecx, edx
mov r12d, ecx
cmp ecx, eax
jle 0x140030b40
jmp 0x140030f87
lea rcx, [rbp + 8]
mov rdx, rbp
lea r8, [rax*8]
call fcn.1400de8e8
mov rbp, qword [rsi + 0x3fb0]
jmp 0x140030d63
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
add edx, eax
cmp edx, r15d
cmovge r15d, edx
cmp eax, r15d
jge 0x14002ee3d
jmp 0x140030ff3
lea r9, [rcx + r10*8 + 0xc]
jmp 0x140030281
lea rcx, [r8 + r10*8 + 0xc]
jmp 0x140031147