Function at 0x140006450
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xc08]
sub rsp, 0xcd0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x14001b798]
xor rax, rsp
mov qword [rbp + 0xb20], rax
mov edi, r8d
mov ebx, edx
mov r15, rcx
mov qword [rsp + 0x78], rcx
mov qword [rbp - 0x70], rcx
xor edx, edx
call fcn.1400078b0
lea r14, [r15 + 0x40]
xor esi, esi
mov qword [r14], rsi
mov qword [r14 + 8], rsi
mov qword [r14 + 0x10], rsi
mov qword [r15 + 0x58], rsi
mov qword [r15 + 0x60], rsi
mov qword [r15 + 0x68], rsi
lea rcx, [r15 + 0x70]
xor edx, edx
call fcn.1400078b0
lea r13, [r15 + 0xb0]
xor edx, edx
mov rcx, r13
call fcn.1400078b0
mov dword [r15 + 0xf0], esi
mov dword [0x14001bf40], ebx
mov dword [0x14001becc], edi
mov rdx, qword [0x14001bbf0]
lea rcx, [rbp + 0x630]
call fcn.1400078b0
movups xmm0, xmmword [rax]
movups xmmword [r15], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r15 + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r15 + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r15 + 0x30], xmm1
mov rcx, qword [0x14001bf48]
add rcx, 0x2258688
call fcn.140005fd0
mov r12, rax
lea rcx, [rax + 0x2cd0]
call fcn.140006060
mov byte [rsp + 0x24], al
lea rcx, [r12 + 0x1934]
call fcn.140005fd0
movzx ecx, ax
shl rcx, 5
mov rax, qword [0x14001bf48]
add rax, 0x1ea9ae8
add rcx, rax
call fcn.140005fd0
mov rbx, rax
lea rcx, [rax + 0x1778]
call fcn.140005df0
mov edi, eax
lea rcx, [rbx + 0x1580]
call fcn.140005df0
mov dword [rsp + 0x40], eax
lea rcx, [rbx + 0x1ea4]
call fcn.140005e80
lea rcx, [r12 + 0x318]
call fcn.140005df0
mov ebx, eax
lea rcx, [r12 + 0x1a0]
call fcn.140005df0
lea ecx, [rax + rbx]
movabs rdx, 0xff00ff00ff00ff00
test ecx, ecx
jle 0x1400069c3
cmp byte [rsp + 0x24], sil
je 0x14000667d
lea rcx, [r12 + 0x2c88]
call fcn.140005df0
cmp eax, 1
jne 0x140006673
mov dword [rsp + 0x20], 5
mov rcx, qword [0x14001bf48]
add rcx, 0x74dc140
lea rdx, [rsp + 0x20]
call fcn.140006280
mov qword [rbp - 0x80], 0x3e8
lea rcx, [rbp - 0x80]
call fcn.1400060f0
mov dword [rsp + 0x20], 4
mov rcx, qword [0x14001bf48]
add rcx, 0x74dc140
lea rdx, [rsp + 0x20]
call fcn.140006280
movabs rdx, 0xff00ff00ff00ff00
cmp edi, 1
jbe 0x1400066a7
cmp edi, 6
je 0x1400066a7
add edi, 0xffffffac
cmp edi, 0x23
ja 0x140006854
movabs rcx, 0xd3c000ce3
bt rcx, rdi
jae 0x140006854
cmp dword [rsp + 0x40], 1
jne 0x140006854
mov dword [rsp + 0x20], 4
mov rcx, qword [0x14001bf48]
add rcx, 0x74dc028
lea rdi, [rbp + 0xc08]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rdi
mov rbx, qword [rdi]
mov rax, rbx
xor rax, rdx
mov qword [rsp + 0x50], rax
mov qword [rdi], rsi
mov qword [rbp + 0x678], rcx
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov word [rbp + 0x68c], 1
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x20]
mov qword [rbp + 0x670], rax
mov qword [rbp + 0x680], 4
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
mov qword [rdi], rbx
mov ecx, 0x32
call fcn.14040d5a6
nop
mov dword [rsp + 0x20], 5
mov rdx, qword [0x14001bf48]
add rdx, 0x74dc098
movabs rcx, 0xff00ff00ff00ff00
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rdi
mov rbx, qword [rdi]
mov rax, rbx
xor rax, rcx
mov qword [rsp + 0x50], rax
mov qword [rdi], rsi
mov qword [rbp + 0x678], rdx
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov word [rbp + 0x68c], 1
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x20]
mov qword [rbp + 0x670], rax
mov qword [rbp + 0x680], 4
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
mov qword [rdi], rbx
mov ecx, 0x32
call fcn.14040d9d6
nop
mov dword [rsp + 0x20], 4
mov rcx, qword [0x14001bf48]
add rcx, 0x74dc098
movabs rdx, 0xff00ff00ff00ff00
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rdi
mov rbx, qword [rdi]
mov rax, rbx
xor rax, rdx
mov qword [rsp + 0x50], rax
mov qword [rdi], rsi
mov qword [rbp + 0x678], rcx
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov word [rbp + 0x68c], 1
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x20]
mov qword [rbp + 0x670], rax
mov qword [rbp + 0x680], 4
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
mov qword [rdi], rbx
mov ecx, 0x73
call fcn.14040dde4
nop
test ax, ax
je 0x14000686d
mov byte [0x14001e690], 1
jmp 0x14000687a
cmp byte [0x14001e690], 0
je 0x1400069c3
add r12, 0x328
mov rcx, r12
call fcn.140005df0
mov dword [rsp + 0x40], eax
lea r13, [rbp + 0xc08]
mov edi, 0x3a98
mov r14d, edi
movabs r15, 0xff00ff00ff00ff00
nop word [rax + rax]
mov dword [rsp + 0x20], 1
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r13
mov rbx, qword [r13]
mov rax, rbx
xor rax, r15
mov qword [rsp + 0x50], rax
mov qword [r13], rsi
mov qword [rbp + 0x678], r12
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov word [rbp + 0x68c], 1
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x20]
mov qword [rbp + 0x670], rax
mov qword [rbp + 0x680], 4
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
mov qword [r13], rbx
sub r14, 1
jne 0x1400068b0
mov r15, qword [rsp + 0x78]
lea r14, [r15 + 0x40]
lea r13, [r15 + 0xb0]
lea rcx, [rbp + 0xc08]
nop dword [rax]
movabs rdx, 0xff00ff00ff00ff00
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rcx
mov rbx, qword [rcx]
mov rax, rbx
xor rax, rdx
mov qword [rsp + 0x50], rax
mov qword [rcx], rsi
mov qword [rbp + 0x678], r12
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov word [rbp + 0x68c], 1
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x40]
mov qword [rbp + 0x670], rax
mov qword [rbp + 0x680], 4
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
lea rcx, [rbp + 0xc08]
mov qword [rcx], rbx
sub rdi, 1
jne 0x140006940
mov byte [0x14001e690], dil
mov rdx, rsi
mov qword [rbp - 0x80], rdx
mov rax, qword [0x14001bef0]
mov rcx, qword [0x14001bee8]
sub rax, rcx
sar rax, 3
xorps xmm12, xmm12
movss xmm11, dword [0x140015be0]
test rax, rax
je 0x1400072f9
lea rbx, [rbp + 0xc08]
movss xmm15, dword [0x140015c90]
movss xmm13, dword [0x140015c78]
movss xmm14, dword [0x140015c7c]
nop word [rax + rax]
mov r13, qword [rcx + rdx*8]
mov dword [rbp + 0x66c], esi
mov qword [rbp + 0x630], r13
lea rcx, [r13 + 0xde8]
call fcn.140005fd0
mov rdi, rax
lea rcx, [r13 + 0x328]
call fcn.140005df0
mov dword [rbp + 0x648], eax
lea rcx, [r13 + 0x318]
call fcn.140005df0
mov dword [rbp + 0x638], eax
lea rcx, [r13 + 0x1a0]
call fcn.140005df0
mov dword [rbp + 0x640], eax
lea rcx, [r13 + 0x1a4]
call fcn.140005df0
mov dword [rbp + 0x644], eax
lea rcx, [r13 + 0x460]
call fcn.140005df0
mov dword [rbp + 0x63c], eax
lea r12, [r13 + 0x17c]
movabs rcx, 0xff00ff00ff00ff00
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rbx
mov rbx, qword [rbx]
mov rax, rbx
xor rax, rcx
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0xc08]
mov qword [rcx], rsi
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 0xc
mov qword [rbp + 0x678], r12
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rbp + 0x6a8]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
lea rax, [rbp + 0xc08]
mov qword [rax], rbx
movss xmm7, dword [rbp + 0x6a8]
movss dword [rbp + 0x64c], xmm7
movss xmm9, dword [rbp + 0x6ac]
movss dword [rbp + 0x650], xmm9
movss xmm10, dword [rbp + 0x6b0]
movss dword [rbp + 0x654], xmm10
lea rcx, [r13 + 0x26e0]
call fcn.140005df0
test eax, eax
setne byte [rbp + 0x668]
lea rcx, [r13 + 0x680]
call fcn.140005df0
test eax, eax
setne byte [rbp + 0x669]
lea rcx, [rdi + 0x24c]
call fcn.140005e80
addss xmm0, xmm7
movss dword [rbp + 0x658], xmm0
lea rcx, [rdi + 0x25c]
call fcn.140005e80
addss xmm0, xmm9
movss dword [rbp + 0x65c], xmm0
lea rcx, [rdi + 0x26c]
call fcn.140005e80
addss xmm0, xmm10
movss dword [rbp + 0x660], xmm0
mov rcx, qword [0x14001bf48]
add rcx, 0x2258688
movabs rdx, 0xff00ff00ff00ff00
mov qword [rsp + 0x30], rdx
lea r8, [rbp + 0xc08]
mov qword [rsp + 0x38], r8
mov rbx, qword [r8]
mov rax, rbx
xor rax, rdx
mov qword [rsp + 0x28], rax
mov qword [r8], rsi
mov qword [rsp + 0x78], rsi
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 8
mov qword [rbp + 0x678], rcx
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x78]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
mov rdi, qword [rsp + 0x78]
mov qword [rsp + 0x40], rdi
lea rax, [rbp + 0xc08]
mov qword [rax], rbx
lea rcx, [rdi + 0x680]
call fcn.140005df0
test eax, eax
je 0x140006c84
movaps xmm8, xmm15
movabs r12, 0xff00ff00ff00ff00
jmp 0x140006f36
movabs rcx, 0xff00ff00ff00ff00
mov qword [rsp + 0x30], rcx
lea rdx, [rbp + 0xc08]
mov qword [rsp + 0x38], rdx
mov rbx, qword [rdx]
mov rax, rbx
xor rax, rcx
mov qword [rsp + 0x28], rax
mov qword [rdx], rsi
lea rcx, [rbp + 0x6c0]
call fcn.140008050
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 0x22c
mov qword [rbp + 0x678], r12
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rbp + 0x6c0]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
lea r8, [rbp + 0xc08]
mov qword [r8], rbx
lea rcx, [rbp - 0x68]
lea rdx, [rbp + 0x6c0]
mov eax, 4
nop
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rdx + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rdx, [rdx + 0x80]
sub rax, 1
jne 0x140006d20
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
mov rax, qword [rdx + 0x20]
mov qword [rcx + 0x20], rax
mov eax, dword [rdx + 0x28]
mov dword [rcx + 0x28], eax
movabs r12, 0xff00ff00ff00ff00
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], r8
mov rax, rbx
xor rax, r12
mov qword [rsp + 0x28], rax
mov qword [r8], rsi
lea rcx, [rbp + 0x8f0]
call fcn.140008050
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 0x22c
lea rax, [rdi + 0x17c]
mov qword [rbp + 0x678], rax
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rbp + 0x8f0]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
lea rax, [rbp + 0xc08]
mov qword [rax], rbx
lea rcx, [rbp + 0x1d0]
lea rdx, [rbp - 0x68]
mov eax, 4
nop word [rax + rax]
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rdx + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rdx, [rdx + 0x80]
sub rax, 1
jne 0x140006e30
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
mov rax, qword [rdx + 0x20]
mov qword [rcx + 0x20], rax
mov eax, dword [rdx + 0x28]
mov dword [rcx + 0x28], eax
lea rcx, [rbp + 0x400]
lea rdx, [rbp + 0x8f0]
mov eax, 4
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rdx + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rdx, [rdx + 0x80]
sub rax, 1
jne 0x140006eb1
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
mov rax, qword [rdx + 0x20]
mov qword [rcx + 0x20], rax
mov eax, dword [rdx + 0x28]
mov dword [rcx + 0x28], eax
lea rdx, [rbp + 0x1d0]
lea rcx, [rbp + 0x400]
call fcn.140008e60
movaps xmm8, xmm0
lea rcx, [r13 + 0x26c0]
mov qword [rsp + 0x30], r12
lea rbx, [rbp + 0xc08]
mov qword [rsp + 0x38], rbx
mov rdi, qword [rbx]
mov rax, rdi
xor rax, r12
mov qword [rsp + 0x28], rax
mov qword [rbx], rsi
mov dword [rbp - 0x78], esi
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 4
mov qword [rbp + 0x678], rcx
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rbp - 0x78]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], rbx
mov rax, rdi
xor rax, r12
mov qword [rsp + 0x28], rax
mov qword [rbx], rsi
mov dword [rsp + 0x70], esi
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 4
lea rax, [r13 + 0x318]
mov qword [rbp + 0x678], rax
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x70]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
mov ebx, dword [rsp + 0x70]
mov qword [rsp + 0x30], r12
lea rcx, [rbp + 0xc08]
mov qword [rsp + 0x38], rcx
mov rax, rdi
xor rax, r12
mov qword [rsp + 0x28], rax
mov qword [rcx], rsi
mov dword [rsp + 0x74], esi
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 4
lea rax, [r13 + 0x1a0]
mov qword [rbp + 0x678], rax
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x74]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
add ebx, dword [rsp + 0x74]
mov qword [rsp + 0x30], r12
lea rcx, [rbp + 0xc08]
mov qword [rsp + 0x38], rcx
mov rax, rdi
xor rax, r12
mov qword [rsp + 0x28], rax
mov qword [rcx], rsi
mov dword [rsp + 0x20], esi
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 4
mov rax, qword [rsp + 0x40]
add rax, 0x328
mov qword [rbp + 0x678], rax
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x20]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
nop
mov qword [rsp + 0x30], r12
lea rcx, [rbp + 0xc08]
mov qword [rsp + 0x38], rcx
mov rax, rdi
xor rax, r12
mov qword [rsp + 0x28], rax
mov qword [rcx], rsi
mov dword [rsp + 0x40], esi
mov eax, dword [0x14001e678]
mov dword [rbp + 0x688], eax
mov qword [rbp + 0x680], 4
lea rax, [r13 + 0x328]
mov qword [rbp + 0x678], rax
mov word [rbp + 0x68c], 0x100
mov byte [rbp + 0x68e], 0
lea rax, [rsp + 0x40]
mov qword [rbp + 0x690], rax
lea rcx, [rbp + 0x670]
call fcn.140004450
mov eax, dword [rsp + 0x40]
lea rcx, [rbp + 0xc08]
mov qword [rcx], rdi
cmp eax, dword [rsp + 0x20]
je 0x1400071dc
mov rcx, qword [0x14001bf48]
add rcx, 0x17c4c48
call fcn.140005e80
movaps xmm6, xmm0
lea rcx, [r13 + 0x1990]
call fcn.140005e80
subss xmm6, xmm0
movss xmm0, dword [0x140015bec]
comiss xmm0, xmm6
jbe 0x1400071ca
comiss xmm13, xmm8
jbe 0x1400071dc
test ebx, ebx
jle 0x1400071dc
mov rcx, r13
call fcn.140011680
jmp 0x1400071dc
comiss xmm14, xmm8
jbe 0x1400071dc
test ebx, ebx
jle 0x1400071dc
mov rcx, r13
call fcn.140011910
ucomiss xmm7, xmm12
jp 0x1400071e8
je 0x1400072c2
cmp dword [rbp + 0x648], 0
je 0x1400072c2
cmp dword [rbp + 0x638], 0
jle 0x1400072c2
test r13, r13
je 0x1400072c2
cmp r13, qword [r15]
je 0x1400072c2
movsd xmm1, qword [r15 + 0x1c]
mov eax, dword [r15 + 0x24]
mov dword [rsp + 0x58], eax
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
subss xmm9, xmm0
subss xmm7, xmm1
subss xmm10, dword [rsp + 0x58]
mulss xmm7, xmm7
mulss xmm9, xmm9
addss xmm7, xmm9
mulss xmm10, xmm10
addss xmm7, xmm10
xorps xmm0, xmm0
ucomiss xmm0, xmm7
ja 0x140007262
xorps xmm0, xmm0
sqrtss xmm0, xmm7
jmp 0x14000726a
movaps xmm0, xmm7
call fcn.140013cd0
mulss xmm0, xmm11
movss dword [rbp + 0x664], xmm0
mov rdx, qword [r14 + 8]
cmp rdx, qword [r14 + 0x10]
je 0x1400072b3
movaps xmm0, xmmword [rbp + 0x630]
movups xmmword [rdx], xmm0
movaps xmm1, xmmword [rbp + 0x640]
movups xmmword [rdx + 0x10], xmm1
movaps xmm0, xmmword [rbp + 0x650]
movups xmmword [rdx + 0x20], xmm0
movaps xmm1, xmmword [rbp + 0x660]
movups xmmword [rdx + 0x30], xmm1
add qword [r14 + 8], 0x40
jmp 0x1400072c2
lea r8, [rbp + 0x630]
mov rcx, r14
call fcn.140004cd0
mov rdx, qword [rbp - 0x80]
inc rdx
mov qword [rbp - 0x80], rdx
mov rax, qword [0x14001bef0]
mov rcx, qword [0x14001bee8]
sub rax, rcx
sar rax, 3
cmp rdx, rax
lea rbx, [rbp + 0xc08]
jb 0x140006a20
lea r13, [r15 + 0xb0]
mov r12, rsi
mov rax, qword [0x14001bed8]
mov rcx, qword [0x14001bed0]
sub rax, rcx
sar rax, 3
test rax, rax
je 0x140007522
lea rdx, [rbp + 0xc08]
movabs r14, 0xff00ff00ff00ff00
nop dword [rax + rax]
mov rdi, qword [rcx + r12*8]
mov dword [rbp + 0x690], esi
mov qword [rbp + 0x670], rdi
lea rcx, [rdi + 0x17c]
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], rdx
mov rbx, qword [rdx]
mov rax, rbx
xor rax, r14
mov qword [rsp + 0x28], rax
mov qword [rdx], rsi
mov eax, dword [0x14001e678]
mov dword [rbp + 0x648], eax
mov qword [rbp + 0x640], 0xc
mov qword [rbp + 0x638], rcx
mov word [rbp + 0x64c], 0x100
mov byte [rbp + 0x64e], 0
lea rax, [rbp + 0x6a8]
mov qword [rbp + 0x650], rax
lea rcx, [rbp + 0x630]
call fcn.140004450
nop
lea rax, [rbp + 0xc08]
mov qword [rax], rbx
movss xmm7, dword [rbp + 0x6a8]
movss dword [rbp + 0x678], xmm7
movss xmm6, dword [rbp + 0x6ac]
movss dword [rbp + 0x67c], xmm6
movss xmm8, dword [rbp + 0x6b0]
movss dword [rbp + 0x680], xmm8
lea rcx, [rdi + 0x318]
call fcn.140005df0
mov ebx, eax
mov dword [rbp + 0x694], eax
lea rcx, [rdi + 0x26e0]
call fcn.140005df0
test eax, eax
setne byte [rbp + 0x68d]
lea rcx, [rdi + 0x680]
call fcn.140005df0
test eax, eax
setne byte [rbp + 0x68c]
ucomiss xmm7, xmm12
jp 0x140007432
je 0x1400074ef
test ebx, ebx
jle 0x1400074ef
test rdi, rdi
je 0x1400074ef
cmp rdi, qword [r15]
je 0x1400074ef
movsd xmm1, qword [r15 + 0x1c]
mov eax, dword [r15 + 0x24]
mov dword [rsp + 0x58], eax
subss xmm7, xmm1
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
subss xmm6, xmm0
subss xmm8, dword [rsp + 0x58]
mulss xmm6, xmm6
mulss xmm7, xmm7
addss xmm6, xmm7
mulss xmm8, xmm8
addss xmm6, xmm8
xorps xmm0, xmm0
ucomiss xmm0, xmm6
ja 0x140007497
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x14000749f
movaps xmm0, xmm6
call fcn.140013cd0
mulss xmm0, xmm11
movss dword [rbp + 0x688], xmm0
mov rdx, qword [r15 + 0x60]
cmp rdx, qword [r15 + 0x68]
je 0x1400074df
movups xmm0, xmmword [rbp + 0x670]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rbp + 0x680]
movups xmmword [rdx + 0x10], xmm1
movsd xmm0, qword [rbp + 0x690]
movsd qword [rdx + 0x20], xmm0
add qword [r15 + 0x60], 0x28
jmp 0x1400074ef
lea r8, [rbp + 0x670]
lea rcx, [r15 + 0x58]
call fcn.140004a20
inc r12
mov rax, qword [0x14001bed8]
mov rcx, qword [0x14001bed0]
sub rax, rcx
sar rax, 3
cmp r12, rax
lea rdx, [rbp + 0xc08]
jb 0x140007330
lea r14, [r15 + 0x40]
lea r13, [r15 + 0xb0]
movss xmm9, dword [0x140015c8c]
movaps xmm10, xmm9
mov r12, rsi
mov r8, qword [r14 + 8]
mov rbx, qword [r14]
mov rax, r8
sub rax, rbx
sar rax, 6
test rax, rax
je 0x140007792
mov rdi, rsi
mov r9d, dword [0x14001becc]
movss xmm13, dword [0x140015bf8]
movss xmm15, dword [0x140015f84]
movsd xmm11, qword [0x140015c00]
movsd xmm14, qword [0x140015c10]
movss xmm12, dword [0x140015c50]
mov r8d, dword [0x14001bf40]
cmp byte [r15 + 0x38], 0
jne 0x140007774
movss xmm2, dword [rdi + rbx + 0x20]
movss xmm5, dword [rdi + rbx + 0x1c]
movss xmm3, dword [rdi + rbx + 0x24]
movaps xmm6, xmm5
mulss xmm6, dword [0x14001bf00]
movaps xmm0, xmm2
mulss xmm0, dword [0x14001bf04]
addss xmm6, xmm0
movaps xmm1, xmm3
mulss xmm1, dword [0x14001bf08]
addss xmm6, xmm1
addss xmm6, dword [0x14001bf0c]
movaps xmm7, xmm5
mulss xmm7, dword [0x14001bf10]
movaps xmm0, xmm2
mulss xmm0, dword [0x14001bf14]
addss xmm7, xmm0
movaps xmm1, xmm3
mulss xmm1, dword [0x14001bf18]
addss xmm7, xmm1
addss xmm7, dword [0x14001bf1c]
mulss xmm5, dword [0x14001bf30]
mulss xmm2, dword [0x14001bf34]
addss xmm5, xmm2
mulss xmm3, dword [0x14001bf38]
addss xmm5, xmm3
addss xmm5, dword [0x14001bf3c]
comiss xmm13, xmm5
ja 0x140007774
movaps xmm4, xmm15
divss xmm4, xmm5
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mulss xmm6, xmm4
cvtps2pd xmm2, xmm6
mulsd xmm2, xmm11
xorps xmm0, xmm0
cvtsi2sd xmm0, r8d
mulsd xmm2, xmm0
addsd xmm2, xmm11
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
cvtps2pd xmm1, xmm0
addsd xmm2, xmm1
cvtpd2ps xmm3, xmm2
mov eax, r9d
cdq
sub eax, edx
sar eax, 1
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
cvtps2pd xmm2, xmm0
mulss xmm7, xmm4
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm11
xorps xmm0, xmm0
cvtsi2sd xmm0, r9d
mulsd xmm1, xmm0
addsd xmm1, xmm11
subsd xmm2, xmm1
cvtpd2ps xmm1, xmm2
xorps xmm8, xmm8
cvtsi2sd xmm8, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, ecx
cvtps2pd xmm7, xmm1
cvtps2pd xmm1, xmm3
subsd xmm0, xmm1
movaps xmm1, xmm14
call fcn.140013cbe
movaps xmm6, xmm0
subsd xmm8, xmm7
movaps xmm1, xmm14
movaps xmm0, xmm8
call fcn.140013cbe
movaps xmm1, xmm0
addsd xmm1, xmm6
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x140007704
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x14000770c
movaps xmm0, xmm1
call fcn.140013cca
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
comiss xmm10, xmm2
jbe 0x14000776d
mov eax, dword [r15 + 0x18]
cmp dword [rdi + rbx + 0x18], eax
je 0x14000776d
comiss xmm12, dword [rdi + rbx + 0x34]
jbe 0x14000776d
cmp dword [rdi + rbx + 8], 0
jle 0x14000776d
cmp byte [rdi + rbx + 0x38], 0
je 0x140007742
cmp byte [0x14001b8cd], 0
je 0x140007769
movups xmm0, xmmword [rdi + rbx]
movups xmmword [r13], xmm0
movups xmm1, xmmword [rdi + rbx + 0x10]
movups xmmword [r13 + 0x10], xmm1
movups xmm0, xmmword [rdi + rbx + 0x20]
movups xmmword [r13 + 0x20], xmm0
movups xmm1, xmmword [rdi + rbx + 0x30]
movups xmmword [r13 + 0x30], xmm1
movaps xmm10, xmm2
mov r9d, dword [0x14001becc]
inc r12
add rdi, 0x40
mov r8, qword [r14 + 8]
mov rax, r8
sub rax, rbx
sar rax, 6
cmp r12, rax
jb 0x140007583
mov r9d, esi
mov rax, r8
sub rax, rbx
sar rax, 6
test rax, rax
je 0x14000780f
mov rdx, rsi
comiss xmm9, dword [rdx + rbx + 0x34]
jbe 0x1400077f0
mov eax, dword [r15 + 0x18]
cmp dword [rdx + rbx + 0x18], eax
je 0x1400077f0
movups xmm0, xmmword [rdx + rbx]
movups xmmword [r15 + 0x70], xmm0
movups xmm1, xmmword [rdx + rbx + 0x10]
movups xmmword [r15 + 0x80], xmm1
movups xmm0, xmmword [rdx + rbx + 0x20]
movups xmmword [r15 + 0x90], xmm0
movups xmm1, xmmword [rdx + rbx + 0x30]
movups xmmword [r15 + 0xa0], xmm1
movss xmm9, dword [rdx + rbx + 0x34]
inc r9d
add rdx, 0x40
mov r8, qword [r14 + 8]
mov rcx, r8
sub rcx, rbx
sar rcx, 6
movsxd rax, r9d
cmp rax, rcx
jb 0x1400077a7
xor esi, esi
sub r8, rbx
sar r8, 6
test r8, r8
je 0x14000784a
nop dword [rax + rax]
mov r8, qword [r14]
mov rcx, qword [r14 + 8]
sub rcx, r8
sar rcx, 6
mov dword [r15 + 0xf0], ecx
inc esi
mov rdx, qword [r14 + 8]
sub rdx, r8
sar rdx, 6
movsxd rcx, esi
cmp rcx, rdx
jb 0x140007820
mov rax, r15
mov rcx, qword [rbp + 0xb20]
xor rcx, rsp
call fcn.140012d90
lea r11, [rsp + 0xcd0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret