Function at 0x180027e00
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x388]
sub rsp, 0x460
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x18011f040]
xor rax, rsp
mov qword [rbp + 0x2b8], rax
xor r15d, r15d
xor sil, sil
mov byte [rsp + 0x40], sil
call fcn.18002f8a0
mov rdi, rax
mov rcx, rax
call fcn.180058ef0
test al, al
je 0x180027ea8
mov rbx, qword [0x18011fd48]
cmp rbx, 0xffffffffffffffff
je 0x180027ea8
mov rbx, qword [rdi + rbx]
jmp 0x180027eab
mov rbx, r15
mov rcx, rbx
call fcn.180058ef0
test al, al
je 0x180027eca
mov rax, qword [0x18011fbe8]
cmp rax, 0xffffffffffffffff
je 0x180027eca
cmp qword [rbx + rax], r15
jne 0x180027ed1
mov byte [0x18021d25c], 0x7f
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1c0], xmm1
mov qword [rbp + 0x1d0], r15
mov rcx, qword [0x18021d220]
sub rcx, qword [0x18021d218]
movabs rax, 0x7878787878787879
imul rcx
sar rdx, 6
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x180027fb8
movabs rax, 0x1e1e1e1e1e1e1e1
cmp rdx, rax
ja 0x180029e7e
lea rcx, [rbp + 0x1c0]
call fcn.1800270f0
lea rax, [rbp + 0x1c0]
mov qword [rsp + 0x78], rax
mov r14, qword [0x18021d220]
mov rsi, qword [0x18021d218]
xorps xmm0, xmm0
movups xmmword [rbp + 0x2a0], xmm0
mov rbx, qword [rbp + 0x1c0]
mov qword [rbp + 0x2a0], rbx
mov rdi, rbx
mov qword [rbp + 0x2a8], rbx
lea rax, [rbp + 0x1c0]
mov qword [rbp + 0x2b0], rax
cmp rsi, r14
je 0x180027fac
mov rdx, rsi
mov rcx, rdi
call fcn.180027a40
add rdi, 0x88
mov qword [rbp + 0x2a8], rdi
add rsi, 0x88
cmp rsi, r14
jne 0x180027f80
mov rbx, qword [rbp + 0x1c0]
mov qword [rbp + 0x1c8], rdi
xor sil, sil
jmp 0x180027fc6
mov rdi, qword [rbp + 0x1c8]
mov rbx, qword [rbp + 0x1c0]
cmp rbx, rdi
je 0x180029d87
mov r13d, dword [0x18011f090]
xorps xmm15, xmm15
movss xmm10, dword [0x18010aa38]
movss xmm13, dword [0x18010aaec]
movss xmm12, dword [0x18010aab8]
movsd xmm11, qword [0x18010aa40]
movss xmm9, dword [0x18010aafc]
mov r12, qword [rbx]
mov rcx, r12
call fcn.180058ef0
test al, al
je 0x180029d73
mov rcx, r12
call fcn.180058ef0
test al, al
je 0x180028037
mov rax, qword [0x18011fb70]
cmp rax, 0xffffffffffffffff
je 0x180028037
mov r15, qword [rax + r12]
mov rcx, r15
call fcn.180058ef0
test al, al
je 0x180028074
call fcn.180031110
mov rsi, rax
mov rdi, qword [r15 + 0x10]
test rdi, rdi
je 0x180028074
cmp rdi, rsi
je 0x180028077
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x180028074
mov eax, dword [0x18021e718]
mov rdi, qword [rax + rdi]
test rdi, rdi
jne 0x180028054
xor r15d, r15d
mov rcx, r12
call fcn.180058ef0
test al, al
je 0x180028096
mov rcx, qword [0x18011fd10]
cmp rcx, 0xffffffffffffffff
je 0x180028096
mov rcx, qword [rcx + r12]
jmp 0x180028098
xor ecx, ecx
mov qword [rbx + 8], rcx
call fcn.180058ef0
test al, al
je 0x180029d6b
call fcn.18002f8a0
mov rsi, rax
mov rcx, rax
call fcn.180058ef0
test al, al
je 0x1800280d0
mov rdi, qword [0x18011fd48]
cmp rdi, 0xffffffffffffffff
je 0x1800280d0
mov rdi, qword [rsi + rdi]
jmp 0x1800280d2
xor edi, edi
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x1800280f1
mov rax, qword [0x18011fbe8]
cmp rax, 0xffffffffffffffff
je 0x1800280f1
mov rax, qword [rdi + rax]
jmp 0x1800280f3
xor eax, eax
cmp r12, rax
jne 0x18002827b
mov r8b, 1
lea rdx, [rbp + 0x138]
mov rcx, qword [rbx + 8]
call fcn.18002eef0
movsd xmm0, qword [rax]
movsd qword [0x18021d250], xmm0
mov eax, dword [rax + 8]
mov dword [0x18021d258], eax
movzx eax, byte [rbx + 0x1c]
mov byte [0x18021d25c], al
mov rcx, r12
call fcn.180058ef0
test al, al
je 0x180028170
call fcn.1800316b0
mov rsi, rax
mov rdi, qword [r12 + 0x10]
test rdi, rdi
je 0x180028170
nop dword [rax]
cmp rdi, rsi
je 0x18002819e
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x180028170
mov eax, dword [0x18021e718]
mov rdi, qword [rax + rdi]
test rdi, rdi
jne 0x180028150
xor r15d, r15d
mov ecx, r15d
call fcn.180073180
mov rcx, r12
call fcn.180058ef0
test al, al
je 0x1800281a6
cmp qword [0x18011fb70], 0xffffffffffffffff
je 0x1800281a6
mov rax, qword [0x18011fb68]
mov rcx, qword [rax + r12]
jmp 0x1800281a9
mov rcx, r12
xor r15d, r15d
jmp 0x180028176
mov rcx, r15
call fcn.180073da0
call fcn.18002f8a0
mov rdi, rax
mov rcx, rax
call fcn.180058ef0
test al, al
je 0x1800281d5
mov rcx, qword [0x18011fd48]
cmp rcx, 0xffffffffffffffff
je 0x1800281d5
mov r14, qword [rcx + rdi]
jmp 0x1800281d8
mov r14, r15
mov rcx, r14
call fcn.180058ef0
test al, al
je 0x180028215
call fcn.1800319f0
mov rsi, rax
mov rdi, qword [r14 + 0x10]
test rdi, rdi
je 0x180028215
cmp rdi, rsi
je 0x180028218
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x180028215
mov eax, dword [0x18021e718]
mov rdi, qword [rax + rdi]
test rdi, rdi
jne 0x1800281f5
mov r14, r15
mov rcx, r12
call fcn.180058ef0
test al, al
je 0x180028256
call fcn.1800316b0
mov rsi, rax
mov rdi, qword [r12 + 0x10]
test rdi, rdi
je 0x180028256
cmp rdi, rsi
je 0x180028276
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x180028256
mov eax, dword [0x18021e718]
mov rdi, qword [rax + rdi]
test rdi, rdi
jne 0x180028236
mov rcx, r15
mov rdx, r14
call fcn.180014120
mov rcx, qword [0x18021e6f0]
mov rax, qword [rcx]
mov rdx, r12
call qword [rax + 0x10]
jmp 0x180029d6e
mov rcx, r12
jmp 0x180028259
movzx eax, byte [0x18021d25c]
cmp dword [rbx + 0x1c], eax
je 0x180029d6b
mov rdi, qword [rbx]
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x1800282d5
mov rcx, qword [0x18011fd18]
mov rax, qword [0x18011fce8]
cmp rcx, 0xffffffffffffffff
jne 0x1800282bb
cmp rax, rcx
je 0x1800282d5
test byte [rdi + rcx], al
setne al
jmp 0x1800282cd
cmp rax, 0xffffffffffffffff
je 0x1800282c9
test byte [rdi + rcx], al
setne al
jmp 0x1800282cd
movzx eax, byte [rdi + rcx]
test al, al
jne 0x180029d6b
call fcn.18002f8a0
mov rsi, rax
mov rcx, rax
call fcn.180058ef0
test al, al
je 0x1800282fc
mov rdi, qword [0x18011fd48]
cmp rdi, 0xffffffffffffffff
je 0x1800282fc
mov rdi, qword [rsi + rdi]
jmp 0x1800282fe
xor edi, edi
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x18002831d
mov rsi, qword [0x18011fbe8]
cmp rsi, 0xffffffffffffffff
je 0x18002831d
mov rsi, qword [rdi + rsi]
jmp 0x18002831f
xor esi, esi
mov rcx, rsi
call fcn.180058ef0
test al, al
je 0x18002833e
mov rax, qword [0x18011fb70]
cmp rax, 0xffffffffffffffff
je 0x18002833e
mov rsi, qword [rsi + rax]
jmp 0x180028340
xor esi, esi
mov rcx, rsi
call fcn.180058ef0
test al, al
je 0x180028380
call fcn.180031360
mov r14, rax
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x180028380
nop dword [rax]
cmp rdi, r14
je 0x180028382
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x180028380
mov eax, dword [0x18021e718]
mov rdi, qword [rax + rdi]
test rdi, rdi
jne 0x180028360
xor esi, esi
mov rcx, rsi
call fcn.180058ef0
test al, al
je 0x1800283a1
mov rax, qword [0x18011fd08]
cmp rax, 0xffffffffffffffff
je 0x1800283a1
mov r14, qword [rsi + rax]
jmp 0x1800283a4
xor r14d, r14d
mov rcx, r15
call fcn.180058ef0
test al, al
je 0x1800283e5
call fcn.180031360
mov rsi, rax
mov rdi, qword [r15 + 0x10]
test rdi, rdi
je 0x1800283e5
cmp rdi, rsi
je 0x180028553
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x1800283e5
mov eax, dword [0x18021e718]
mov rdi, qword [rax + rdi]
test rdi, rdi
jne 0x1800283c1
xor eax, eax
cmp r14, rax
jne 0x180028408
mov rcx, r14
call fcn.180058ef0
test al, al
je 0x180028408
mov rcx, r15
call fcn.180058ef0
test al, al
jne 0x180029d6b
mov rcx, qword [0x18021e6f0]
mov rax, qword [rcx]
mov rdx, r12
call qword [rax + 0x10]
cmp byte [0x18021e82a], 0
je 0x18002855b
mov dword [rbp - 0x80], 0
movss xmm0, dword [0x18021d338]
movss dword [rbp - 0x7c], xmm0
movss xmm1, dword [0x18021d33c]
movss dword [rbp - 0x78], xmm1
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x70]
call fcn.18002e730
movss xmm8, dword [rbp - 0x68]
mulss xmm8, xmm9
movss xmm7, dword [rbp - 0x6c]
mulss xmm7, xmm9
movss xmm6, dword [rbp - 0x70]
mulss xmm6, xmm9
addss xmm8, dword [0x18021d330]
addss xmm7, dword [0x18021d32c]
addss xmm6, dword [0x18021d328]
mov rcx, r12
call fcn.180058ef0
xor r15d, r15d
test al, al
je 0x18002855e
xor eax, eax
mov word [rbp + 0x15d], ax
mov byte [rbp + 0x15f], al
mov dword [rbp + 0x168], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movsd qword [rbp + 0x150], xmm0
movss dword [rbp + 0x158], xmm8
mov byte [rbp + 0x15c], al
mov qword [rbp + 0x160], r15
mov byte [rbp + 0x168], 1
mov rdi, qword [0x18021e978]
mov rcx, r12
call fcn.180058ef0
test al, al
je 0x18002855e
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x18002855e
lea rcx, [rbp + 0x150]
call fcn.180058ef0
test al, al
je 0x18002855e
mov rcx, qword [r12]
call fcn.180058ef0
test al, al
je 0x18002855e
mov rax, qword [r12]
mov rcx, qword [0x18021eb28]
mov rcx, qword [rax + rcx*8]
call fcn.180058ef0
test al, al
je 0x18002855e
mov rcx, qword [r12]
mov rax, qword [0x18021eb28]
mov r9, qword [rcx + rax*8]
lea r8, [rbp + 0x150]
mov rdx, rdi
mov rcx, r12
call r9
jmp 0x18002855e
mov rax, r15
jmp 0x1800283e7
xor r15d, r15d
mov rcx, rbx
call fcn.18001aa40
mov byte [rbx + 0x36], al
mov rcx, rbx
call fcn.18001ac70
mov byte [rbx + 0x35], 0
mov r9d, r15d
mov r8, qword [rbx + 0x50]
mov rax, qword [rbx + 0x58]
sub rax, r8
sar rax, 3
test rax, rax
je 0x18002861d
mov rdx, r15
mov r10d, dword [0x18021e868]
mov r11d, dword [0x18021e86c]
movss xmm1, dword [rdx + r8]
ucomiss xmm1, xmm15
jp 0x1800285be
jne 0x1800285be
movss xmm0, dword [rdx + r8 + 4]
ucomiss xmm0, xmm15
jp 0x1800285be
je 0x180028603
comiss xmm1, xmm15
jb 0x1800285d5
movd xmm0, r10d
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jb 0x1800285d5
mov cl, 1
jmp 0x1800285d7
xor cl, cl
movss xmm1, dword [rdx + r8 + 4]
comiss xmm1, xmm15
jb 0x1800285f5
movd xmm0, r11d
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jb 0x1800285f5
mov al, 1
jmp 0x1800285f7
xor al, al
test cl, cl
je 0x180028603
test al, al
je 0x180028603
mov byte [rbx + 0x35], 1
inc r9d
add rdx, 8
mov rcx, qword [rbx + 0x58]
sub rcx, r8
sar rcx, 3
movsxd rax, r9d
cmp rax, rcx
jb 0x1800285a1
mov rax, qword [rbx + 0x38]
movsd xmm0, qword [rax + 0x24]
movaps xmm7, xmm0
subss xmm7, dword [0x18021d250]
movaps xmm1, xmm0
shufps xmm1, xmm1, 0x55
movsd qword [rbp + 0x150], xmm0
subss xmm1, dword [0x18021d254]
movss xmm6, dword [rax + 0x2c]
subss xmm6, dword [0x18021d258]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
movaps xmm1, xmm11
call fcn.1800e6330
movaps xmm8, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
movaps xmm1, xmm11
call fcn.1800e6330
addsd xmm8, xmm0
cvtps2pd xmm0, xmm6
movaps xmm1, xmm11
call fcn.1800e6330
addsd xmm8, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm8
ja 0x1800286a3
xorps xmm0, xmm0
sqrtsd xmm0, xmm8
jmp 0x1800286ac
movaps xmm0, xmm8
call fcn.1800e7d50
cvtsd2ss xmm0, xmm0
divss xmm0, dword [0x18010aadc]
movss dword [rbx + 0x30], xmm0
comiss xmm0, dword [0x18010ab10]
ja 0x180029d6e
mov byte [rbx + 0x34], 0
mov r8d, r15d
mov r9, qword [rbx + 0x80]
test r9, r9
je 0x180028718
mov rcx, r15
mov r10, qword [rbx + 0x68]
nop dword [rax]
nop dword [rax + rax]
mov rdx, rcx
shr rdx, 5
and ecx, 0x1f
mov eax, 1
shl eax, cl
test dword [r10 + rdx*4], eax
jne 0x180028714
inc r8d
movsxd rcx, r8d
cmp rcx, r9
jb 0x1800286f0
jmp 0x180028718
mov byte [rbx + 0x34], 1
mov rcx, r12
call fcn.180058ef0
test al, al
je 0x18002873b
cmp qword [0x18011fb70], 0xffffffffffffffff
je 0x18002873b
mov rax, qword [0x18011fb68]
mov r14, qword [rax + r12]
jmp 0x18002873e
mov r14, r15
cmp r14, qword [rbx + 0x10]
je 0x1800287dd
mov qword [rbx + 0x10], r14
mov rcx, r14
call fcn.180058ef0
test al, al
jne 0x18002875d
mov eax, r15d
jmp 0x1800287da
mov dword [rbp + 0x178], r15d
mov rdi, qword [0x18021ea30]
mov rcx, r14
call fcn.180058ef0
test al, al
je 0x1800287d4
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x1800287d4
lea rcx, [rbp + 0x178]
call fcn.180058ef0
test al, al
je 0x1800287d4
mov rcx, qword [r14]
call fcn.180058ef0
test al, al
je 0x1800287d4
mov rax, qword [r14]
mov rcx, qword [0x18021eb28]
mov rcx, qword [rax + rcx*8]
call fcn.180058ef0
test al, al
je 0x1800287d4
mov rcx, qword [r14]
mov rax, qword [0x18021eb28]
mov r9, qword [rcx + rax*8]
lea r8, [rbp + 0x178]
mov rdx, rdi
mov rcx, r14
call r9
mov eax, dword [rbp + 0x178]
mov dword [rbx + 0x18], eax
cmp byte [rbx + 0x35], 0
je 0x18002968d
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x70], 0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x58]
mov rcx, rbx
call fcn.18001b350
mov dword [rbp + 0x180], 0x41a00000
mov dword [rbp + 0x170], 0x41400000
movss xmm2, dword [rbx + 0x30]
movaps xmm0, xmm2
minss xmm0, xmm13
divss xmm0, xmm13
mulss xmm0, dword [0x18010aa94]
movaps xmm1, xmm12
subss xmm1, xmm0
movss dword [rbp + 0x1a0], xmm1
lea rcx, [rbp + 0x170]
lea rax, [rbp + 0x1a0]
movss xmm0, dword [0x18010aaa0]
comiss xmm0, xmm1
cmovbe rcx, rax
lea rax, [rbp + 0x180]
comiss xmm1, xmm12
cmovbe rax, rcx
movss xmm14, dword [rax]
movss dword [rbp + 0x150], xmm14
mov dword [rbp + 0x170], 0x40400000
mov dword [rbp + 0x180], 0x3f800000
minss xmm2, dword [0x18010aad8]
divss xmm2, dword [0x18010aad8]
movaps xmm0, xmm2
addss xmm0, xmm2
movss xmm3, dword [0x18010aa5c]
movaps xmm1, xmm3
subss xmm1, xmm0
movss dword [rbp + 0x1a0], xmm1
lea rcx, [rbp + 0x180]
lea rax, [rbp + 0x1a0]
movss xmm8, dword [0x18010aa00]
comiss xmm8, xmm1
cmovbe rcx, rax
lea rax, [rbp + 0x170]
comiss xmm1, xmm3
cmovbe rax, rcx
movss xmm11, dword [rax]
mov dword [rbp + 0x170], 0x40000000
mov dword [rbp + 0x180], 0x3f800000
movaps xmm0, xmm10
subss xmm0, xmm2
movss dword [rbp + 0x1a0], xmm0
lea rcx, [rbp + 0x180]
lea rax, [rbp + 0x1a0]
comiss xmm8, xmm0
cmovbe rcx, rax
lea rax, [rbp + 0x170]
comiss xmm0, xmm10
cmovbe rax, rcx
movss xmm7, dword [rax]
movdqa xmm12, xmmword [0x18010b0b0]
cmp byte [rbx + 0x34], 0
je 0x180028966
movdqa xmm12, xmmword [0x18010af60]
movdqa xmm6, xmmword [0x18010b0a0]
jmp 0x18002896e
movdqa xmm6, xmmword [0x18010af60]
cmp byte [rbx + 0x35], 0
je 0x180029951
cmp byte [0x18011fc9e], 0
je 0x180029951
cmp byte [0x18011fcc8], 0
je 0x180028b19
mov rsi, qword [0x18021ec68]
mov rdi, qword [0x18021ec60]
cmp rdi, rsi
je 0x180028b19
movdqa xmm14, xmmword [0x18010af60]
movdqa xmm8, xmmword [0x18010b0a0]
mov r13d, 1
movzx eax, byte [rdi]
mov dword [rsp + 0x78], eax
movzx eax, byte [rdi + 1]
mov dword [rsp + 0x7c], eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
xor r10b, r10b
movd xmm1, dword [0x18021e868]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm15
setae al
movd xmm0, dword [0x18021e86c]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm15
setae cl
test al, al
je 0x180028a09
test cl, cl
jne 0x180028a27
comiss xmm1, xmm15
setae al
comiss xmm0, xmm15
setae cl
test al, al
je 0x180028af3
test cl, cl
je 0x180028af3
mov r9, r15
lea r11, [rbp + 0x180]
movsxd rcx, dword [rsp + r9*4 + 0x78]
lea eax, [rcx - 1]
cmp eax, 0x12
ja 0x180028a77
mov rax, qword [rbx + 0x50]
movsd xmm0, qword [rax + rcx*8]
movsd qword [r11], xmm0
mov r8, qword [rbx + 0x68]
mov rdx, rcx
shr rdx, 5
and ecx, 0x1f
mov eax, r13d
shl eax, cl
test dword [r8 + rdx*4], eax
movzx r10d, r10b
cmovne r10d, r13d
inc r9
add r11, 8
cmp r9, r13
jle 0x180028a31
cmp byte [0x18011fc9c], 0
je 0x180028a97
lea rax, [rbp - 0x40]
test r10b, r10b
je 0x180028a90
movups xmmword [rbp - 0x40], xmm8
jmp 0x180028aa5
movups xmmword [rbp - 0x40], xmm14
jmp 0x180028aa5
movups xmmword [rbp + 0x88], xmm6
lea rax, [rbp + 0x88]
movss xmm1, dword [rbp + 0x18c]
movss xmm3, dword [rbp + 0x184]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x1a0], xmm0
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x1a0]
movaps xmm2, xmm7
movss xmm0, dword [rbp + 0x188]
unpcklps xmm0, xmm1
movq rdx, xmm0
movss xmm1, dword [rbp + 0x180]
unpcklps xmm1, xmm3
movq rcx, xmm1
call fcn.180014f70
add rdi, 2
cmp rdi, rsi
jne 0x1800289c1
movss xmm14, dword [rbp + 0x150]
movss xmm8, dword [0x18010aa00]
mov r13d, dword [0x18011f090]
movss xmm6, dword [rsp + 0x5c]
movss xmm10, dword [rsp + 0x58]
movss xmm13, dword [rsp + 0x74]
movss xmm9, dword [rsp + 0x70]
cmp byte [0x18011fcc9], 0
je 0x180028c7f
mov ecx, dword [0x18011fccc]
sub ecx, 2
je 0x180028b9e
cmp ecx, 1
jne 0x180028c7f
movaps xmm1, xmm13
subss xmm1, xmm6
movaps xmm0, xmm9
subss xmm0, xmm10
movdqa xmmword [rbp + 0x150], xmm12
lea r9, [rbp + 0x150]
movaps xmm2, xmm11
unpcklps xmm0, xmm1
movq rdx, xmm0
movaps xmm1, xmm10
unpcklps xmm1, xmm6
movsd qword [rsp + 0x58], xmm1
movq rcx, xmm1
call fcn.180015340
jmp 0x180028c7f
movaps xmm7, xmm13
subss xmm7, xmm6
movaps xmm8, xmm9
subss xmm8, xmm10
lea rdi, [0x18011fb80]
mov qword [rbp + 0x180], rdi
mov rcx, rdi
call fcn.1800c3684
test eax, eax
jne 0x180029e73
cmp dword [0x18011fbcc], 0x7fffffff
je 0x180029ed8
mov ecx, 0x30
call fcn.1800c3c30
mov qword [rbp + 0x150], rax
lea rcx, [0x1800f81e0]
mov qword [rax], rcx
movss dword [rax + 8], xmm10
movss dword [rax + 0xc], xmm6
movss dword [rax + 0x10], xmm8
movss dword [rax + 0x14], xmm7
movss dword [rax + 0x18], xmm11
movups xmmword [rax + 0x1c], xmm12
mov byte [rax + 0x2c], 1
mov qword [rbp + 0x1a0], r15
mov qword [rbp + 0x150], rax
mov rdx, qword [0x18021d318]
cmp rdx, qword [0x18021d320]
je 0x180028c4b
mov rcx, r15
mov qword [rdx], rax
add qword [0x18021d318], 8
jmp 0x180028c5e
lea r8, [rbp + 0x150]
call fcn.180015e40
mov rcx, qword [rbp + 0x150]
test rcx, rcx
je 0x180028c6e
mov edx, 8
call fcn.1800c3c28
nop
mov rcx, rdi
call fcn.1800c368c
movss xmm8, dword [0x18010aa00]
movss xmm11, dword [0x18010a9c4]
cmp byte [0x18011fc9d], 0
je 0x180028d35
subss xmm6, xmm14
subss xmm6, dword [0x18010aa38]
movaps xmm7, xmm9
subss xmm7, xmm10
mulss xmm7, xmm11
addss xmm7, xmm10
lea rcx, [rbx + 0x20]
lea rdx, [rbp - 0x30]
call fcn.180027c30
nop
cmp qword [rax + 0x18], 0xf
jbe 0x180028ccd
mov rax, qword [rax]
movdqa xmmword [rbp + 0x150], xmm12
mov byte [rsp + 0x28], 0
lea r9, [rbp + 0x150]
movaps xmm2, xmm14
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movq rdx, xmm0
mov rcx, rax
call fcn.1800150c0
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x180028d35
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028d30
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029e84
call fcn.1800c3c28
cmp byte [0x18011fc9f], 0
je 0x180028f59
movaps xmm7, xmm13
addss xmm7, dword [0x18010aa38]
movaps xmm6, xmm9
subss xmm6, xmm10
mulss xmm6, xmm11
addss xmm6, xmm10
mov eax, dword [0x1800f91bc]
mov dword [rsp + 0x4c], eax
movzx eax, byte [0x1800f91c0]
mov byte [rsp + 0x4c], 0x20
xor byte [rsp + 0x4d], 0x36
xor byte [rsp + 0x4e], 0x37
xor byte [rsp + 0x4f], 0x38
xor al, 0x39
mov byte [rsp + 0x50], al
cvttss2si edx, dword [rbx + 0x30]
lea rcx, [rbp + 0x1a0]
call fcn.18002a2d0
nop
movzx eax, word [0x1800f91b4]
mov word [rsp + 0x48], ax
movzx eax, byte [0x1800f91b6]
mov byte [rsp + 0x48], 0x5b
xor byte [rsp + 0x49], 0x36
xor al, 0x37
mov byte [rsp + 0x4a], al
lea r8, [rbp + 0x1a0]
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x1d8]
call fcn.18002a5f0
nop
lea rdx, [rsp + 0x4c]
mov rcx, rax
call fcn.18002a0a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov qword [rbp + 0x190], r15
mov qword [rbp + 0x198], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x180], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x190], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp + 0x1f0]
cmp rdx, 0xf
jbe 0x180028e64
inc rdx
mov rcx, qword [rbp + 0x1d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028e5f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029e8a
call fcn.1800c3c28
mov qword [rbp + 0x1e8], r15
mov qword [rbp + 0x1f0], 0xf
mov byte [rbp + 0x1d8], 0
mov rdx, qword [rbp + 0x1b8]
cmp rdx, 0xf
jbe 0x180028ebe
inc rdx
mov rcx, qword [rbp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028eb9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029e90
call fcn.1800c3c28
mov qword [rbp + 0x1b0], r15
mov qword [rbp + 0x1b8], 0xf
mov byte [rbp + 0x1a0], 0
lea rcx, [rbp + 0x180]
cmp qword [rbp + 0x198], 0xf
cmova rcx, qword [rbp + 0x180]
movdqa xmmword [rbp + 0x150], xmm12
mov byte [rsp + 0x28], 0
lea r9, [rbp + 0x150]
movaps xmm2, xmm14
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.1800150c0
nop
mov rdx, qword [rbp + 0x198]
cmp rdx, 0xf
jbe 0x180028f59
inc rdx
mov rcx, qword [rbp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028f54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029e96
call fcn.1800c3c28
cmp byte [0x18011fcca], 0
je 0x180029951
test r14, r14
je 0x180029951
mov rcx, r14
call fcn.180058ef0
test al, al
je 0x180028f8e
mov rdi, qword [0x18011fcf8]
cmp rdi, 0xffffffffffffffff
je 0x180028f8e
mov rdi, qword [r14 + rdi]
jmp 0x180028f91
mov rdi, r15
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x180028fbe
mov rax, qword [0x18011fd00]
cmp rax, 0xffffffffffffffff
je 0x180028fbe
movups xmm0, xmmword [rdi + rax]
movsd xmm1, qword [rdi + rax + 0x10]
movsd qword [rbp + 0x160], xmm1
jmp 0x180028fca
xorps xmm0, xmm0
xor eax, eax
mov qword [rbp + 0x160], rax
movups xmmword [rbp + 0x150], xmm0
lea rdx, [rbp + 0x1d8]
lea rcx, [rbp + 0x150]
call fcn.180027d10
nop
mov rcx, r14
call fcn.180058ef0
test al, al
je 0x180029004
mov rax, qword [0x18011fcf0]
cmp rax, 0xffffffffffffffff
je 0x180029004
mov edi, dword [r14 + rax]
jmp 0x180029007
mov edi, r15d
cmp dword [rbx + 0x18], 0
je 0x1800295a6
movzx eax, word [0x1800f91b8]
mov word [rsp + 0x44], ax
movzx eax, byte [0x1800f91ba]
mov byte [rsp + 0x44], 0x20
xor byte [rsp + 0x45], 0x36
xor al, 0x37
mov byte [rsp + 0x46], al
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], r15
mov qword [rbp + 0x1b8], r15
lea rax, [rsp + 0x44]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180029060
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0x1a0]
call fcn.180015c40
nop
mov edx, dword [rbx + 0x18]
lea rcx, [rbp - 0x30]
call fcn.18002a2d0
nop
mov eax, dword [0x1800f91c4]
mov dword [rbp + 0x170], eax
cmp byte [str.8invalid_stof_argument], 0
je 0x180029169
mov r8d, r15d
cmp r13d, 2
jl 0x180029132
movdqa xmm6, xmmword [0x18010ac10]
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm7, xmmword [0x18010b140]
pmuldq xmm1, xmm7
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm7
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18010ad20]
movdqa xmm1, xmm6
psubd xmm1, xmm0
movdqa xmm12, xmmword [0x18010ad90]
andps xmm1, xmm12
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x18010ae00]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp + 0x170], xmm1
jmp 0x180029182
lea r9, [rbp + 0x170]
nop dword [rax]
mov eax, 0x8d3dcb09
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x180029140
movdqa xmm12, xmmword [0x18010ad90]
movdqa xmm7, xmmword [0x18010b140]
movdqa xmm6, xmmword [0x18010ac10]
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov qword [rbp + 0x190], r15
mov qword [rbp + 0x198], r15
lea rax, [rbp + 0x170]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1800291b0
lea rdx, [rbp + 0x170]
lea rcx, [rbp + 0x180]
call fcn.180015c40
nop
mov edx, edi
lea rcx, [rbp + 0x118]
call fcn.18002a2d0
nop
mov eax, dword [0x1800f91b0]
mov dword [rbp + 0x170], eax
cmp byte [0x1800f91b3], 0
je 0x180029299
mov r8d, r15d
cmp r13d, 2
jl 0x180029269
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm7
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm7
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18010ad20]
movdqa xmm1, xmm6
psubd xmm1, xmm0
andps xmm1, xmm12
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x18010ae00]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp + 0x170], xmm1
jmp 0x180029299
lea r9, [rbp + 0x170]
mov eax, 0x8d3dcb09
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x180029270
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
mov qword [rbp + 0x160], r15
mov qword [rbp + 0x168], r15
lea rax, [rbp + 0x170]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1800292c0
lea rdx, [rbp + 0x170]
lea rcx, [rbp + 0x150]
call fcn.180015c40
nop
lea r9, [rbp + 0x118]
lea r8, [rbp + 0x150]
lea rcx, [rbp + 0xf8]
call fcn.180025c70
nop
lea r9, [rbp + 0x180]
lea r8, [rbp + 0xf8]
lea rcx, [rbp + 0xd8]
call fcn.180025c70
nop
lea r9, [rbp - 0x30]
lea r8, [rbp + 0xd8]
lea rcx, [rbp + 0xb8]
call fcn.180025c70
nop
lea r9, [rbp + 0x1a0]
lea r8, [rbp + 0xb8]
lea rcx, [rbp + 0x98]
call fcn.180025c70
nop
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x1d8]
call fcn.18002a140
nop
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0xf
jbe 0x18002939d
inc rdx
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180029397
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029e9c
call fcn.1800c3c28
nop
mov rdx, qword [rbp + 0xd0]
cmp rdx, 0xf
jbe 0x1800293df
inc rdx
mov rcx, qword [rbp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800293d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029ea2
call fcn.1800c3c28
nop
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0xf
jbe 0x180029421
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002941b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029ea8
call fcn.1800c3c28
nop
mov rdx, qword [rbp + 0x110]
cmp rdx, 0xf
jbe 0x180029463
inc rdx
mov rcx, qword [rbp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002945d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029eae
call fcn.1800c3c28
nop
mov rdx, qword [rbp + 0x168]
cmp rdx, 0xf
jbe 0x1800294a5
inc rdx
mov rcx, qword [rbp + 0x150]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002949f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029eb4
call fcn.1800c3c28
nop
mov rdx, qword [rbp + 0x130]
cmp rdx, 0xf
jbe 0x1800294e7
inc rdx
mov rcx, qword [rbp + 0x118]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800294e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029eba
call fcn.1800c3c28
nop
mov rdx, qword [rbp + 0x198]
cmp rdx, 0xf
jbe 0x180029529
inc rdx
mov rcx, qword [rbp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180029523
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029ec0
call fcn.1800c3c28
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x180029565
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002955f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029ec6
call fcn.1800c3c28
nop
mov rdx, qword [rbp + 0x1b8]
cmp rdx, 0xf
jbe 0x1800295a6
inc rdx
mov rcx, qword [rbp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800295a1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029ecc
call fcn.1800c3c28
subss xmm9, xmm10
mulss xmm9, xmm11
addss xmm9, xmm10
cmp byte [0x18011fc9f], 0
je 0x1800295c9
movaps xmm6, xmm14
addss xmm6, xmm8
jmp 0x1800295cd
movaps xmm6, xmm15
addss xmm6, xmm13
mov rcx, r14
call fcn.180058ef0
test al, al
je 0x1800295f1
mov rax, qword [0x18011fcf8]
cmp rax, 0xffffffffffffffff
je 0x1800295f1
mov rcx, qword [r14 + rax]
jmp 0x1800295f4
mov rcx, r15
lea rdx, [rbp + 0x2a0]
call fcn.1800307e0
lea rcx, [rbp + 0x1d8]
cmp qword [rbp + 0x1f0], 0xf
cmova rcx, qword [rbp + 0x1d8]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x150], xmm0
mov byte [rsp + 0x28], 0
lea r9, [rbp + 0x150]
movaps xmm2, xmm14
movaps xmm0, xmm9
unpcklps xmm0, xmm6
movq rdx, xmm0
call fcn.1800150c0
nop
mov rdx, qword [rbp + 0x1f0]
cmp rdx, 0xf
jbe 0x180029951
inc rdx
mov rcx, qword [rbp + 0x1d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180029683
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180029ed2
call fcn.1800c3c28
jmp 0x180029951
cmp byte [0x18011fc9e], 0
je 0x180029951
cmp byte [0x18011fca0], 0
je 0x180029951
mov rax, qword [rbx + 0x38]
movsd xmm0, qword [rax + 0xc]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [rax + 0x14]
mov dword [rbp - 0x48], eax
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x60]
mov rcx, qword [0x18021e860]
call fcn.18002eb10
movss xmm14, dword [0x18010aa00]
comiss xmm15, dword [rsp + 0x68]
jb 0x180029727
movd xmm8, dword [0x18021e868]
cvtdq2ps xmm8, xmm8
movss xmm0, dword [rsp + 0x60]
mulss xmm0, xmm14
subss xmm8, xmm0
movss dword [rsp + 0x60], xmm8
movd xmm7, dword [0x18021e86c]
cvtdq2ps xmm7, xmm7
movss xmm0, dword [rsp + 0x64]
mulss xmm0, xmm14
subss xmm7, xmm0
movss dword [rsp + 0x64], xmm7
jmp 0x180029734
movss xmm7, dword [rsp + 0x64]
movss xmm8, dword [rsp + 0x60]
cmp byte [0x18021e830], 0
je 0x180029748
movss xmm9, dword [0x18021e840]
jmp 0x18002975e
movd xmm9, dword [0x18011fcc0]
cvtdq2ps xmm9, xmm9
mulss xmm9, dword [0x18021e7e8]
movss xmm10, dword [0x18021e7e0]
subss xmm7, xmm10
movss xmm11, dword [0x18021e7e4]
subss xmm8, xmm11
movaps xmm1, xmm7
mulss xmm1, xmm7
movaps xmm0, xmm8
mulss xmm0, xmm8
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x18002979f
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1800297a7
movaps xmm0, xmm1
call fcn.1800e7e10
divss xmm7, xmm0
divss xmm8, xmm0
movaps xmm1, xmm8
movaps xmm0, xmm7
call fcn.1800e51d0
movaps xmm6, xmm0
call fcn.1800e5930
movaps xmm12, xmm0
mulss xmm12, xmm9
addss xmm12, xmm11
movaps xmm0, xmm6
call fcn.1800e7a00
movaps xmm6, xmm0
mulss xmm6, xmm9
addss xmm6, xmm10
movss xmm1, dword [0x18011fcbc]
movaps xmm9, xmm1
mulss xmm9, xmm7
movaps xmm10, xmm8
mulss xmm10, xmm1
addss xmm9, xmm6
addss xmm10, xmm12
xorps xmm7, xmmword [0x18010b130]
mulss xmm8, dword [0x18011fcc4]
mulss xmm7, dword [0x18011fcc4]
movaps xmm11, xmm6
addss xmm11, xmm8
movaps xmm13, xmm7
addss xmm13, xmm12
subss xmm6, xmm8
subss xmm12, xmm7
cmp byte [rbx + 0x34], 0
je 0x180029853
movss xmm0, dword [0x18010a99c]
movaps xmm1, xmm14
jmp 0x18002985f
movaps xmm0, xmm14
movss xmm1, dword [0x18010a99c]
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm1
mov dword [rbp - 0x58], 0x3e4ccccd
mov dword [rbp - 0x54], 0x3f800000
lea rdi, [0x18011fb80]
mov qword [rbp + 0x180], rdi
mov rcx, rdi
call fcn.1800c3684
test eax, eax
jne 0x180029e73
cmp dword [0x18011fbcc], 0x7fffffff
je 0x180029ed8
mov ecx, 0x38
call fcn.1800c3c30
mov qword [rbp + 0x150], rax
lea rcx, [0x1800f81f8]
mov qword [rax], rcx
movss dword [rax + 8], xmm13
movss dword [rax + 0xc], xmm11
movss dword [rax + 0x10], xmm12
movss dword [rax + 0x14], xmm6
movss dword [rax + 0x18], xmm10
movss dword [rax + 0x1c], xmm9
mov dword [rax + 0x20], 0x3f800000
movaps xmm0, xmmword [rbp - 0x60]
movups xmmword [rax + 0x24], xmm0
mov word [rax + 0x34], 0x101
mov qword [rbp + 0x1a0], r15
mov qword [rbp + 0x150], rax
mov rdx, qword [0x18021d318]
cmp rdx, qword [0x18021d320]
je 0x180029926
mov rcx, r15
mov qword [rdx], rax
add qword [0x18021d318], 8
jmp 0x180029939
lea r8, [rbp + 0x150]
call fcn.180015e40
mov rcx, qword [rbp + 0x150]
test rcx, rcx
je 0x180029949
mov edx, 8
call fcn.1800c3c28
nop
mov rcx, rdi
call fcn.1800c368c
cmp byte [0x18011fc09], 0
je 0x180029d6e
call fcn.18002f8a0
mov rsi, rax
mov rcx, rax
call fcn.180058ef0
test al, al
je 0x180029985
mov rdi, qword [0x18011fd48]
cmp rdi, 0xffffffffffffffff
je 0x180029985
mov rdi, qword [rsi + rdi]
jmp 0x180029988
mov rdi, r15
mov rcx, rdi
call fcn.180058ef0
test al, al
je 0x180029d6e
mov rax, qword [0x18011fbe8]
cmp rax, 0xffffffffffffffff
je 0x180029d6e
cmp qword [rdi + rax], 0
je 0x180029d6e
cmp byte [rbx + 0x34], 0
jne 0x1800299d9
cmp byte [0x18011fc54], 0
je 0x1800299d9
cmp byte [0x18021e7dc], 1
je 0x1800299d9
cmp byte [0x18021e7dd], 1
jne 0x180029c16
cmp byte [0x18021d2b8], 0
je 0x1800299fb
cmp byte [0x18011fc0a], 0
je 0x1800299fb
mov rax, qword [0x18021d270]
test rax, rax
jne 0x180029c1d
mov qword [rbp + 0x208], 4
xor eax, eax
mov dword [rbp + 0x241], eax
mov word [rbp + 0x245], ax
mov byte [rbp + 0x247], al
mov qword [rbp + 0x254], 0x7f7fffff
lea rdi, [0x1800f81b8]
mov qword [rbp + 0x200], rdi
mov qword [rbp + 0x210], r15
mov qword [rbp + 0x218], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x230], xmm1
mov byte [rbp + 0x240], al
mov dword [rbp + 0x248], 0x7f7fffff
mov dword [rbp + 0x24c], 0x7f7fffff
mov dword [rbp + 0x250], 0x7f7fffff
mov dword [rbp + 0x25c], eax
movups xmmword [rbp + 0x260], xmm0
movups xmmword [rbp + 0x270], xmm1
mov qword [rbp + 0x280], rax
mov qword [rbp + 0x288], rax
mov qword [rbp + 0x290], rax
movss dword [rsp + 0x20], xmm15
lea r8, [0x18021d328]
mov rdx, rbx
lea rcx, [rbp + 0x200]
call fcn.1800189e0
mov qword [rbp - 0x10], rdi
movups xmm0, xmmword [rbp + 0x208]
movups xmmword [rbp - 8], xmm0
movups xmm1, xmmword [rbp + 0x218]
movups xmmword [rbp + 8], xmm1
movups xmm0, xmmword [rbp + 0x228]
movups xmmword [rbp + 0x18], xmm0
movups xmm1, xmmword [rbp + 0x238]
movups xmmword [rbp + 0x28], xmm1
movups xmm0, xmmword [rbp + 0x248]
movups xmmword [rbp + 0x38], xmm0
movups xmm1, xmmword [rbp + 0x258]
movups xmmword [rbp + 0x48], xmm1
movups xmm0, xmmword [rbp + 0x268]
movups xmmword [rbp + 0x58], xmm0
movups xmm1, xmmword [rbp + 0x278]
movups xmmword [rbp + 0x68], xmm1
movups xmm0, xmmword [rbp + 0x288]
movups xmmword [rbp + 0x78], xmm0
lea rcx, [rbp - 0x10]
call fcn.1800185c0
mov rax, qword [0x18021d260]
mov qword [rbp + 0x200], rdi
movups xmm6, xmmword [rbp - 8]
movups xmmword [rbp + 0x208], xmm6
movups xmm7, xmmword [rbp + 8]
movups xmmword [rbp + 0x218], xmm7
movups xmm8, xmmword [rbp + 0x18]
movups xmmword [rbp + 0x228], xmm8
movups xmm9, xmmword [rbp + 0x28]
movups xmmword [rbp + 0x238], xmm9
movups xmm10, xmmword [rbp + 0x38]
movups xmmword [rbp + 0x248], xmm10
movups xmm11, xmmword [rbp + 0x48]
movups xmmword [rbp + 0x258], xmm11
movups xmm12, xmmword [rbp + 0x58]
movups xmmword [rbp + 0x268], xmm12
movups xmm13, xmmword [rbp + 0x68]
movups xmmword [rbp + 0x278], xmm13
movups xmm14, xmmword [rbp + 0x78]
movups xmmword [rbp + 0x288], xmm14
lea rdx, [rbp + 0x200]
lea rcx, [0x18021d260]
call qword [rax + 0x10]
test al, al
je 0x180029c16
movups xmmword [0x18021d268], xmm6
movups xmmword [0x18021d278], xmm7
movups xmmword [0x18021d288], xmm8
movups xmmword [0x18021d298], xmm9
movups xmmword [0x18021d2a8], xmm10
movups xmmword [0x18021d2b8], xmm11
movups xmmword [0x18021d2c8], xmm12
movups xmmword [0x18021d2d8], xmm13
movups xmmword [0x18021d2e8], xmm14
psrldq xmm6, 8
movq rax, xmm6
jmp 0x180029c1d
mov rax, qword [0x18021d270]
cmp rax, r12
jne 0x180029d6e
cmp byte [rbx + 0x34], 0
jne 0x180029d31
cmp byte [0x18011fc54], 1
jne 0x180029d31
cmp byte [0x18021e7dc], 0
jne 0x180029d31
cmp byte [0x18021e7dd], 0
jne 0x180029d31
mov dword [0x18021d268], 4
mov qword [0x18021d270], r15
movaps xmm0, xmm15
unpcklps xmm0, xmm15
movsd qword [0x18021d278], xmm0
movss dword [0x18021d280], xmm15
mov qword [0x18021d284], 0
movaps xmm0, xmm15
unpcklps xmm0, xmm15
movsd qword [0x18021d28c], xmm0
movss dword [0x18021d294], xmm15
mov qword [0x18021d298], 0
mov byte [0x18021d2a0], 0
mov dword [0x18021d2ac], 0x7f7fffff
mov dword [0x18021d2a8], 0x7f7fffff
mov dword [0x18021d2b0], 0x7f7fffff
mov dword [0x18021d2b4], 0x7f7fffff
mov word [0x18021d2b8], 0
movaps xmm0, xmm15
unpcklps xmm0, xmm15
movsd qword [0x18021d2bc], xmm0
movss dword [0x18021d2c4], xmm15
movaps xmm0, xmm15
unpcklps xmm0, xmm15
movsd qword [0x18021d2d4], xmm0
movss dword [0x18021d2dc], xmm15
mov qword [0x18021d2ec], 0
mov dword [0x18021d2f4], 0
jmp 0x180029d6e
mov sil, 1
mov byte [rsp + 0x40], sil
movss xmm0, dword [0x18021e7d8]
movss dword [rsp + 0x20], xmm0
lea r8, [0x18021d328]
mov rdx, rbx
lea rcx, [0x18021d260]
call fcn.1800189e0
lea rcx, [0x18021d260]
call fcn.180017e30
jmp 0x180029d73
xor r15d, r15d
movzx esi, byte [rsp + 0x40]
add rbx, 0x88
cmp rbx, qword [rbp + 0x1c8]
jne 0x180027fda
cmp dword [0x18021d268], 1
ja 0x180029dff
lea rcx, [0x18021d260]
call fcn.1800185c0
cmp byte [0x18021d2b9], 0
je 0x180029db7
movd xmm1, dword [0x18021d2f0]
movss xmm0, dword [0x18021d2a8]
jmp 0x180029dc7
movd xmm1, dword [0x18021d2ec]
movss xmm0, dword [0x18021d2ac]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x180029ddf
mov rax, qword [0x18021d260]
lea rcx, [0x18021d260]
call qword [rax]
test sil, sil
je 0x180029dee
cmp qword [0x18021d270], 0
jne 0x180029dff
lea rcx, [0x18021d260]
mov rax, qword [0x18021d260]
call qword [rax]
nop
lea rcx, [rbp + 0x1c0]
call fcn.180013e60
mov rcx, qword [rbp + 0x2b8]
xor rcx, rsp
call fcn.1800c3890
lea r11, [rsp + 0x460]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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 rbp
ret
mov ecx, 5
call fcn.1800c357c
nop
call fcn.180011100
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
nop
call fcn.1800c99b4
int3
mov dword [0x18011fbcc], 0x7ffffffe
mov ecx, 6
call fcn.1800c357c
int3