Function at 0x180043320
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x448]
sub rsp, 0x520
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x1801b5040]
xor rax, rsp
mov qword [rbp + 0x3f0], rax
mov ebx, ecx
mov dword [rbp + 0x2e0], ecx
xor r13d, r13d
mov r12d, r13d
mov dword [rsp + 0x40], r13d
lea rcx, [rbp + 0x168]
call fcn.18009d440
mov edx, ebx
mov rcx, rax
call fcn.1800a0080
test al, al
je 0x1800433a0
lea rdx, [rbp + 0x2e0]
call fcn.18009d340
mov rax, qword [rax]
jmp 0x1800447b4
call fcn.180042070
mov rdi, rax
mov qword [rsp + 0x68], rax
mov rcx, rax
call fcn.180041f40
mov rsi, rax
mov qword [rbp + 0x60], rax
mov ebx, r13d
mov dword [rsp + 0x4c], ebx
mov rcx, rdi
call fcn.180041e00
test rax, rax
je 0x1800447b2
mov rdi, r13
mov qword [rsp + 0x60], r13
nop dword [rax]
mov rax, qword [rsi + rdi*8]
mov r15, qword [rax]
mov qword [rbp + 0x58], r15
mov r14d, r13d
mov dword [rsp + 0x48], r13d
mov rcx, r15
call fcn.180041a90
test rax, rax
je 0x18004478e
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [r15]
xorps xmm0, xmm0
movups xmmword [rbp + 0x2c0], xmm0
mov qword [rbp + 0x2d0], r13
mov qword [rbp + 0x2d8], r13
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x180043432
lea rcx, [rbp + 0x2c0]
call fcn.180010f40
nop
movabs rax, 0x1bb9823ac046d669
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x80], rax
movabs rcx, 0xd5ef3b63913b9f60
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x78], rax
movabs rax, 0x1bb9823aac2ab247
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3a0], rax
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3a8], rax
movdqa xmm0, xmmword [rbp - 0x80]
xorps xmm0, xmmword [rbp + 0x3a0]
movdqa xmmword [rbp - 0x80], xmm0
lea rax, [rbp - 0x80]
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], 0
jne 0x1800434c1
lea rcx, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
seta sil
mov rdi, qword [rbp + 0x2c0]
cmova rcx, rdi
mov qword [rsp + 0x20], rdx
lea r9, [rbp - 0x80]
mov rbx, qword [rbp + 0x2d0]
mov rdx, rbx
call fcn.1800a16c0
cmp rbx, rax
jb 0x180044870
mov rcx, rbx
sub rcx, rax
mov edx, 4
cmp rcx, rdx
cmovb rdx, rcx
lea rcx, [rbp + 0x2c0]
test sil, sil
cmovne rcx, rdi
add rcx, rax
sub rbx, rdx
mov r8, rbx
sub r8, rax
inc r8
add rdx, rcx
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp + 0x2d0], rbx
movsxd rdx, r14d
mov rcx, r15
call fcn.180041bb0
mov r15, rax
mov qword [rbp + 0x50], rax
test rax, rax
jne 0x180043563
jmp 0x180044755
mov rsi, qword [rax + 0x10]
mov rdi, qword [rax + 0x18]
xorps xmm0, xmm0
movups xmmword [rbp + 0x178], xmm0
mov qword [rbp + 0x188], r13
mov qword [rbp + 0x190], r13
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x180043590
mov rdx, rdi
lea rcx, [rbp + 0x178]
call fcn.180010f40
cmp qword [rbp + 0x188], 0
sete bl
lea rcx, [rbp + 0x178]
call fcn.180010470
test bl, bl
je 0x180043775
movabs rax, 0x1bb9823aac2a887d
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x70], rax
movabs rcx, 0xd5ef3b63913b9f60
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x68], rax
movabs rax, 0x1bb9823aac2ab247
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3e0], rax
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3e8], rax
movdqa xmm0, xmmword [rbp - 0x70]
xorps xmm0, xmmword [rbp + 0x3e0]
movdqa xmmword [rbp - 0x70], xmm0
lea rax, [rbp - 0x70]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x180043640
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x2d0]
sub rax, rdx
cmp rax, rcx
jb 0x180044876
lea r9, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
cmova r9, qword [rbp + 0x2c0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp - 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x1d8]
call fcn.180011d20
bts r12d, 0xe
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rsi + r8], 0
jne 0x1800436b0
mov rdx, rsi
lea rcx, [rbp + 0x1d8]
call fcn.1800104d0
movups xmm6, xmmword [rax]
movups xmmword [rbp + 0x198], xmm6
movups xmm7, xmmword [rax + 0x10]
movups xmmword [rbp + 0x1a8], xmm7
xor edi, edi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
bts r12d, 0xd
mov rdx, qword [rbp + 0x2d8]
cmp rdx, 0xf
jbe 0x180043735
inc rdx
mov rcx, qword [rbp + 0x2c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180043730
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800447f6
call fcn.180150c1c
movups xmmword [rbp + 0x2c0], xmm6
movups xmmword [rbp + 0x2d0], xmm7
mov qword [rbp + 0x1a8], rdi
mov qword [rbp + 0x1b0], 0xf
mov byte [rbp + 0x198], dil
lea rcx, [rbp + 0x198]
call fcn.180010470
nop
lea rcx, [rbp + 0x1d8]
jmp 0x180043a4a
movabs rdx, 0x1bb9823aac2a887d
mov qword [rsp + 0x40], rdx
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x60], rax
movabs rbx, 0xd5ef3b63913b9f60
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x58], rax
movabs rcx, 0x1bb9823aac2ab247
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x390], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x398], rax
movdqa xmm0, xmmword [rbp - 0x60]
xorps xmm0, xmmword [rbp + 0x390]
movdqa xmmword [rbp - 0x60], xmm0
mov qword [rsp + 0x40], rdx
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x380], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x388], rax
movdqa xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rbp + 0x380]
movdqa xmmword [rsp + 0x50], xmm0
lea rax, [rsp + 0x50]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x180043841
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x2d0]
sub rax, rdx
cmp rax, rcx
jb 0x18004486a
lea r9, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
cmova r9, qword [rbp + 0x2c0]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x1f8]
call fcn.180011d20
bts r12d, 0xf
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x1800438b0
mov rdx, rdi
lea rcx, [rbp + 0x1f8]
call fcn.1800104d0
xorps xmm0, xmm0
movups xmmword [rbp + 0xc8], xmm0
xor edi, edi
mov qword [rbp + 0xd8], rdi
mov qword [rbp + 0xe0], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xd8], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
lea rax, [rbp - 0x60]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180043912
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0xc8]
call fcn.1800104d0
xorps xmm0, xmm0
movups xmmword [rbp + 0xe8], xmm0
mov qword [rbp + 0xf8], rdi
mov qword [rbp + 0x100], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xe8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xf8], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rsi + r8], 0
jne 0x180043970
mov rdx, rsi
lea rcx, [rbp + 0xe8]
call fcn.1800104d0
movups xmm6, xmmword [rax]
movups xmmword [rbp + 0x1b8], xmm6
movups xmm7, xmmword [rax + 0x10]
movups xmmword [rbp + 0x1c8], xmm7
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r12d, 0x70000
mov rdx, qword [rbp + 0x2d8]
cmp rdx, 0xf
jbe 0x1800439f5
inc rdx
mov rcx, qword [rbp + 0x2c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800439f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800447fd
call fcn.180150c1c
movups xmmword [rbp + 0x2c0], xmm6
movups xmmword [rbp + 0x2d0], xmm7
mov qword [rbp + 0x1c8], rdi
mov qword [rbp + 0x1d0], 0xf
mov byte [rbp + 0x1b8], 0
lea rcx, [rbp + 0x1b8]
call fcn.180010470
nop
lea rcx, [rbp + 0xe8]
call fcn.180010470
nop
lea rcx, [rbp + 0xc8]
call fcn.180010470
nop
lea rcx, [rbp + 0x1f8]
call fcn.180010470
mov qword [rbp + 0x298], rdi
lea rdx, [rbp + 0x298]
mov rcx, r15
call fcn.180041830
mov r13, rax
test rax, rax
je 0x180044752
movabs rsi, 0xd5ef3b63913b9f60
nop dword [rax + rax]
mov rcx, r13
call fcn.1800413b0
mov rbx, rax
movabs rax, 0x1bb9823aac2a887d
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x40]
mov qword [rbp - 0x50], rcx
mov qword [rsp + 0x40], rsi
mov rcx, qword [rsp + 0x40]
mov qword [rbp - 0x48], rcx
movabs rax, 0x1bb9823aac2ab247
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0x370], rcx
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x378], rax
movdqa xmm0, xmmword [rbp - 0x50]
xorps xmm0, xmmword [rbp + 0x370]
movdqa xmmword [rbp - 0x50], xmm0
lea rax, [rbp - 0x50]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x180043b00
movabs r14, 0x7fffffffffffffff
mov rax, r14
mov rdx, qword [rbp + 0x2d0]
sub rax, rdx
cmp rax, rcx
jb 0x1800448a6
lea r9, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
cmova r9, qword [rbp + 0x2c0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x218]
call fcn.180011d20
nop
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x180043b70
mov rdx, rbx
lea rcx, [rbp + 0x218]
call fcn.1800104d0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x2a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x2b0], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rbp + 0x218]
call fcn.180010470
mov rcx, r13
call fcn.180041050
test eax, eax
je 0x1800443db
movabs rax, 0x1bb9823aac2ab26f
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x40], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x38], rax
movabs rbx, 0x1bb9823aac2ab247
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x360], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x368], rax
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x360]
movdqa xmmword [rbp - 0x40], xmm0
lea rax, [rbp - 0x40]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x180043c37
mov rax, r14
mov rdx, qword [rbp + 0x2b0]
sub rax, rdx
cmp rax, rcx
jb 0x180044894
lea r9, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 0xf
cmova r9, qword [rbp + 0x2a0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0xa8]
call fcn.180011d20
or r12d, 0x1180
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 0xf
jbe 0x180043cd4
inc rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180043ccf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180044804
call fcn.180150c1c
movups xmm0, xmmword [rbp + 0xa8]
movups xmmword [rbp + 0x2a0], xmm0
movups xmm1, xmmword [rbp + 0xb8]
movups xmmword [rbp + 0x2b0], xmm1
mov qword [rbp + 0xb8], rdi
mov qword [rbp + 0xc0], 0xf
mov byte [rbp + 0xa8], 0
lea rcx, [rbp + 0xa8]
call fcn.180010470
mov r14d, edi
mov rcx, r13
call fcn.180041050
test eax, eax
je 0x1800440a4
nop dword [rax + rax]
mov edx, r14d
mov rcx, r13
call fcn.180041290
mov rcx, rax
call fcn.180040f30
xorps xmm0, xmm0
movups xmmword [rbp + 0x2e8], xmm0
mov qword [rbp + 0x2f8], rdi
mov qword [rbp + 0x300], rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180043d62
mov rdx, rax
lea rcx, [rbp + 0x2e8]
call fcn.180010f40
nop
movabs rax, 0x1bb9823aac2ab269
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x30], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x28], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x350], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x358], rax
movdqa xmm0, xmmword [rbp - 0x30]
xorps xmm0, xmmword [rbp + 0x350]
movdqa xmmword [rbp - 0x30], xmm0
lea rax, [rbp - 0x30]
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], 0
jne 0x180043de0
lea rcx, [rbp + 0x2e8]
cmp qword [rbp + 0x300], 0xf
seta sil
mov rdi, qword [rbp + 0x2e8]
cmova rcx, rdi
mov qword [rsp + 0x20], rdx
lea r9, [rbp - 0x30]
mov rbx, qword [rbp + 0x2f8]
mov rdx, rbx
call fcn.1800a16c0
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xor eax, eax
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], rax
cmp rbx, rcx
jb 0x180044882
sub rbx, rcx
mov r8, 0xffffffffffffffff
cmp rbx, r8
cmovb r8, rbx
lea rdx, [rbp + 0x2e8]
test sil, sil
cmovne rdx, rdi
add rdx, rcx
lea rcx, [rbp + 0x30]
call fcn.180010f40
mov rdx, qword [rbp + 0x300]
cmp rdx, 0xf
jbe 0x180043ea9
inc rdx
mov rcx, qword [rbp + 0x2e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180043ea4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004480b
call fcn.180150c1c
movups xmm0, xmmword [rbp + 0x30]
movups xmmword [rbp + 0x2e8], xmm0
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rbp + 0x2f8], xmm1
xor edi, edi
mov qword [rbp + 0x40], rdi
mov qword [rbp + 0x48], 0xf
mov byte [rbp + 0x30], dil
lea rcx, [rbp + 0x30]
call fcn.180010470
movabs rax, 0x1bb9823aac2ab26b
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x20], rax
movabs rsi, 0xd5ef3b63913b9f60
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x18], rax
movabs rbx, 0x1bb9823aac2ab247
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3d0], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3d8], rax
movdqa xmm0, xmmword [rbp - 0x20]
xorps xmm0, xmmword [rbp + 0x3d0]
movdqa xmmword [rbp - 0x20], xmm0
movabs rax, 0x7fffffffffffffff
mov rcx, qword [rbp + 0x2b0]
sub rax, rcx
mov rdx, qword [rbp + 0x2f8]
cmp rax, rdx
jb 0x18004487c
lea r9, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 0xf
cmova r9, qword [rbp + 0x2a0]
lea rax, [rbp + 0x2e8]
cmp qword [rbp + 0x300], 0xf
cmova rax, qword [rbp + 0x2e8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x238]
call fcn.180011d20
nop
lea rax, [rbp - 0x20]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180043fc0
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x238]
call fcn.1800104d0
movups xmm6, xmmword [rax]
movups xmmword [rbp + 0x108], xmm6
movups xmm7, xmmword [rax + 0x10]
movups xmmword [rbp + 0x118], xmm7
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r12d, 0x43
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 0xf
jbe 0x180044043
inc rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004403e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180044812
call fcn.180150c1c
movups xmmword [rbp + 0x2a0], xmm6
movups xmmword [rbp + 0x2b0], xmm7
mov qword [rbp + 0x118], rdi
mov qword [rbp + 0x120], 0xf
mov byte [rbp + 0x108], 0
lea rcx, [rbp + 0x108]
call fcn.180010470
nop
lea rcx, [rbp + 0x238]
call fcn.180010470
nop
lea rcx, [rbp + 0x2e8]
call fcn.180010470
inc r14d
mov rcx, r13
call fcn.180041050
cmp r14d, eax
jb 0x180043d30
mov rcx, r13
call fcn.180041170
mov rcx, rax
call fcn.180040f30
xorps xmm0, xmm0
movups xmmword [rbp + 0x308], xmm0
mov qword [rbp + 0x318], rdi
mov qword [rbp + 0x320], rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800440d3
mov rdx, rax
lea rcx, [rbp + 0x308]
call fcn.180010f40
nop
mov rax, qword [rbp + 0x2b0]
lea r8, [rax - 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], rdi
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 0xf
cmova rdx, qword [rbp + 0x2a0]
lea rcx, [rbp + 0x10]
call fcn.180010f40
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 0xf
jbe 0x18004416f
inc rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004416a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180044819
call fcn.180150c1c
movups xmm0, xmmword [rbp + 0x10]
movups xmmword [rbp + 0x2a0], xmm0
movups xmm1, xmmword [rbp + 0x20]
movups xmmword [rbp + 0x2b0], xmm1
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], 0
lea rcx, [rbp + 0x10]
call fcn.180010470
lea rcx, [rbp + 0x308]
cmp qword [rbp + 0x320], 0xf
seta sil
mov rdi, qword [rbp + 0x308]
cmova rcx, rdi
mov qword [rsp + 0x20], 1
lea r9, [0x180199410]
mov rbx, qword [rbp + 0x318]
mov rdx, rbx
call fcn.1800a16c0
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x128], xmm0
xor eax, eax
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x140], rax
cmp rbx, rcx
jb 0x18004488e
sub rbx, rcx
mov r8, 0xffffffffffffffff
cmp rbx, r8
cmovb r8, rbx
lea rdx, [rbp + 0x308]
test sil, sil
cmovne rdx, rdi
add rdx, rcx
lea rcx, [rbp + 0x128]
call fcn.180010f40
nop
movabs rax, 0x1bb9823aac0a886e
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x10], rax
movabs rsi, 0xd5ef3b63913b9f60
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 8], rax
movabs rax, 0x1bb9823aac2ab247
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3c0], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3c8], rax
movdqa xmm0, xmmword [rbp - 0x10]
xorps xmm0, xmmword [rbp + 0x3c0]
movdqa xmmword [rbp - 0x10], xmm0
lea rax, [rbp - 0x10]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1800442b0
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x2b0]
sub rax, rdx
cmp rax, rcx
jb 0x180044888
lea r9, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 0xf
cmova r9, qword [rbp + 0x2a0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp - 0x10]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x258]
call fcn.180011d20
nop
lea r9, [rbp + 0x128]
lea r8, [rbp + 0x258]
lea rcx, [rbp + 0x88]
call fcn.1800a1b80
or r12d, 0x3c
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 0xf
jbe 0x18004436c
inc rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180044367
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180044820
call fcn.180150c1c
movups xmm7, xmmword [rbp + 0x88]
movups xmmword [rbp + 0x2a0], xmm7
movups xmm6, xmmword [rbp + 0x98]
movups xmmword [rbp + 0x2b0], xmm6
xor edi, edi
mov qword [rbp + 0x98], rdi
mov qword [rbp + 0xa0], 0xf
mov byte [rbp + 0x88], dil
lea rcx, [rbp + 0x88]
call fcn.180010470
nop
lea rcx, [rbp + 0x258]
call fcn.180010470
nop
lea rcx, [rbp + 0x128]
call fcn.180010470
nop
lea rcx, [rbp + 0x308]
call fcn.180010470
jmp 0x18004468f
mov rcx, r13
call fcn.180041170
mov rcx, rax
call fcn.180040f30
xorps xmm0, xmm0
movups xmmword [rbp + 0x328], xmm0
mov qword [rbp + 0x338], rdi
mov qword [rbp + 0x340], rdi
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180044410
mov rdx, rax
lea rcx, [rbp + 0x328]
call fcn.180010f40
nop
lea rdi, [rbp + 0x328]
cmp qword [rbp + 0x340], 0xf
seta r15b
mov r14, qword [rbp + 0x328]
cmova rdi, r14
mov rsi, qword [rbp + 0x338]
cmp rsi, 1
jb 0x1800444a1
lea rbx, [rdi + rsi]
mov r8, rsi
mov edx, 0x2e
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x1800444a1
nop
cmp byte [rax], 0x2e
jne 0x180044479
xor ecx, ecx
jmp 0x18004447e
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x1800447ee
inc rax
mov r8, rbx
sub r8, rax
mov edx, 0x2e
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x180044470
mov rax, 0xffffffffffffffff
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x148], xmm0
xor edi, edi
mov qword [rbp + 0x158], rdi
mov qword [rbp + 0x160], rdi
cmp rsi, rcx
jb 0x1800448a0
sub rsi, rcx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x328]
test r15b, r15b
cmovne rdx, r14
add rdx, rcx
lea rcx, [rbp + 0x148]
call fcn.180010f40
nop
movabs rax, 0x1bb9823a8c109b6f
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp], rax
movabs rsi, 0xd5ef3b63913b9f60
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 8], rax
movabs rax, 0x1bb9823aac2ab247
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3b0], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3b8], rax
movdqa xmm0, xmmword [rbp]
xorps xmm0, xmmword [rbp + 0x3b0]
movdqa xmmword [rbp], xmm0
lea rax, [rbp]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x180044576
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x2b0]
sub rax, rdx
cmp rax, rcx
jb 0x18004489a
lea r9, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 0xf
cmova r9, qword [rbp + 0x2a0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x278]
call fcn.180011d20
nop
lea r9, [rbp + 0x148]
lea r8, [rbp + 0x278]
lea rcx, [rbp + 0x68]
call fcn.1800a1b80
or r12d, 0xf80
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 0xf
jbe 0x180044632
inc rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004462d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180044827
call fcn.180150c1c
movups xmm7, xmmword [rbp + 0x68]
movups xmmword [rbp + 0x2a0], xmm7
movups xmm6, xmmword [rbp + 0x78]
movups xmmword [rbp + 0x2b0], xmm6
mov qword [rbp + 0x78], rdi
mov qword [rbp + 0x80], 0xf
mov byte [rbp + 0x68], 0
lea rcx, [rbp + 0x68]
call fcn.180010470
nop
lea rcx, [rbp + 0x278]
call fcn.180010470
nop
lea rcx, [rbp + 0x148]
call fcn.180010470
nop
lea rcx, [rbp + 0x328]
call fcn.180010470
mov r15, qword [rbp + 0x50]
lea rcx, [rbp + 0x2a0]
psrldq xmm6, 8
movq rax, xmm6
cmp rax, 0xf
seta r9b
movq rdx, xmm7
cmova rcx, rdx
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1800446c0
lea r8, [rbp + 0x2a0]
test r9b, r9b
cmovne r8, rdx
mov edx, 0xffffffff
test eax, eax
je 0x180044716
mov r9d, eax
lea rsi, [0x180192ee0]
nop word [rax + rax]
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
movzx eax, cl
shr edx, 8
xor edx, dword [rsi + rax*4]
lea r8, [r8 + 1]
sub r9, 1
jne 0x1800446f0
movabs rsi, 0xd5ef3b63913b9f60
not edx
mov eax, dword [rbp + 0x2e0]
cmp edx, eax
je 0x18004482e
lea rcx, [rbp + 0x2a0]
call fcn.180010470
lea rdx, [rbp + 0x298]
mov rcx, r15
call fcn.180041830
mov r13, rax
test rax, rax
jne 0x180043a80
mov r14d, dword [rsp + 0x48]
xor r13d, r13d
lea rcx, [rbp + 0x2c0]
call fcn.180010470
inc r14d
mov dword [rsp + 0x48], r14d
mov r15, qword [rbp + 0x58]
mov rcx, r15
call fcn.180041a90
movsxd rcx, r14d
cmp rcx, rax
jb 0x180043410
mov ebx, dword [rsp + 0x4c]
mov rdi, qword [rsp + 0x60]
mov rsi, qword [rbp + 0x60]
inc ebx
mov dword [rsp + 0x4c], ebx
inc rdi
mov qword [rsp + 0x60], rdi
mov rcx, qword [rsp + 0x68]
call fcn.180041e00
movsxd rcx, ebx
cmp rcx, rax
jb 0x1800433e0
xor eax, eax
mov rcx, qword [rbp + 0x3f0]
xor rcx, rsp
call fcn.180150350
lea r11, [rsp + 0x520]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
sub rax, rdi
jmp 0x1800444a8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x70], r13
lea r8, [rsp + 0x68]
lea rdx, [rbp + 0x168]
call fcn.1800a00f0
nop
lea rcx, [rbp + 0x2a0]
call fcn.180010470
nop
lea rcx, [rbp + 0x2c0]
call fcn.180010470
mov rax, r13
jmp 0x1800447b4
call fcn.1800051b0
int3
call fcn.1800105d0
int3
call fcn.1800051b0
nop
call fcn.1800051b0
int3
call fcn.1800105d0
nop
call fcn.1800051b0
nop
call fcn.1800105d0
nop
call fcn.1800051b0
nop
call fcn.1800051b0
nop
call fcn.1800105d0
nop
call fcn.1800051b0
int3