Function at 0x140040310
Capabilities:
Create thread

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x478]
sub rsp, 0x538
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov rax, qword [0x1402710d8]
xor rax, rsp
mov qword [rbp + 0x380], rax
mov qword [rbp + 0x110], r9
mov eax, dword [rbp + 0x4c8]
mov dword [rbp + 0x118], eax
xor r13d, r13d
mov dword [rsp + 0x54], r13d
test r9, r9
je 0x140041b41
test rcx, rcx
je 0x140041b41
mov r15d, dword [rbp + 0x4a0]
test r15d, r15d
je 0x140041b41
cmp dword [rbp + 0x4a8], r13d
je 0x140041b41
cmp dword [rbp + 0x4b0], r13d
je 0x140041b41
cmp qword [rbp + 0x4b8], r13
je 0x140041b41
cmp dword [rbp + 0x4c0], r13d
je 0x140041b41
test eax, eax
je 0x140041b41
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1d0], xmm1
mov qword [rbp + 0x1e0], r13
movups xmmword [rbp + 0x178], xmm0
mov qword [rbp + 0x188], rax
lea eax, [r15 + 1]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x6c], r13d
mov esi, dword [rbp + 0x118]
movdqu xmmword [rbp + 0x178], xmm0
mov qword [rbp + 0x188], r13
test rsi, rsi
je 0x1400404bd
lfence
lea rbx, [rsi*8]
mov rcx, rbx
call fcn.1400158a0
mov qword [rbp + 0x178], rax
mov qword [rbp + 0x180], rax
add rax, rbx
mov qword [rbp + 0x188], rax
lea rax, [rbp + 0x178]
mov qword [rsp + 0x70], rax
mov rdx, qword [rbp + 0x178]
mov rdi, rdx
mov rax, qword [rsp + 0x68]
mov ecx, esi
rep stosq qword [rdi], rax
lea rax, [rbx + rdx]
mov qword [rbp + 0x180], rax
mov qword [rsp + 0x70], r13
mov ebx, r13d
mov dword [rbp + 0x108], ebx
test r15d, r15d
je 0x140040be1
mov eax, r13d
movabs r12, 0x8000000000000000
movss xmm7, dword [0x1401147d0]
movss xmm13, dword [0x140115964]
movss xmm9, dword [0x140115968]
mov rdi, qword [rbp + 0x1d8]
nop dword [rax]
mov esi, eax
add rsi, rsi
mov r14, qword [rbp + 0x110]
movss xmm6, dword [r14 + rsi*8 + 8]
mulss xmm6, xmm7
movaps xmm0, xmm6
call fcn.140077640
mov eax, dword [rbp + 0x4b0]
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm0, xmm1
mov eax, dword [rbp + 0x4a8]
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
divss xmm0, xmm2
call fcn.1400767ac
movaps xmm8, xmm0
addss xmm8, xmm8
mulss xmm8, xmm7
movaps xmm0, xmm8
call fcn.140077640
movaps xmm7, xmm0
movaps xmm0, xmm6
call fcn.140077640
movaps xmm10, xmm0
mulss xmm7, xmm7
divss xmm7, xmm10
mulss xmm7, xmm10
addss xmm7, xmm13
movaps xmm1, xmm0
mulss xmm1, xmm10
addss xmm1, xmm7
divss xmm7, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm7
ja 0x14004059f
sqrtss xmm7, xmm7
jmp 0x1400405aa
movaps xmm0, xmm7
call fcn.140077598
movaps xmm7, xmm0
movaps xmm0, xmm8
call fcn.1400769a0
movaps xmm6, xmm0
mulss xmm0, xmm7
movss dword [rsp + 0x68], xmm0
movss xmm11, dword [r14 + rsi*8 + 4]
movss xmm14, dword [r14 + rsi*8]
movss dword [rsp + 0x48], xmm14
movaps xmm0, xmm14
addss xmm0, xmm8
movss dword [rsp + 0x58], xmm0
call fcn.140076ea0
mulss xmm0, xmm7
call fcn.1400765c0
movss dword [rbp + 0x10c], xmm0
movaps xmm0, xmm14
subss xmm0, xmm8
movss dword [rsp + 0x60], xmm0
call fcn.140076ea0
mulss xmm0, xmm7
call fcn.1400765c0
movaps xmm15, xmm0
movss dword [rbp + 0x104], xmm15
mulss xmm6, xmm10
mulss xmm6, xmm7
movss xmm8, dword [rbp + 0x10c]
movaps xmm0, xmm8
call fcn.1400769a0
movaps xmm2, xmm6
divss xmm2, xmm0
movss xmm10, dword [0x140116900]
movaps xmm1, xmm10
maxss xmm1, xmm2
movaps xmm0, xmm13
minss xmm0, xmm1
call fcn.1400765c0
movaps xmm7, xmm0
movss dword [rsp + 0x70], xmm7
movaps xmm0, xmm15
call fcn.1400769a0
divss xmm6, xmm0
movaps xmm1, xmm10
maxss xmm1, xmm6
movaps xmm0, xmm13
minss xmm0, xmm1
call fcn.1400765c0
movaps xmm12, xmm0
movss xmm0, dword [rsp + 0x60]
movss dword [rsp + 0x40], xmm0
lea rax, [rsp + 0x40]
lea rcx, [rbp + 0x104]
comiss xmm15, xmm0
cmovbe rax, rcx
movss xmm1, dword [rax]
movss xmm0, dword [rsp + 0x58]
movss dword [rsp + 0x44], xmm0
lea rax, [rsp + 0x44]
lea rcx, [rbp + 0x10c]
comiss xmm0, xmm8
cmovbe rax, rcx
movss xmm2, dword [rax]
divss xmm1, dword [0x1401168f4]
movaps xmm0, xmm10
maxss xmm0, xmm1
movaps xmm3, xmm13
minss xmm3, xmm0
addss xmm3, xmm13
mulss xmm3, dword [0x1401147d0]
divss xmm2, dword [0x1401168f4]
movaps xmm0, xmm10
maxss xmm0, xmm2
movaps xmm4, xmm13
minss xmm4, xmm0
addss xmm4, xmm13
mulss xmm4, dword [0x1401147d0]
mov eax, dword [rbp + 0x118]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movaps xmm1, xmm0
mulss xmm1, xmm3
xor eax, eax
comiss xmm1, xmm9
jb 0x14004074f
subss xmm1, xmm9
comiss xmm1, xmm9
jae 0x14004074f
mov rax, r12
cvttss2si rdx, xmm1
add rdx, rax
mulss xmm0, xmm4
xor eax, eax
comiss xmm0, xmm9
jb 0x140040771
subss xmm0, xmm9
comiss xmm0, xmm9
jae 0x140040771
mov rax, r12
cvttss2si r8, xmm0
add r8, rax
cmp rdx, r8
jae 0x1400407cb
nop
mov rax, qword [rbp + 0x178]
lea rcx, [rax + rdx*8]
lea rax, [rbp + 0x108]
cmp ebx, dword [rcx]
cmovae rax, rcx
mov eax, dword [rax]
mov dword [rcx], eax
mov rcx, qword [rbp + 0x178]
add rcx, 4
lea rcx, [rcx + rdx*8]
lea rax, [rbp + 0x108]
cmp dword [rcx], ebx
cmovae rax, rcx
mov eax, dword [rax]
mov dword [rcx], eax
inc rdx
cmp rdx, r8
jb 0x140040780
mov rdi, qword [rbp + 0x1d8]
movaps xmm0, xmm14
call fcn.1400769a0
movaps xmm6, xmm0
movaps xmm0, xmm11
call fcn.140076ea0
movaps xmm14, xmm0
mulss xmm14, xmm6
movss xmm0, dword [rsp + 0x48]
call fcn.140076ea0
movaps xmm10, xmm0
movss dword [rsp + 0x40], xmm10
movaps xmm0, xmm11
call fcn.1400769a0
movaps xmm9, xmm0
mulss xmm9, xmm6
movss dword [rsp + 0x44], xmm9
movss dword [rbp - 0x1c], xmm14
movss dword [rbp - 0x18], xmm10
movss dword [rbp - 0x14], xmm9
movss xmm0, dword [rsp + 0x58]
comiss xmm0, dword [0x1401168f4]
movaps xmm0, xmm8
jb 0x14004094a
movaps xmm6, xmm7
addss xmm6, xmm11
subss xmm6, dword [0x1401168f8]
call fcn.1400769a0
movaps xmm10, xmm0
movaps xmm0, xmm6
call fcn.140076ea0
movaps xmm9, xmm0
mulss xmm9, xmm10
movaps xmm0, xmm8
call fcn.140076ea0
movaps xmm13, xmm0
movaps xmm0, xmm6
call fcn.1400769a0
movaps xmm8, xmm0
mulss xmm8, xmm10
movss dword [rbp - 0x40], xmm9
movss dword [rbp - 0x3c], xmm13
movss dword [rbp - 0x38], xmm8
movaps xmm7, xmm11
subss xmm7, dword [rsp + 0x70]
addss xmm7, dword [0x1401168f8]
subss xmm11, xmm12
movaps xmm0, xmm15
call fcn.1400769a0
movaps xmm6, xmm0
movaps xmm0, xmm11
call fcn.1400769a0
movaps xmm12, xmm0
mulss xmm12, xmm6
subss xmm12, xmm8
movaps xmm0, xmm15
call fcn.140076ea0
subss xmm0, xmm13
movss dword [rsp + 0x48], xmm0
movaps xmm0, xmm11
call fcn.140076ea0
movaps xmm11, xmm0
mulss xmm11, xmm6
subss xmm11, xmm9
movaps xmm0, xmm7
call fcn.1400769a0
movaps xmm15, xmm0
mulss xmm15, xmm10
subss xmm15, xmm8
subss xmm13, xmm13
movaps xmm0, xmm7
call fcn.140076ea0
movaps xmm8, xmm0
mulss xmm8, xmm10
subss xmm8, xmm9
movss xmm7, dword [rsp + 0x48]
movss xmm9, dword [rsp + 0x44]
movss xmm10, dword [rsp + 0x40]
jmp 0x140040a95
movaps xmm6, xmm11
movss xmm15, dword [rsp + 0x70]
subss xmm6, xmm15
call fcn.1400769a0
movaps xmm7, xmm0
movaps xmm0, xmm6
call fcn.140076ea0
movaps xmm8, xmm0
mulss xmm8, xmm7
movss dword [rsp + 0x40], xmm8
movss xmm0, dword [rbp + 0x10c]
call fcn.140076ea0
movaps xmm13, xmm0
movaps xmm0, xmm6
call fcn.1400769a0
mulss xmm0, xmm7
movss dword [rsp + 0x44], xmm0
movss dword [rbp - 0x40], xmm8
movss dword [rbp - 0x3c], xmm13
movss dword [rbp - 0x38], xmm0
addss xmm15, xmm11
movaps xmm0, xmm15
call fcn.140076ea0
movaps xmm8, xmm0
mulss xmm8, xmm7
movaps xmm0, xmm15
call fcn.1400769a0
movaps xmm15, xmm0
mulss xmm15, xmm7
movss xmm0, dword [0x140116904]
movss xmm7, dword [rbp + 0x104]
comiss xmm0, dword [rsp + 0x60]
movaps xmm0, xmm7
jb 0x140040a2a
addss xmm12, xmm11
subss xmm12, dword [0x1401168f8]
call fcn.1400769a0
movaps xmm6, xmm0
movaps xmm0, xmm12
call fcn.140076ea0
movaps xmm11, xmm0
mulss xmm11, xmm6
movaps xmm0, xmm7
call fcn.140076ea0
movaps xmm7, xmm0
movaps xmm0, xmm12
jmp 0x140040a61
subss xmm11, xmm12
movss dword [rsp + 0x48], xmm11
call fcn.1400769a0
movaps xmm6, xmm0
movaps xmm0, xmm11
call fcn.140076ea0
movaps xmm11, xmm0
mulss xmm11, xmm6
movaps xmm0, xmm7
call fcn.140076ea0
movaps xmm7, xmm0
movss xmm0, dword [rsp + 0x48]
call fcn.1400769a0
movaps xmm12, xmm0
mulss xmm12, xmm6
subss xmm12, dword [rsp + 0x44]
subss xmm7, xmm13
subss xmm11, dword [rsp + 0x40]
subss xmm15, dword [rsp + 0x44]
subss xmm13, xmm13
subss xmm8, dword [rsp + 0x40]
movss dword [rbp - 0x20], xmm15
movss dword [rbp - 0x24], xmm13
movss dword [rbp - 0x28], xmm8
movss dword [rbp - 0x2c], xmm12
movss dword [rbp - 0x30], xmm7
movss dword [rbp - 0x34], xmm11
movaps xmm2, xmm9
movss xmm3, dword [rsp + 0x68]
mulss xmm2, xmm3
movaps xmm1, xmm10
mulss xmm1, xmm3
movaps xmm0, xmm14
mulss xmm0, xmm3
mulss xmm14, xmm0
mulss xmm10, xmm1
addss xmm14, xmm10
mulss xmm9, xmm2
addss xmm14, xmm9
movss xmm0, dword [0x140116900]
divss xmm0, xmm14
movss dword [rbp - 0x10], xmm0
mov eax, ebx
mov qword [rbp - 8], rax
mulss xmm8, xmm8
mulss xmm13, xmm13
addss xmm8, xmm13
mulss xmm15, xmm15
addss xmm8, xmm15
movss xmm13, dword [0x140115964]
movaps xmm0, xmm13
divss xmm0, xmm8
movss dword [rbp], xmm0
mulss xmm11, xmm11
mulss xmm7, xmm7
addss xmm11, xmm7
mulss xmm12, xmm12
addss xmm11, xmm12
movaps xmm0, xmm13
divss xmm0, xmm11
movss dword [rbp + 4], xmm0
cmp rdi, qword [rbp + 0x1e0]
je 0x140040ba3
movaps xmm0, xmmword [rbp - 0x40]
movups xmmword [rdi], xmm0
movaps xmm1, xmmword [rbp - 0x30]
movups xmmword [rdi + 0x10], xmm1
movaps xmm0, xmmword [rbp - 0x20]
movups xmmword [rdi + 0x20], xmm0
movaps xmm1, xmmword [rbp - 0x10]
movups xmmword [rdi + 0x30], xmm1
movsd xmm0, qword [rbp]
movsd qword [rdi + 0x40], xmm0
mov rdi, qword [rbp + 0x1d8]
add rdi, 0x48
mov qword [rbp + 0x1d8], rdi
jmp 0x140040bbd
lea r8, [rbp - 0x40]
mov rdx, rdi
lea rcx, [rbp + 0x1d0]
call fcn.14003d880
mov rdi, qword [rbp + 0x1d8]
inc ebx
mov dword [rbp + 0x108], ebx
mov eax, ebx
cmp ebx, r15d
movss xmm9, dword [0x140115968]
movss xmm7, dword [0x1401147d0]
jb 0x140040500
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x130], xmm0
mov qword [rbp + 0x140], rax
mov esi, dword [rbp + 0x118]
movdqu xmmword [rbp + 0x130], xmm0
mov qword [rbp + 0x140], r13
test rsi, rsi
je 0x140040c72
lfence
lea rbx, [rsi*8]
mov rcx, rbx
call fcn.1400158a0
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x138], rax
add rax, rbx
mov qword [rbp + 0x140], rax
lea rax, [rbp + 0x130]
mov qword [rbp + 0x80], rax
mov rdi, qword [rbp + 0x130]
lea r8, [rsi*8]
xor edx, edx
mov rcx, rdi
call fcn.1400675d0
lea rax, [rdi + rbx]
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x80], r13
mov rcx, qword [rbp + 0x178]
mov r8, qword [rbp + 0x180]
cmp rcx, r8
jne 0x140040c91
mov rdx, qword [rbp + 0x130]
mov rdi, rdx
jmp 0x140040cdb
mov rdi, qword [rbp + 0x130]
mov rdx, rcx
mov rax, qword [rcx]
mov qword [rdi], rax
add rdi, 8
add rcx, 8
cmp rcx, r8
je 0x140040cd4
nop
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x140040cbe
mov eax, dword [rcx + 4]
cmp dword [rdx + 4], eax
je 0x140040ccb
mov rdx, rcx
mov rax, qword [rcx]
mov qword [rdi], rax
add rdi, 8
add rcx, 8
cmp rcx, r8
jne 0x140040cb0
mov rdx, qword [rbp + 0x130]
sub rdi, rdx
sar rdi, 3
mov rbx, qword [rbp + 0x138]
mov rcx, rbx
sub rcx, rdx
sar rcx, 3
cmp rdi, rcx
jae 0x140040d05
lea rax, [rdx + rdi*8]
mov qword [rbp + 0x138], rax
jmp 0x140040d55
jbe 0x140040d55
mov rax, qword [rbp + 0x140]
sub rax, rdx
sar rax, 3
cmp rdi, rax
jbe 0x140040d33
lfence
lea r8, [rsp + 0x52]
mov rdx, rdi
lea rcx, [rbp + 0x130]
call fcn.14003e170
jmp 0x140040d55
sub rdi, rcx
je 0x140040d4e
lea r8, [rdi*8]
xor edx, edx
mov rcx, rbx
call fcn.1400675d0
lea rbx, [rbx + rdi*8]
mov qword [rbp + 0x138], rbx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1b8], xmm0
mov qword [rbp + 0x1c8], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1b8], xmm1
mov qword [rbp + 0x1c8], r13
movups xmmword [rbp + 0x190], xmm0
mov qword [rbp + 0x190], r13
mov qword [rbp + 0x198], r13
lfence
lea ecx, [rax + 0x20]
call fcn.140064d14
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0x190], rax
mov r14, qword [rbp + 0x130]
mov r12, qword [rbp + 0x138]
cmp r14, r12
je 0x1400415c6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], rax
mov eax, dword [r14 + 4]
sub eax, dword [r14]
add eax, 1
movdqu xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], r13
je 0x140040e53
lfence
lea rbx, [rax*4]
mov rcx, rbx
call fcn.1400158a0
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1a8], rax
add rax, rbx
mov qword [rbp + 0x1b0], rax
lea rax, [rbp + 0x1a0]
mov qword [rbp + 0x88], rax
mov rcx, qword [rbp + 0x1a0]
lea rdi, [rcx + rbx]
mov r8, rbx
xor edx, edx
call fcn.1400675d0
mov qword [rbp + 0x1a8], rdi
mov qword [rbp + 0x88], r13
mov eax, dword [r14]
mov rsi, qword [rbp + 0x1a0]
mov rdi, qword [rbp + 0x1a8]
cmp rsi, rdi
je 0x140040e8b
nop dword [rax]
mov dword [rsi], eax
inc eax
add rsi, 4
cmp rsi, rdi
jne 0x140040e70
mov rdi, qword [rbp + 0x1a8]
mov rsi, qword [rbp + 0x1a0]
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x120], r13
mov qword [rbp + 0x128], r13
lfence
mov ecx, 0x20
call fcn.140064d14
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0x120], rax
mov r15, qword [rbp + 0x120]
cmp rsi, rdi
je 0x140040f98
nop dword [rax + rax]
mov r9, rsi
mov r8, r15
lea rdx, [rbp + 0xe8]
lea rcx, [rbp + 0x120]
call fcn.14003df10
movups xmm6, xmmword [rax]
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0xe0], xmm0
cmp byte [rbp + 0xe0], 0
jne 0x140040f8b
movabs rax, 0x7ffffffffffffff
cmp qword [rbp + 0x128], rax
je 0x140041bae
mov rbx, qword [rbp + 0x120]
lea rax, [rbp + 0x120]
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x70], r13
mov qword [rbp + 0x70], r13
lfence
mov ecx, 0x20
call fcn.140064d14
mov qword [rbp + 0x70], rax
mov ecx, dword [rsi]
mov dword [rax + 0x1c], ecx
mov qword [rax], rbx
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbx
mov word [rax + 0x18], 0
mov qword [rbp + 0x70], r13
movaps xmmword [rbp + 0xb0], xmm6
mov r8, rax
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x120]
call fcn.140025b50
add rsi, 4
cmp rsi, rdi
jne 0x140040ee0
mov rbx, qword [rbp + 0x198]
cmp rbx, qword [rbp + 0x128]
cmovb rbx, qword [rbp + 0x128]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x160], xmm0
mov qword [rbp + 0x170], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x160], xmm1
mov qword [rbp + 0x170], r13
movabs r15, 0x1fffffffffffffff
test rbx, rbx
je 0x140041049
cmp rbx, r15
ja 0x140041bb4
lfence
lea rsi, [rbx*8]
mov rcx, rsi
call fcn.1400158a0
mov qword [rbp + 0x160], rax
mov qword [rbp + 0x168], rax
add rax, rsi
mov qword [rbp + 0x170], rax
lea rax, [rbp + 0x160]
mov qword [rbp + 0x90], rax
mov rcx, qword [rbp + 0x160]
lea rdi, [rcx + rsi]
mov r8, rsi
xor edx, edx
call fcn.1400675d0
mov qword [rbp + 0x168], rdi
mov qword [rbp + 0x90], r13
jmp 0x140041051
lea rsi, [rbx*8]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x148], xmm0
mov qword [rbp + 0x158], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x148], xmm1
mov qword [rbp + 0x158], r13
test rbx, rbx
je 0x1400410d8
cmp rbx, r15
ja 0x140041bba
lfence
mov rcx, rsi
call fcn.1400158a0
mov qword [rbp + 0x148], rax
mov qword [rbp + 0x150], rax
add rax, rsi
mov qword [rbp + 0x158], rax
lea rax, [rbp + 0x148]
mov qword [rbp + 0x98], rax
mov rcx, qword [rbp + 0x148]
lea rdi, [rsi + rcx]
mov r8, rsi
xor edx, edx
call fcn.1400675d0
mov qword [rbp + 0x150], rdi
mov qword [rbp + 0x98], r13
mov qword [rsp + 0x48], r13
mov r9, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x120]
mov byte [rsp + 0x30], 0
mov rax, qword [rbp + 0x160]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
mov r9, qword [r9]
mov r8, rdx
mov rdx, qword [rdx]
lea rcx, [rsp + 0x48]
call fcn.14003e810
mov qword [rsp + 0x60], r13
mov r9, qword [rbp + 0x120]
mov rdx, qword [rbp + 0x190]
mov byte [rsp + 0x30], 0
mov rax, qword [rbp + 0x148]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
mov r9, qword [r9]
mov r8, rdx
mov rdx, qword [rdx]
lea rcx, [rsp + 0x60]
call fcn.14003e810
mov rcx, qword [rsp + 0x48]
mov rdi, qword [rbp + 0x160]
sub rcx, rdi
sar rcx, 3
mov r9, qword [rbp + 0x168]
mov rdx, r9
sub rdx, rdi
sar rdx, 3
cmp rcx, rdx
jae 0x140041186
lea rax, [rdi + rcx*8]
mov qword [rbp + 0x168], rax
jmp 0x1400411d4
jbe 0x1400411d4
mov rax, qword [rbp + 0x170]
sub rax, rdi
sar rax, 3
cmp rcx, rax
jbe 0x1400411b4
lfence
lea r8, [rsp + 0x50]
mov rdx, rcx
lea rcx, [rbp + 0x160]
call fcn.14003e360
jmp 0x1400411d4
sub rcx, rdx
lea r8, [rcx*8]
lea rdi, [r9 + r8]
xor edx, edx
mov rcx, r9
call fcn.1400675d0
mov qword [rbp + 0x168], rdi
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rbp + 0x148]
sub rcx, rdi
sar rcx, 3
mov r9, qword [rbp + 0x150]
mov rdx, r9
sub rdx, rdi
sar rdx, 3
cmp rcx, rdx
jae 0x14004120a
lea rax, [rdi + rcx*8]
mov qword [rbp + 0x150], rax
jmp 0x140041258
jbe 0x140041258
mov rax, qword [rbp + 0x158]
sub rax, rdi
sar rax, 3
cmp rcx, rax
jbe 0x140041238
lfence
lea r8, [rsp + 0x51]
mov rdx, rcx
lea rcx, [rbp + 0x148]
call fcn.14003e360
jmp 0x140041258
sub rcx, rdx
lea r8, [rcx*8]
lea rdi, [r9 + r8]
xor edx, edx
mov rcx, r9
call fcn.1400675d0
mov qword [rbp + 0x150], rdi
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x190]
call fcn.140042120
mov r8, qword [rbp + 0x178]
mov rcx, r8
mov rdx, qword [rbp + 0x180]
cmp r8, rdx
je 0x14004129a
mov edi, dword [r14]
cmp dword [rcx], edi
jne 0x140041291
mov eax, dword [r14 + 4]
cmp dword [rcx + 4], eax
je 0x14004129a
add rcx, 8
cmp rcx, rdx
jne 0x140041284
sub rcx, r8
sar rcx, 3
mov qword [rsp + 0x78], rcx
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r13
mov r15, qword [rbp + 0x160]
mov rsi, qword [rbp + 0x168]
cmp r15, rsi
je 0x140041333
mov rbx, rsi
sub rbx, r15
sar rbx, 3
movabs rax, 0x1fffffffffffffff
cmp rbx, rax
ja 0x140041bc0
lfence
lea rbx, [rbx*8]
mov rcx, rbx
call fcn.1400158a0
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
add rax, rbx
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x80]
mov qword [rbp + 0xa0], rax
mov rdi, qword [rbp - 0x80]
sub rsi, r15
mov r8, rsi
mov rdx, r15
mov rcx, rdi
call fcn.140066f00
lea rax, [rdi + rbx]
mov qword [rbp - 0x78], rax
mov qword [rbp + 0xa0], r13
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], r13
mov r15, qword [rbp + 0x148]
mov rsi, qword [rbp + 0x150]
cmp r15, rsi
je 0x1400413ba
mov rbx, rsi
sub rbx, r15
sar rbx, 3
movabs rax, 0x1fffffffffffffff
cmp rbx, rax
ja 0x140041bc6
lfence
lea rbx, [rbx*8]
mov rcx, rbx
call fcn.1400158a0
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
add rax, rbx
mov qword [rbp - 0x58], rax
lea rax, [rbp - 0x68]
mov qword [rbp + 0x78], rax
mov rdi, qword [rbp - 0x68]
sub rsi, r15
mov r8, rsi
mov rdx, r15
mov rcx, rdi
call fcn.140066f00
lea rax, [rdi + rbx]
mov qword [rbp - 0x60], rax
mov qword [rbp + 0x78], r13
mov rdi, qword [rbp + 0x1c0]
cmp rdi, qword [rbp + 0x1c8]
je 0x140041429
mov qword [rsp + 0x68], rdi
mov rax, qword [rsp + 0x78]
mov qword [rdi], rax
mov rdx, qword [rbp - 0x70]
mov qword [rbp - 0x70], r13
mov rcx, qword [rbp - 0x78]
mov qword [rbp - 0x78], r13
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x80], r13
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rcx
mov qword [rdi + 0x18], rdx
mov rdx, qword [rbp - 0x58]
mov qword [rbp - 0x58], r13
mov rcx, qword [rbp - 0x60]
mov qword [rbp - 0x60], r13
mov rax, qword [rbp - 0x68]
mov qword [rbp - 0x68], r13
mov qword [rdi + 0x20], rax
mov qword [rdi + 0x28], rcx
mov qword [rdi + 0x30], rdx
add qword [rbp + 0x1c0], 0x38
jmp 0x14004143e
lea r8, [rsp + 0x78]
mov rdx, rdi
lea rcx, [rbp + 0x1b8]
call fcn.14003dbb0
nop
lea rcx, [rsp + 0x78]
call fcn.140041ff0
nop
mov rcx, qword [rbp + 0x148]
test rcx, rcx
je 0x1400414a7
mov rax, qword [rbp + 0x158]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041490
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041bcc
call fcn.140064d50
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x148], xmm0
mov qword [rbp + 0x158], r13
mov rcx, qword [rbp + 0x160]
test rcx, rcx
je 0x140041505
mov rax, qword [rbp + 0x170]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400414ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041bd2
call fcn.140064d50
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x160], xmm0
mov qword [rbp + 0x170], r13
mov rcx, qword [rbp + 0x120]
mov rdi, qword [rcx + 8]
cmp byte [rdi + 0x19], 0
jne 0x140041554
nop word [rax + rax]
mov r8, qword [rdi + 0x10]
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x120]
call fcn.14003dec0
mov rcx, rdi
mov rdi, qword [rdi]
mov edx, 0x20
call fcn.140064d50
cmp byte [rdi + 0x19], 0
je 0x140041520
mov rcx, qword [rbp + 0x120]
mov edx, 0x20
call fcn.140064d50
nop
mov rcx, qword [rbp + 0x1a0]
test rcx, rcx
je 0x1400415bd
mov rax, qword [rbp + 0x1b0]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400415a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041bd8
call fcn.140064d50
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], r13
add r14, 8
jmp 0x140040dc0
mov eax, dword [rbp + 0x4d0]
test eax, eax
jne 0x1400415d5
call fcn.140045f64
mov dword [rbp + 0x100], eax
mov dword [rbp + 0x1e8], 0x40
mov qword [rbp + 0x208], r13
mov edx, eax
lea rcx, [rbp + 0x2d0]
call fcn.140041c30
nop
mov edx, dword [rbp + 0x100]
lea rcx, [rbp + 0x220]
call fcn.140041c30
nop
mov rcx, qword [rbp + 0x1c0]
sub rcx, qword [rbp + 0x1b8]
movabs rsi, 0x4924924924924925
mov rax, rsi
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rbp + 0x210], rdx
lea rax, [rbp + 0x118]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x208]
mov qword [rbp - 0x38], rax
lea rax, [rbp + 0x210]
mov qword [rbp - 0x30], rax
lea rax, [rbp + 0x1b8]
mov qword [rbp - 0x28], rax
lea rax, [rbp + 0x2d0]
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0x490]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x488]
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x220]
mov qword [rbp - 8], rax
lea rax, [rbp + 0x4c0]
mov qword [rbp], rax
lea rax, [rbp + 0x100]
mov qword [rbp + 8], rax
lea rax, [rbp + 0x1e8]
mov qword [rbp + 0x10], rax
lea rax, [rbp + 0x178]
mov qword [rbp + 0x18], rax
lea rax, [rbp + 0x1d0]
mov qword [rbp + 0x20], rax
lea rax, [rbp + 0x4b0]
mov qword [rbp + 0x28], rax
lea rax, [rbp + 0x4a8]
mov qword [rbp + 0x30], rax
lea rax, [rbp + 0x110]
mov qword [rbp + 0x38], rax
lea rax, [rbp + 0x480]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0x4b8]
mov qword [rbp + 0x48], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1f0], xmm0
mov qword [rbp + 0x200], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1f0], xmm1
mov qword [rbp + 0x200], r13
mov ebx, r13d
cmp dword [rbp + 0x100], r13d
jbe 0x140041866
movaps xmm6, xmmword [rbp + 0x40]
movaps xmm7, xmmword [rbp + 0x30]
movaps xmm8, xmmword [rbp + 0x20]
movaps xmm9, xmmword [rbp + 0x10]
movaps xmm10, xmmword [rbp]
movaps xmm11, xmmword [rbp - 0x10]
movaps xmm12, xmmword [rbp - 0x20]
movaps xmm13, xmmword [rbp - 0x30]
movaps xmm14, xmmword [rbp - 0x40]
mov edi, dword [rsp + 0x54]
nop dword [rax + rax]
mov qword [rbp + 0x50], r13
mov ecx, 0x98
call fcn.140064d14
mov r9, rax
test rax, rax
je 0x1400417c0
mov eax, ebx
shl eax, 6
mov dword [r9], eax
movups xmmword [r9 + 8], xmm14
movups xmmword [r9 + 0x18], xmm13
movups xmmword [r9 + 0x28], xmm12
movups xmmword [r9 + 0x38], xmm11
movups xmmword [r9 + 0x48], xmm10
movups xmmword [r9 + 0x58], xmm9
movups xmmword [r9 + 0x68], xmm8
movups xmmword [r9 + 0x78], xmm7
movups xmmword [r9 + 0x88], xmm6
jmp 0x1400417c3
mov r9, r13
mov qword [rbp + 0x60], r9
mov qword [rbp + 0x60], r13
mov qword [rbp + 0x58], r9
or edi, 1
mov dword [rsp + 0x54], edi
mov qword [rbp + 0x58], r13
mov qword [rbp + 0x50], r9
and edi, 0xfffffffe
mov dword [rsp + 0x54], edi
lea rax, [rbp - 0x48]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r13d
lea r8, [0x14003e130]
xor edx, edx
xor ecx, ecx
call fcn.140075f88
mov qword [rbp - 0x50], rax
test rax, rax
je 0x140041bea
mov qword [rbp + 0x50], r13
mov rdx, qword [rbp + 0x1f8]
cmp rdx, qword [rbp + 0x200]
je 0x14004183d
xorps xmm0, xmm0
movaps xmm1, xmmword [rbp - 0x50]
movdqa xmmword [rbp - 0x50], xmm0
movups xmmword [rdx], xmm1
add qword [rbp + 0x1f8], 0x10
jmp 0x14004184e
lea r8, [rbp - 0x50]
lea rcx, [rbp + 0x1f0]
call fcn.1400364f0
nop
cmp dword [rbp - 0x48], 0
jne 0x140041be4
inc ebx
cmp ebx, dword [rbp + 0x100]
jb 0x140041770
mov rdi, qword [rbp + 0x1f0]
mov rbx, qword [rbp + 0x1f8]
cmp rdi, rbx
je 0x1400418c7
nop dword [rax]
cmp dword [rdi + 8], 0
je 0x140041c0f
call sub.KERNEL32.dll_GetCurrentThreadId
cmp dword [rdi + 8], eax
je 0x140041c04
movups xmm0, xmmword [rdi]
movaps xmmword [rbp + 0xc0], xmm0
xor edx, edx
lea rcx, [rbp + 0xc0]
call fcn.140045f84
test eax, eax
jne 0x140041bf9
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
add rdi, 0x10
cmp rdi, rbx
jne 0x140041880
lea rcx, [rbp + 0x1f0]
call fcn.140036ed0
nop
lea rcx, [rbp + 0x270]
call fcn.140047378
nop
lea rax, [rbp + 0x220]
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x220]
call fcn.140047224
nop
lea rcx, [rbp + 0x320]
call fcn.140047378
nop
lea rax, [rbp + 0x2d0]
mov qword [rbp + 0x60], rax
lea rcx, [rbp + 0x2d0]
call fcn.140047224
nop
mov rcx, qword [rbp + 0x190]
mov rdi, qword [rcx + 8]
cmp byte [rdi + 0x19], 0
jne 0x140041964
nop
mov r8, qword [rdi + 0x10]
lea rdx, [rbp + 0x190]
lea rcx, [rbp + 0x190]
call fcn.14003dec0
mov rcx, rdi
mov rdi, qword [rdi]
mov edx, 0x20
call fcn.140064d50
cmp byte [rdi + 0x19], 0
je 0x140041930
mov rcx, qword [rbp + 0x190]
mov edx, 0x20
call fcn.140064d50
nop
mov rdi, qword [rbp + 0x1b8]
test rdi, rdi
je 0x140041a09
mov rbx, qword [rbp + 0x1c0]
cmp rdi, rbx
je 0x1400419a8
nop dword [rax + rax]
mov rcx, rdi
call fcn.140041ff0
add rdi, 0x38
cmp rdi, rbx
jne 0x140041990
mov rdi, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x1c8]
sub rcx, rdi
mov rax, rsi
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x38
mov rax, rdi
cmp rdx, 0x1000
jb 0x1400419ef
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041bde
mov rcx, rdi
call fcn.140064d50
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1b8], xmm0
mov qword [rbp + 0x1c8], r13
mov rcx, qword [rbp + 0x130]
test rcx, rcx
je 0x140041a67
mov rax, qword [rbp + 0x140]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041a50
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041c1a
call fcn.140064d50
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x130], xmm0
mov qword [rbp + 0x140], r13
mov rcx, qword [rbp + 0x178]
test rcx, rcx
je 0x140041ac5
mov rax, qword [rbp + 0x188]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041aae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041c20
call fcn.140064d50
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x178], xmm0
mov qword [rbp + 0x188], r13
mov rdi, qword [rbp + 0x1d0]
test rdi, rdi
je 0x140041b3d
mov rcx, qword [rbp + 0x1e0]
sub rcx, rdi
movabs rax, 0xe38e38e38e38e39
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*8]
shl rdx, 3
mov rax, rdi
cmp rdx, 0x1000
jb 0x140041b23
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041ba8
mov rcx, rdi
call fcn.140064d50
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], r13
xor eax, eax
jmp 0x140041b46
mov eax, 0xfffffffc
mov rcx, qword [rbp + 0x380]
xor rcx, rsp
call fcn.140065120
lea r11, [rsp + 0x538]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.14006bbcc
nop
call fcn.140026b40
nop
call fcn.140037580
nop
call fcn.140037580
nop
call fcn.140026b00
nop
call fcn.140026b00
nop
call fcn.14006bbcc
nop
call fcn.14006bbcc
nop
call fcn.14006bbcc
nop
call fcn.14006bbcc
nop
call fcn.140075e3c
nop
mov dword [rbp - 0x48], r13d
mov ecx, 6
call fcn.1400461c0
nop
mov ecx, 2
call fcn.1400461c0
int3
mov ecx, 5
call fcn.1400461c0
int3
mov ecx, 1
call fcn.1400461c0
nop
call fcn.14006bbcc
nop
call fcn.14006bbcc
int3