Function at 0x1800305c0
Capabilities:
Encode data using xor
Inspect section memory permissions

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x518
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x480], xmm6
mov qword [rbp + 0x478], 0xfffffffffffffffe
mov rdi, r9
mov rbx, r8
mov rsi, rdx
mov qword [rbp + 0x1a8], rcx
xor ecx, ecx
call fcn.180018260
test rax, rax
je 0x18003292b
movups xmm0, xmmword [rax]
inc qword [rax]
movaps xmmword [rbp + 0xc0], xmm0
movups xmm0, xmmword [0x1801a0950]
movaps xmmword [rbp + 0xa0], xmm0
movdqu xmm0, xmmword [0x1801a0960]
movdqa xmmword [rbp + 0xb0], xmm0
lea rcx, [rbp + 0x3b0]
mov byte [rbp + 0x474], 1
mov rdx, rbx
mov r8, rdi
call fcn.180177850
mov qword [rbp + 0x3a0], 1
mov qword [rbp + 0x3a8], 1
movzx eax, byte [0x18028ecd1]
mov ecx, 0x28
mov edx, 8
call fcn.18006a570
test rax, rax
je 0x180032956
mov rcx, qword [rbp + 0x3c0]
mov qword [rax + 0x20], rcx
movdqu xmm0, xmmword [rbp + 0x3a0]
movups xmm1, xmmword [rbp + 0x3b0]
movups xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
movzx ecx, byte [0x18028ecd1]
pxor xmm0, xmm0
movdqu xmmword [rbp + 0x3c0], xmm0
mov qword [rbp + 0x380], 0
movdqu xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x388], 8
mov qword [rbp + 0x3a0], 0
mov qword [rbp + 0x3a8], 1
mov qword [rbp + 0x3b0], 0
mov qword [rbp + 0x3b8], rax
mov qword [rbp + 0x3d0], 0
mov qword [rbp + 0x3d8], 1
movdqu xmmword [rbp + 0x3e0], xmm0
mov qword [rbp + 0x3f0], 8
mov qword [rbp + 0x3f8], 0
lea rcx, [rbp + 0x380]
call fcn.180039b30
mov rax, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x388]
mov rdx, qword [rbp + 0x398]
mov r8, qword [rbp + 0x390]
add r8, rdx
cmp r8, rax
mov r9d, 0
cmovae r9, rax
sub r8, r9
lea rax, [r8 + r8*2]
shl rax, 5
movdqu xmm0, xmmword [rbp + 0x3a0]
movups xmm1, xmmword [rbp + 0x3b0]
movups xmm2, xmmword [rbp + 0x3c0]
movups xmm3, xmmword [rbp + 0x3d0]
movups xmm4, xmmword [rbp + 0x3e0]
movups xmm5, xmmword [rbp + 0x3f0]
movups xmmword [rcx + rax + 0x50], xmm5
movups xmmword [rcx + rax + 0x40], xmm4
movups xmmword [rcx + rax + 0x30], xmm3
movups xmmword [rcx + rax + 0x20], xmm2
movups xmmword [rcx + rax + 0x10], xmm1
movdqu xmmword [rcx + rax], xmm0
inc rdx
mov qword [rbp + 0x398], rdx
mov rax, qword [rsi + 0x30]
mov qword [rbp + 0x190], rax
mov rax, qword [rsi + 0x38]
mov qword [rbp + 0x198], rax
nop word cs:[rax + rax]
mov rax, qword [rbp + 0x398]
test rax, rax
je 0x180032492
mov rcx, qword [rbp + 0x390]
lea rdx, [rcx + 1]
mov r8, qword [rbp + 0x380]
mov r9, qword [rbp + 0x388]
cmp rdx, r8
mov edx, 0
cmovae rdx, r8
neg rdx
add rdx, rcx
inc rdx
mov qword [rbp + 0x390], rdx
dec rax
mov qword [rbp + 0x398], rax
lea rcx, [rcx + rcx*2]
shl rcx, 5
mov rax, qword [r9 + rcx]
movups xmm0, xmmword [r9 + rcx + 0x38]
movaps xmmword [rbp - 0x20], xmm0
movups xmm0, xmmword [r9 + rcx + 0x28]
movaps xmmword [rbp - 0x30], xmm0
movups xmm0, xmmword [r9 + rcx + 0x18]
movaps xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [r9 + rcx + 8]
movaps xmmword [rbp - 0x50], xmm0
mov rdx, qword [r9 + rcx + 0x58]
mov qword [rbp + 0x90], rdx
movups xmm0, xmmword [r9 + rcx + 0x48]
movaps xmmword [rbp + 0x80], xmm0
mov rcx, rax
neg rcx
jo 0x180032492
mov qword [rbp + 0x1f0], rax
mov rax, qword [rbp - 0x30]
lea rcx, [rbp + 0x1f8]
mov qword [rcx + 0x20], rax
movaps xmm0, xmmword [rbp - 0x50]
movaps xmm1, xmmword [rbp - 0x40]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
lea rcx, [rbp - 0x28]
mov rax, qword [rcx + 0x10]
mov qword [rbp + 0x330], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0x320], xmm0
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x370], rax
movdqa xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x360], xmm0
lea rcx, [rbp + 0x3a0]
lea rdx, [rbp + 0x1f0]
call fcn.180017a30
cmp qword [rbp + 0x3a0], 0
je 0x18003288d
mov r14, qword [rbp + 0x190]
test r14, r14
je 0x18003240c
mov rax, qword [rbp + 0x3b0]
mov qword [rbp + 0x188], rax
mov rax, qword [rbp + 0x3b8]
mov qword [rbp + 0x2a8], rax
mov rsi, qword [rbp + 0x328]
mov rbx, qword [rbp + 0x330]
mov rax, qword [rbp + 0x198]
mov qword [rbp + 0x458], rax
lea rax, [r14 + 8]
movzx ecx, word [r14 + 0x42a]
mov qword [rbp + 0x460], rcx
lea ecx, [rcx*8]
lea r13, [rcx + rcx*2]
mov qword [rbp + 0x450], r14
lea rdi, [r14 + 0xc8]
mov r15, 0xffffffffffffffff
test r13, r13
je 0x180030a00
lea r12, [rax + 0x18]
mov rdx, qword [rax + 8]
mov r8, qword [rax + 0x10]
mov r14, rdi
mov rdi, rbx
sub rdi, r8
cmovb r8, rbx
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcmp
cdqe
test eax, eax
cmovne rdi, rax
xor ecx, ecx
test rdi, rdi
mov rdi, r14
setne cl
mov eax, 0xff
cmovs ecx, eax
add r13, 0xffffffffffffffe8
add rdi, 0x48
inc r15
mov rax, r12
cmp cl, 1
je 0x180030990
movzx eax, cl
test eax, eax
je 0x180030a40
mov rax, qword [rbp + 0x458]
sub rax, 1
jae 0x180030a18
jmp 0x18003240c
mov r15, qword [rbp + 0x460]
mov rax, qword [rbp + 0x458]
sub rax, 1
jb 0x18003240c
mov qword [rbp + 0x458], rax
mov r14, qword [rbp + 0x450]
mov r14, qword [r14 + r15*8 + 0x430]
jmp 0x18003095d
xor eax, eax
cmp rax, qword [rdi]
jo 0x1800315b7
lea rcx, [rbp + 0x2c0]
mov rdx, rdi
call fcn.180178bb0
mov qword [rbp + 0x1a0], rdi
mov r14, qword [rbp + 0x370]
mov rax, r14
mov ecx, 0x18
mul rcx
mov rsi, rax
jo 0x180032912
mov edi, 0
movabs rax, 0x7ffffffffffffff8
cmp rsi, rax
ja 0x180032914
test rsi, rsi
je 0x180030b09
mov rbx, qword [rbp + 0x368]
movzx eax, byte [0x18028ecd1]
mov edi, 8
mov edx, 8
mov rcx, rsi
call fcn.18006a570
test rax, rax
je 0x180032914
mov r15, rax
test r14, r14
je 0x180030b0f
xor eax, eax
mov rcx, r14
nop
cmp rsi, rax
je 0x180030b0f
mov rdx, qword [rbx]
mov r8, qword [rbx + 8]
mov r9, qword [rbx + 0x10]
inc qword [r9]
je 0x1800329b3
dec rcx
add rbx, 0x18
mov qword [r15 + rax], rdx
mov qword [r15 + rax + 8], r8
mov qword [r15 + rax + 0x10], r9
add rax, 0x18
test rcx, rcx
jne 0x180030ad0
jmp 0x180030b0f
mov r15d, 8
mov qword [rbp + 0x2b0], r14
lea rax, [r14*8]
lea rcx, [rax + rax*2]
mov qword [rbp + 0x2b8], rcx
add rcx, r15
mov qword [rbp + 0x2a0], rcx
lea rcx, [r15 + 0x28]
lea rax, [rax + rax*2]
add rax, 0xffffffffffffffe8
mov r14, r15
mov qword [rbp + 0x318], r15
jmp 0x180030b66
mov rcx, qword [rbp + 0x290]
add rcx, 0x18
mov rax, qword [rbp + 0x298]
add rax, 0xffffffffffffffe8
cmp r14, qword [rbp + 0x2a0]
je 0x180031423
lea rsi, [r14 + 0x18]
mov r9, qword [r14]
test r9, r9
je 0x180031420
mov qword [rbp + 0x298], rax
mov qword [rbp + 0x290], rcx
mov rax, qword [r14 + 8]
mov rdi, qword [r14 + 0x10]
mov qword [rbp + 0xd0], rdi
mov rbx, qword [rbp + 0x2c8]
mov r14, qword [rbp + 0x2d0]
mov rcx, qword [rdi + 0x18]
mov qword [rbp + 0x160], rcx
mov r12, qword [rdi + 0x20]
mov qword [rbp + 0x408], 0
mov qword [rbp + 0x410], 1
mov qword [rbp + 0x418], 0
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x3a0]
mov rdx, rbx
mov r8, r14
call fcn.18017d7f0
mov qword [rbp + 0x180], r14
mov qword [rbp + 0x280], rbx
mov qword [rbp + 0x178], rdi
mov qword [rbp + 0x170], rsi
movzx eax, byte [rbp + 0x3a0]
mov byte [rbp + 0x43f], al
mov r15, qword [rbp + 0x3a8]
mov rcx, qword [rbp + 0x3b8]
mov rax, qword [rbp + 0x3c0]
mov qword [rbp + 0x268], rax
mov rax, qword [rbp + 0x3c8]
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x3d8]
mov qword [rbp + 0x450], rax
mov rbx, qword [rbp + 0x3e8]
mov rdi, qword [rbp + 0x3f0]
mov rsi, qword [rbp + 0x3f8]
mov r13, qword [rbp + 0x400]
lea rax, [r13 - 1]
mov qword [rbp + 0x310], rax
mov rax, rcx
and rax, 0xffffffffffffff00
mov qword [rbp + 0x288], rax
mov eax, 1
mov qword [rbp + 0x448], rax
mov qword [rbp + 0x168], rcx
mov r14d, ecx
mov qword [rbp + 0x460], 0
mov qword [rbp + 0x440], 0
mov qword [rbp + 0x350], 0
mov qword [rbp + 0x270], r12
mov qword [rbp + 0x278], rbx
mov qword [rbp + 0x458], rsi
jmp 0x180030d27
lea rax, [rbx + r8]
mov qword [rbp + 0x440], rax
mov rax, qword [rbp + 0x448]
mov rsi, qword [rbp + 0x458]
mov qword [rbp + 0x448], rax
add rbx, rax
mov rcx, rbx
mov rdx, qword [rbp + 0x160]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rbp + 0x158]
mov qword [rbp + 0x350], rax
mov rbx, qword [rbp + 0x278]
test byte [rbp + 0x43f], 1
je 0x180030e60
mov rax, qword [rbp + 0x310]
mov rcx, qword [rbp + 0x358]
lea r10, [rcx + rax]
cmp qword [rbp + 0x450], 0xffffffffffffffff
je 0x180030fb6
cmp r10, rdi
jae 0x1800312a0
movzx edx, r14b
or rdx, qword [rbp + 0x288]
mov r8, r13
sub r8, rdx
mov r12, qword [rbp + 0x358]
nop word cs:[rax + rax]
movzx eax, byte [rbx + r10]
mov rcx, qword [rbp + 0x268]
bt rcx, rax
jae 0x180030de0
mov rax, qword [rbp + 0x450]
cmp r15, rax
cmova rax, r15
lea rcx, [rbx + r12]
mov r9, rax
nop word [rax + rax]
cmp r9, r13
jae 0x180030e10
lea r10, [r12 + r9]
cmp r10, rdi
jae 0x18003256e
lea r10, [r9 + 1]
movzx r11d, byte [rsi + r9]
cmp r11b, byte [rcx + r9]
mov r9, r10
je 0x180030db0
sub r12, r15
add r12, r10
jmp 0x180030de3
add r12, r13
mov qword [rbp + 0x450], 0
mov rax, qword [rbp + 0x310]
lea r10, [r12 + rax]
cmp r10, rdi
jb 0x180030d80
jmp 0x1800312a0
mov rcx, r15
mov r10, qword [rbp + 0x450]
nop word [rax + rax]
cmp r10, rcx
jae 0x180030f80
dec rcx
cmp rcx, r13
jae 0x180032604
lea rax, [rcx + r12]
cmp rax, rdi
jae 0x180032642
movzx r9d, byte [rsi + rcx]
cmp r9b, byte [rbx + rax]
je 0x180030e20
add r12, rdx
mov qword [rbp + 0x450], r8
jmp 0x180030dee
test dword [rbp + 0x168], 0x10000
je 0x180030e83
jmp 0x1800312a0
add r15, rax
mov eax, r14d
test r15, r15
je 0x180030ea6
cmp r15, rdi
jae 0x180030ea0
cmp byte [rbx + r15], 0xbf
jg 0x180030ea6
jmp 0x180032683
jne 0x180032683
mov r14d, eax
xor r14b, 1
cmp r15, rdi
je 0x180030fa0
movzx r8d, byte [rbx + r15]
movzx ecx, r8b
test cl, cl
jns 0x180030f20
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [rbx + r15 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x180030f0f
movzx ecx, byte [rbx + r15 + 2]
shl r9d, 6
and ecx, 0x3f
or ecx, r9d
cmp r8b, 0xf0
jb 0x180030f5a
movzx r8d, byte [rbx + r15 + 3]
and edx, 7
shl edx, 0x12
shl ecx, 6
and r8d, 0x3f
or r8d, ecx
or r8d, edx
mov ecx, r8d
test al, 1
je 0x180030f24
jmp 0x180030f70
shl edx, 6
or edx, r9d
mov ecx, edx
nop word [rax + rax]
test al, 1
jne 0x180030f70
mov eax, 1
cmp ecx, 0x80
jb 0x180030e80
mov eax, 2
cmp ecx, 0x800
jb 0x180030e80
cmp ecx, 0x10000
mov eax, 4
sbb rax, 0
jmp 0x180030e80
shl edx, 0xc
or ecx, edx
test al, 1
je 0x180030f24
nop word cs:[rax + rax]
mov r12, r15
mov rdx, r15
jmp 0x1800310dd
lea rax, [r12 + r13]
mov qword [rbp + 0x450], 0
jmp 0x1800310d3
mov r15, rdi
mov r12, rdi
mov rdx, rdi
test al, 1
jne 0x1800310dd
jmp 0x1800312a0
cmp r10, rdi
jae 0x1800312a0
movzx eax, r14b
or rax, qword [rbp + 0x288]
lea rcx, [r15 - 1]
mov qword [rbp + 0x450], rcx
cmp rcx, r13
setb cl
lea r8, [rbx + r15]
lea r9, [rsi + r15]
mov r12, qword [rbp + 0x358]
jmp 0x18003100d
add r12, r13
mov rsi, r12
mov rdx, qword [rbp + 0x310]
lea r10, [rsi + rdx]
mov r12, rsi
cmp r10, rdi
jae 0x1800312a0
movzx r10d, byte [rbx + r10]
mov rdx, qword [rbp + 0x268]
bt rdx, r10
jae 0x180030ff0
xor r10d, r10d
mov r11, r12
nop word cs:[rax + rax]
lea rsi, [r15 + r10]
cmp rsi, r13
jae 0x180031060
lea rdx, [r15 + r11]
cmp rdx, rdi
jae 0x1800325b9
movzx edx, byte [r9 + r10]
lea rsi, [r11 + 1]
inc r10
cmp dl, byte [r8 + r11]
mov r11, rsi
je 0x180031030
jmp 0x180030ff6
test cl, cl
je 0x1800310bb
lea r11, [r12 - 1]
lea rsi, [rbx + r12]
dec rsi
mov r10, r15
mov rbx, r15
nop word cs:[rax + rax]
sub rbx, 1
jb 0x1800310c4
lea rdx, [r11 + r10]
cmp rdx, rdi
jae 0x1800326cf
mov rdx, qword [rbp + 0x458]
movzx edx, byte [rdx + r10 - 1]
cmp dl, byte [rsi + r10]
mov r10, rbx
je 0x180031080
add r12, rax
mov rsi, r12
mov rbx, qword [rbp + 0x278]
jmp 0x180030ff6
test r15, r15
jne 0x1800328cd
lea rax, [r12 + r13]
mov qword [rbp + 0x450], 0xffffffffffffffff
mov qword [rbp + 0x358], rax
mov rdx, rax
sub r12, qword [rbp + 0x350]
mov rax, qword [rbp + 0x460]
mov rbx, qword [rbp + 0x440]
sub rax, rbx
cmp rax, r12
mov qword [rbp + 0x158], rdx
jae 0x180031160
add rbx, r12
mov rcx, qword [rbp + 0x460]
jb 0x180032732
lea rsi, [rcx + rcx]
cmp rsi, rbx
cmovbe rsi, rbx
cmp rsi, 9
mov eax, 8
cmovb rsi, rax
test rsi, rsi
js 0x180032732
test rcx, rcx
je 0x180031176
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3b0], rcx
mov eax, 1
jmp 0x180031178
mov rcx, rbx
add rbx, r12
mov rax, qword [rbp + 0x448]
mov rsi, qword [rbp + 0x460]
jmp 0x1800311b5
xor eax, eax
mov qword [rbp + 0x3a8], rax
mov edx, 1
lea rcx, [rbp + 0x220]
mov r8, rsi
lea r9, [rbp + 0x3a0]
call fcn.180014ba0
cmp dword [rbp + 0x220], 1
je 0x180032794
mov rax, qword [rbp + 0x228]
mov rcx, qword [rbp + 0x440]
mov rdx, qword [rbp + 0x350]
add rdx, qword [rbp + 0x280]
mov qword [rbp + 0x448], rax
add rcx, rax
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp + 0x460], rsi
sub rsi, rbx
mov r8, qword [rbp + 0x270]
cmp rsi, r8
jae 0x180030ce0
mov rcx, rbx
add rcx, r8
mov rdx, qword [rbp + 0x460]
jb 0x180032712
lea rsi, [rdx + rdx]
cmp rsi, rcx
cmovbe rsi, rcx
cmp rsi, 9
mov eax, 8
cmovb rsi, rax
test rsi, rsi
js 0x180032712
mov r12, rcx
test rdx, rdx
je 0x180031247
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3b0], rdx
mov eax, 1
jmp 0x180031249
xor eax, eax
mov qword [rbp + 0x3a8], rax
mov edx, 1
lea rcx, [rbp + 0x220]
mov r8, rsi
lea r9, [rbp + 0x3a0]
call fcn.180014ba0
cmp dword [rbp + 0x220], 1
je 0x180032759
mov rax, qword [rbp + 0x228]
mov qword [rbp + 0x460], rsi
mov qword [rbp + 0x440], r12
mov r8, qword [rbp + 0x270]
jmp 0x180030cf2
mov r12, qword [rbp + 0x440]
mov qword [rbp + 0x418], r12
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x408], rax
mov rcx, qword [rbp + 0x448]
mov qword [rbp + 0x410], rcx
mov rbx, qword [rbp + 0x180]
sub rbx, qword [rbp + 0x350]
sub rax, r12
cmp rax, rbx
mov r14, qword [rbp + 0x170]
mov rdi, qword [rbp + 0x178]
mov rsi, qword [rbp + 0x280]
jae 0x180031324
mov qword [rsp + 0x20], 1
mov r9d, 1
lea rcx, [rbp + 0x408]
mov rdx, r12
mov r8, rbx
call fcn.180186540
mov rcx, qword [rbp + 0x410]
mov r12, qword [rbp + 0x418]
mov r15, qword [rbp + 0x318]
mov rdx, qword [rbp + 0x350]
add rdx, rsi
add rcx, r12
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
add r12, rbx
mov qword [rbp + 0x3b0], r12
movups xmm0, xmmword [rbp + 0x408]
movaps xmmword [rbp + 0x3a0], xmm0
mov rdx, qword [rbp + 0x2c0]
test rdx, rdx
je 0x180031372
mov r8d, 1
mov rcx, rsi
call fcn.18006a580
mov rax, qword [rbp + 0x3b0]
mov qword [rbp + 0x2d0], rax
movdqa xmm0, xmmword [rbp + 0x3a0]
movdqa xmmword [rbp + 0x2c0], xmm0
dec qword [rdi]
jne 0x180030b50
mov rsi, qword [rdi + 0x28]
dec qword [rsi]
jne 0x1800313c0
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x1800313ba
mov rcx, qword [rsi + 0x18]
mov r8d, 1
call fcn.18006a580
dec qword [rsi + 8]
je 0x1800313fa
mov rdx, qword [rdi + 0x10]
test rdx, rdx
je 0x1800313d8
mov rcx, qword [rdi + 0x18]
mov r8d, 1
call fcn.18006a580
dec qword [rdi + 8]
jne 0x180030b50
mov edx, 0x40
mov r8d, 8
mov rcx, rdi
call fcn.18006a580
jmp 0x180030b50
mov edx, 0x28
mov r8d, 8
mov rcx, rsi
call fcn.18006a580
mov rdx, qword [rdi + 0x10]
test rdx, rdx
jne 0x1800313c9
jmp 0x1800313d8
mov r14, rsi
mov r8, qword [rbp + 0x2a0]
mov rax, r8
sub rax, r14
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
cmp r8, r14
je 0x1800314f0
mov rsi, rdx
shr rsi, 4
add r14, 0x10
jmp 0x18003146d
add r14, 0x18
dec rsi
je 0x1800314f0
mov rdi, qword [r14]
dec qword [rdi]
jne 0x180031460
mov rbx, qword [rdi + 0x28]
dec qword [rbx]
jne 0x18003149c
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x180031496
mov rcx, qword [rbx + 0x18]
mov r8d, 1
call fcn.18006a580
dec qword [rbx + 8]
je 0x1800314cf
mov rdx, qword [rdi + 0x10]
test rdx, rdx
je 0x1800314b4
mov rcx, qword [rdi + 0x18]
mov r8d, 1
call fcn.18006a580
dec qword [rdi + 8]
jne 0x180031460
mov edx, 0x40
mov r8d, 8
mov rcx, rdi
call fcn.18006a580
jmp 0x180031460
mov edx, 0x28
mov r8d, 8
mov rcx, rbx
call fcn.18006a580
mov rdx, qword [rdi + 0x10]
test rdx, rdx
jne 0x1800314a5
jmp 0x1800314b4
cmp qword [rbp + 0x2b0], 0
je 0x18003150f
mov r8d, 8
mov rcx, r15
mov rdx, qword [rbp + 0x2b8]
call fcn.18006a580
mov rsi, qword [rbp + 0x208]
inc qword [rsi]
je 0x1800329b3
mov qword [rbp + 0x220], rsi
movups xmm6, xmmword [rbp + 0x210]
lea rcx, [rbp + 0x3a0]
lea rdx, [rbp + 0x1f0]
call fcn.180178bb0
mov rdx, qword [rbp + 0x3a0]
mov rdi, qword [rbp + 0x2c0]
mov rbx, qword [rbp + 0x2c8]
mov r14, qword [rbp + 0x2d0]
test rdx, rdx
je 0x180031573
mov rcx, qword [rbp + 0x3a8]
mov r8d, 1
call fcn.18006a580
mov qword [rbp + 0x3a0], rdi
mov qword [rbp + 0x3a8], rbx
mov qword [rbp + 0x3b0], r14
mov qword [rbp + 0x3b8], rsi
movups xmmword [rbp + 0x3c0], xmm6
mov byte [rbp + 0x476], 0
lea rcx, [rbp + 0xa0]
lea rdx, [rbp + 0x3a0]
call fcn.180018f20
mov rdi, qword [rbp + 0x1a0]
cmp qword [rbp + 0x2a8], 0
jne 0x180031735
mov rsi, qword [rbp + 0x368]
mov r14, qword [rbp + 0x370]
test r14, r14
je 0x180031680
lea r15, [rsi + 0x10]
jmp 0x1800315fd
add r15, 0x18
dec r14
je 0x180031680
mov rdi, qword [r15]
dec qword [rdi]
jne 0x1800315f0
mov rbx, qword [rdi + 0x28]
dec qword [rbx]
jne 0x18003162c
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x180031626
mov rcx, qword [rbx + 0x18]
mov r8d, 1
call fcn.18006a580
dec qword [rbx + 8]
je 0x18003165f
mov rdx, qword [rdi + 0x10]
test rdx, rdx
je 0x180031644
mov rcx, qword [rdi + 0x18]
mov r8d, 1
call fcn.18006a580
dec qword [rdi + 8]
jne 0x1800315f0
mov edx, 0x40
mov r8d, 8
mov rcx, rdi
call fcn.18006a580
jmp 0x1800315f0
mov edx, 0x28
mov r8d, 8
mov rcx, rbx
call fcn.18006a580
mov rdx, qword [rdi + 0x10]
test rdx, rdx
jne 0x180031635
jmp 0x180031644
mov rax, qword [rbp + 0x360]
test rax, rax
je 0x1800316a2
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, rsi
call fcn.18006a580
mov rdx, qword [rbp + 0x320]
test rdx, rdx
je 0x1800316c0
mov rcx, qword [rbp + 0x328]
mov r8d, 1
call fcn.18006a580
mov rsi, qword [rbp + 0x208]
dec qword [rsi]
jne 0x1800316ea
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x1800316e4
mov rcx, qword [rsi + 0x18]
mov r8d, 1
call fcn.18006a580
dec qword [rsi + 8]
je 0x180031711
mov rdx, qword [rbp + 0x1f0]
test rdx, rdx
je 0x1800307f0
mov rcx, qword [rbp + 0x1f8]
mov r8d, 1
call fcn.18006a580
jmp 0x1800307f0
mov edx, 0x28
mov r8d, 8
mov rcx, rsi
call fcn.18006a580
mov rdx, qword [rbp + 0x1f0]
test rdx, rdx
jne 0x1800316fa
jmp 0x1800307f0
lea rcx, [rbp + 0x3a0]
lea rdx, [rbp + 0x1f0]
call fcn.180017f80
mov rax, qword [rbp + 0x3b0]
mov qword [rbp + 0x1c0], rax
movups xmm0, xmmword [rbp + 0x3a0]
movaps xmmword [rbp + 0x1b0], xmm0
lea rax, [rbp + 0x3b8]
movdqu xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movdqa xmmword [rbp + 0x100], xmm0
movaps xmmword [rbp + 0x110], xmm1
movaps xmmword [rbp + 0x120], xmm2
lea rax, [rbp + 0x320]
mov qword [rbp + 0x220], rax
lea rax, [0x180015400]
mov qword [rbp + 0x228], rax
lea rcx, [rbp + 0x1b0]
mov qword [rbp + 0x230], rcx
mov qword [rbp + 0x238], rax
lea rax, [0x1801a2958]
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3a8], 2
mov qword [rbp + 0x3c0], 0
lea rax, [rbp + 0x220]
mov qword [rbp + 0x3b0], rax
mov qword [rbp + 0x3b8], 2
mov byte [rbp + 0x477], 1
lea rcx, [rbp + 0x68]
lea rdx, [rbp + 0x3a0]
call fcn.1801776a0
mov rbx, qword [rbp + 0x68]
mov r14, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
mov rcx, r14
call fcn.18000e280
test rdx, rdx
js 0x180032967
mov rsi, rax
mov r12, rdx
mov r15, rdi
je 0x18003185d
movzx eax, byte [0x18028ecd1]
mov edi, 1
mov edx, 1
mov rcx, r12
call fcn.18006a570
test rax, rax
jne 0x180031862
jmp 0x180032979
mov eax, 1
mov qword [rbp + 0x348], rax
mov rcx, rax
mov rdx, rsi
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
test rbx, rbx
je 0x18003188d
mov r8d, 1
mov rcx, r14
mov rdx, rbx
call fcn.18006a580
mov rsi, qword [rbp + 0x370]
mov rax, rsi
mov ecx, 0x18
mul rcx
mov rdi, rax
jo 0x18003299f
mov ebx, 0
movabs rax, 0x7ffffffffffffff8
cmp rdi, rax
ja 0x1800329a1
test rdi, rdi
je 0x180031939
mov r14, qword [rbp + 0x368]
movzx eax, byte [0x18028ecd1]
mov ebx, 8
mov edx, 8
mov rcx, rdi
call fcn.18006a570
test rax, rax
je 0x1800329a1
test rsi, rsi
je 0x18003193e
xor ecx, ecx
mov rdx, rsi
nop dword [rax + rax]
cmp rdi, rcx
je 0x18003193e
mov r8, qword [r14]
mov r9, qword [r14 + 8]
mov r10, qword [r14 + 0x10]
inc qword [r10]
je 0x1800329b3
dec rdx
add r14, 0x18
mov qword [rax + rcx], r8
mov qword [rax + rcx + 8], r9
mov qword [rax + rcx + 0x10], r10
add rcx, 0x18
test rdx, rdx
jne 0x180031900
jmp 0x18003193e
mov eax, 8
movdqa xmm0, xmmword [rbp + 0x100]
movaps xmm1, xmmword [rbp + 0x110]
movaps xmm2, xmmword [rbp + 0x120]
movaps xmmword [rbp + 0x3c0], xmm2
movaps xmmword [rbp + 0x3b0], xmm1
movdqa xmmword [rbp + 0x3a0], xmm0
mov qword [rbp + 0x3d0], r12
mov rcx, qword [rbp + 0x348]
mov qword [rbp + 0x3d8], rcx
mov qword [rbp + 0x3e0], r12
mov qword [rbp + 0x3e8], rsi
mov qword [rbp + 0x3f0], rax
mov qword [rbp + 0x3f8], rsi
mov rcx, qword [rbp + 0x380]
mov rax, qword [rbp + 0x398]
cmp rax, rcx
jne 0x1800319c8
lea rcx, [rbp + 0x380]
call fcn.180039b30
mov rcx, qword [rbp + 0x380]
mov rax, qword [rbp + 0x398]
mov rdx, qword [rbp + 0x390]
add rdx, rax
cmp rdx, rcx
mov r8d, 0
cmovb rcx, r8
sub rdx, rcx
mov rcx, qword [rbp + 0x388]
lea rdx, [rdx + rdx*2]
shl rdx, 5
movdqa xmm0, xmmword [rbp + 0x3a0]
movaps xmm1, xmmword [rbp + 0x3b0]
movaps xmm2, xmmword [rbp + 0x3c0]
movaps xmm3, xmmword [rbp + 0x3d0]
movaps xmm4, xmmword [rbp + 0x3e0]
movaps xmm5, xmmword [rbp + 0x3f0]
movups xmmword [rcx + rdx + 0x50], xmm5
movups xmmword [rcx + rdx + 0x40], xmm4
movups xmmword [rcx + rdx + 0x30], xmm3
movups xmmword [rcx + rdx + 0x20], xmm2
movups xmmword [rcx + rdx + 0x10], xmm1
movdqu xmmword [rcx + rdx], xmm0
inc rax
mov qword [rbp + 0x398], rax
mov rax, qword [r15 + 0x30]
test rax, rax
je 0x180031a5a
movdqu xmm0, xmmword [r15 + 0x38]
mov ecx, 1
jmp 0x180031a60
pxor xmm0, xmm0
xor ecx, ecx
mov qword [rbp + 0x220], rcx
mov qword [rbp + 0x228], 0
mov qword [rbp + 0x230], rax
movq qword [rbp + 0x238], xmm0
mov qword [rbp + 0x240], rcx
mov qword [rbp + 0x248], 0
mov qword [rbp + 0x250], rax
movdqu xmmword [rbp + 0x258], xmm0
jmp 0x180031ac3
mov byte [rbp + 0x477], 0
lea rcx, [rbp + 0x138]
call fcn.1800239d0
mov byte [rbp + 0x477], 0
lea rcx, [rbp + 0x220]
call fcn.18000d400
test rax, rax
je 0x1800323ee
mov qword [rbp + 0x338], rax
mov rax, qword [0x180277178]
movzx eax, byte [rax]
test al, al
jne 0x180031c60
mov ecx, dword [0x18028e688]
test cl, 1
jne 0x180031c60
cmp ecx, 0x100
jae 0x180031b35
mov edx, ecx
or edx, 0x20000000
mov eax, ecx
lock cmpxchg dword [0x18028e688], edx
jne 0x180031b35
movd xmm0, ecx
pshufd xmm0, xmm0, 0x50
lea rax, [0x18028e688]
jmp 0x180031b83
mov byte [rbp + 0x477], 0
lea rcx, [rbp + 0x3a0]
lea rdx, [0x18028e688]
lea r8, [rbp + 0x2c0]
lea r9, [0x18028e5d8]
call fcn.1801844d0
mov eax, dword [rbp + 0x3a0]
test eax, eax
je 0x180031c16
cmp eax, 2
je 0x180031c60
mov rax, qword [rbp + 0x3a8]
movq xmm0, qword [rbp + 0x3b0]
lea rcx, [0x18028e5d8]
mov qword [rbp + 0x408], rcx
mov qword [rbp + 0x410], rax
movq qword [rbp + 0x418], xmm0
mov byte [rbp + 0x477], 0
lea rcx, [rbp + 0x3a0]
lea rdx, [rbp + 0x408]
call fcn.18018e730
mov r8d, dword [rbp + 0x3b0]
mov rcx, qword [rbp + 0x3a8]
mov eax, r8d
or eax, 0x20000000
mov edx, dword [rbp + 0x3b4]
lock cmpxchg dword [rcx], edx
je 0x180031c60
xor edx, r8d
or edx, 0x20000000
mov eax, dword [rcx]
nop dword [rax + rax]
mov r8d, eax
xor r8d, edx
lock cmpxchg dword [rcx], r8d
jne 0x180031bf0
cmp eax, 0x40000000
jb 0x180031c60
xor eax, edx
mov byte [rbp + 0x477], 0
mov edx, eax
call fcn.18018e0a0
jmp 0x180031c60
mov rcx, qword [rbp + 0x3a8]
mov edx, 0xffffff00
lock xadd dword [rcx], edx
mov eax, edx
and eax, 0x3fffff00
cmp eax, 0x100
setne al
cmp edx, 0x40000000
setb r8b
or r8b, al
jne 0x180031c60
add edx, 0xffffff00
mov byte [rbp + 0x477], 0
call fcn.18018e0a0
nop word cs:[rax + rax]
mov rax, qword [rbp + 0x338]
mov r8, qword [rax + 0x10]
test r8, r8
je 0x180032845
mov rdx, qword [rax + 8]
cmp byte [rdx], 0x7b
jne 0x180032845
cmp byte [rdx + r8 - 1], 0x7d
jne 0x180032845
cmp r8, 1
je 0x18003285d
cmp byte [rdx + 1], 0xbf
jle 0x18003285d
inc rdx
add r8, 0xfffffffffffffffe
mov byte [rbp + 0x477], 0
lea rcx, [0x18028e5d8]
call fcn.180027730
mov rsi, rax
lea rax, [rbp + 0x338]
mov qword [rbp + 0x408], rax
lea rax, [0x180067960]
mov qword [rbp + 0x410], rax
lea rax, str.failed_to_find_lookup
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3a8], 1
mov qword [rbp + 0x3c0], 0
lea rax, [rbp + 0x408]
mov qword [rbp + 0x3b0], rax
mov qword [rbp + 0x3b8], 1
mov byte [rbp + 0x477], 0
lea rcx, [rbp + 0x50]
lea rdx, [rbp + 0x3a0]
call fcn.1801776a0
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x58]
test rsi, rsi
je 0x1800328aa
test rdx, rdx
je 0x180031d4f
mov r8d, 1
call fcn.18006a580
mov byte [rbp + 0x477], 0
lea rcx, [rbp + 0x3a0]
mov rdx, rsi
mov r8, qword [rbp + 0x188]
mov r9, qword [rbp + 0x2a8]
call fcn.180027ad0
mov rcx, qword [rbp + 0x3a0]
mov rax, qword [rbp + 0x3a8]
mov rdx, qword [rbp + 0x3b0]
lea r14, [rdx + rdx*2]
shl r14, 4
add r14, rax
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], r14
jmp 0x180031e4d
mov rcx, qword [rbp + 0x380]
mov rax, qword [rbp + 0x398]
mov rdx, qword [rbp + 0x390]
add rdx, rax
cmp rdx, rcx
mov r8d, 0
cmovae r8, rcx
sub rdx, r8
mov rcx, qword [rbp + 0x388]
lea rdx, [rdx + rdx*2]
shl rdx, 5
movdqa xmm0, xmmword [rbp + 0x3a0]
movaps xmm1, xmmword [rbp + 0x3b0]
movaps xmm2, xmmword [rbp + 0x3c0]
movaps xmm3, xmmword [rbp + 0x3d0]
movaps xmm4, xmmword [rbp + 0x3e0]
movaps xmm5, xmmword [rbp + 0x3f0]
movups xmmword [rcx + rdx + 0x50], xmm5
movups xmmword [rcx + rdx + 0x40], xmm4
movups xmmword [rcx + rdx + 0x30], xmm3
movups xmmword [rcx + rdx + 0x20], xmm2
movups xmmword [rcx + rdx + 0x10], xmm1
movdqu xmmword [rcx + rdx], xmm0
inc rax
mov qword [rbp + 0x398], rax
mov rax, r15
cmp rax, r14
je 0x180031ab0
lea r15, [rax + 0x30]
mov qword [rbp + 0x140], r15
mov rcx, qword [rax]
mov rdx, qword [rax + 0x28]
mov qword [rbp + 0xf0], rdx
movups xmm0, xmmword [rax + 0x18]
movaps xmmword [rbp + 0xe0], xmm0
movdqu xmm0, xmmword [rax + 8]
movdqa xmmword [rbp + 0xd0], xmm0
mov rax, rcx
neg rax
jo 0x180031ab0
mov qword [rbp + 0x2c0], rcx
mov rax, qword [rbp + 0xf0]
lea rcx, [rbp + 0x2c8]
mov qword [rcx + 0x20], rax
movdqa xmm0, xmmword [rbp + 0xd0]
movaps xmm1, xmmword [rbp + 0xe0]
movups xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov byte [rbp + 0x470], 1
lea rcx, [rbp + 0x408]
lea rdx, [rbp + 0x1f0]
lea r8, [rbp + 0x2c0]
call fcn.180017bc0
lea rax, [rbp + 0x320]
mov qword [rbp + 0x1d0], rax
lea rax, [0x180015400]
mov qword [rbp + 0x1d8], rax
lea rax, [rbp + 0x338]
mov qword [rbp + 0x1e0], rax
lea rax, [0x180067d30]
mov qword [rbp + 0x1e8], rax
lea rax, [0x1801a2958]
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3a8], 2
mov qword [rbp + 0x3c0], 0
lea rax, [rbp + 0x1d0]
mov qword [rbp + 0x3b0], rax
mov qword [rbp + 0x3b8], 2
mov byte [rbp + 0x472], 1
mov byte [rbp + 0x471], 1
lea rcx, [rbp + 0x38]
lea rdx, [rbp + 0x3a0]
call fcn.1801776a0
mov rbx, qword [rbp + 0x40]
mov r13, qword [rbp + 0x48]
test r13, r13
je 0x180032120
lea rax, [rbx + r13]
xor esi, esi
mov rdx, rbx
jmp 0x180031fbf
movzx r8d, r8b
mov r9, qword [0x18028cbf8]
movzx r8d, byte [r9 + r8]
shr r8b, 1
test r8b, 1
je 0x180032103
sub rsi, rcx
add rsi, rdx
cmp rdx, rax
je 0x180032100
mov rcx, rdx
movzx edx, byte [rdx]
movzx r8d, dl
test r8b, r8b
js 0x180031ff0
lea rdx, [rcx + 1]
lea r9d, [r8 - 9]
cmp r9d, 5
jb 0x180031fb0
jmp 0x180032090
mov r9d, r8d
and r9d, 0x1f
movzx r10d, byte [rcx + 1]
and r10d, 0x3f
cmp r8b, 0xdf
jbe 0x18003204d
movzx r8d, byte [rcx + 2]
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
cmp dl, 0xf0
jb 0x18003206b
lea rdx, [rcx + 4]
movzx r10d, byte [rcx + 3]
and r9d, 7
shl r9d, 0x12
shl r8d, 6
and r10d, 0x3f
or r10d, r8d
or r10d, r9d
mov r8d, r10d
lea r9d, [r8 - 9]
cmp r9d, 5
jb 0x180031fb0
jmp 0x180032090
lea rdx, [rcx + 2]
shl r9d, 6
or r9d, r10d
mov r8d, r9d
lea r9d, [r8 - 9]
cmp r9d, 5
jb 0x180031fb0
jmp 0x180032090
lea rdx, [rcx + 3]
shl r9d, 0xc
or r8d, r9d
lea r9d, [r8 - 9]
cmp r9d, 5
jb 0x180031fb0
nop word cs:[rax + rax]
cmp r8d, 0x20
je 0x180031fb0
cmp r8d, 0x80
jb 0x180032103
mov r9d, r8d
shr r9d, 8
cmp r9d, 0x1f
jg 0x1800320cb
test r9d, r9d
je 0x1800320eb
cmp r9d, 0x16
jne 0x180032103
cmp r8d, 0x1680
sete r8b
jmp 0x180031fa6
cmp r9d, 0x20
je 0x180031f93
cmp r9d, 0x30
jne 0x180032103
cmp r8d, 0x3000
sete r8b
jmp 0x180031fa6
movzx r8d, r8b
mov r9, qword [0x18028cbf8]
movzx r8d, byte [r9 + r8]
jmp 0x180031fa6
mov rsi, r13
mov r12, qword [rbp + 0x38]
sub r13, rsi
jns 0x18003212f
jmp 0x1800327ea
xor esi, esi
mov r12, qword [rbp + 0x38]
sub r13, rsi
js 0x1800327ea
je 0x180032160
movzx eax, byte [0x18028ecd1]
mov edi, 1
mov edx, 1
mov rcx, r13
call fcn.18006a570
test rax, rax
jne 0x180032165
jmp 0x1800327fc
mov eax, 1
add rsi, rbx
mov qword [rbp + 0x340], rax
mov rcx, rax
mov rdx, rsi
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
test r12, r12
je 0x180032193
mov r8d, 1
mov rcx, rbx
mov rdx, r12
call fcn.18006a580
mov rsi, qword [rbp + 0x370]
mov rax, rsi
mov ecx, 0x18
mul rcx
mov rdi, rax
mov qword [rbp + 0x458], r13
jo 0x180032825
mov ebx, 0
movabs rax, 0x7ffffffffffffff8
cmp rdi, rax
ja 0x180032827
test rdi, rdi
je 0x180032250
mov r12, qword [rbp + 0x368]
movzx eax, byte [0x18028ecd1]
mov ebx, 8
mov edx, 8
mov rcx, rdi
call fcn.18006a570
test rax, rax
je 0x180032827
test rsi, rsi
je 0x180032255
xor ecx, ecx
mov rdx, rsi
nop word cs:[rax + rax]
cmp rdi, rcx
je 0x180032255
mov r8, qword [r12]
mov r9, qword [r12 + 8]
mov r10, qword [r12 + 0x10]
inc qword [r10]
je 0x1800329b3
dec rdx
add r12, 0x18
mov qword [rax + rcx], r8
mov qword [rax + rcx + 8], r9
mov qword [rax + rcx + 0x10], r10
add rcx, 0x18
test rdx, rdx
jne 0x180032210
jmp 0x180032255
mov eax, 8
mov qword [rbp + 0x2f8], rsi
mov qword [rbp + 0x300], rax
mov qword [rbp + 0x308], rsi
mov rax, qword [rbp + 0x338]
mov rsi, qword [rax + 8]
mov rdi, qword [rax + 0x10]
movdqu xmm0, xmmword [rbp + 0x2c0]
movups xmm1, xmmword [rbp + 0x2d0]
movups xmm2, xmmword [rbp + 0x2e0]
lea rax, [rbp + 0x3b0]
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov qword [rbp + 0x3a0], 1
mov qword [rbp + 0x3a8], 1
movzx eax, byte [0x18028ecd1]
mov ecx, 0x40
mov edx, 8
call fcn.18006a570
test rax, rax
je 0x1800327d6
movdqu xmm0, xmmword [rbp + 0x3a0]
movups xmm1, xmmword [rbp + 0x3b0]
movups xmm2, xmmword [rbp + 0x3c0]
movups xmm3, xmmword [rbp + 0x3d0]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov qword [rbp + 0x1d0], rsi
mov qword [rbp + 0x1d8], rdi
mov qword [rbp + 0x1e0], rax
mov rsi, qword [rbp + 0x308]
cmp rsi, qword [rbp + 0x2f8]
jne 0x180032335
lea rcx, [rbp + 0x2f8]
call fcn.180014e80
mov rax, qword [rbp + 0x300]
lea rcx, [rsi + rsi*2]
mov rdx, qword [rbp + 0x1e0]
mov qword [rax + rcx*8 + 0x10], rdx
movups xmm0, xmmword [rbp + 0x1d0]
movups xmmword [rax + rcx*8], xmm0
inc rsi
mov qword [rbp + 0x308], rsi
movups xmm0, xmmword [rbp + 0x408]
movups xmm1, xmmword [rbp + 0x418]
movups xmm2, xmmword [rbp + 0x428]
movaps xmmword [rbp + 0x3c0], xmm2
movaps xmmword [rbp + 0x3b0], xmm1
movaps xmmword [rbp + 0x3a0], xmm0
mov rcx, qword [rbp + 0x458]
mov qword [rbp + 0x3d0], rcx
mov rax, qword [rbp + 0x340]
mov qword [rbp + 0x3d8], rax
mov qword [rbp + 0x3e0], rcx
lea rax, [rbp + 0x3b8]
mov qword [rax + 0x40], rsi
movdqu xmm0, xmmword [rbp + 0x2f8]
movdqu xmmword [rax + 0x30], xmm0
mov rcx, qword [rbp + 0x380]
mov rax, qword [rbp + 0x398]
cmp rax, rcx
jne 0x180031dce
lea rcx, [rbp + 0x380]
call fcn.180039b30
jmp 0x180031dc0
mov rdx, qword [rbp + 0x1b0]
test rdx, rdx
je 0x18003240c
mov rcx, qword [rbp + 0x1b8]
mov r8d, 1
call fcn.18006a580
mov rax, qword [rbp + 0x368]
mov rcx, qword [rbp + 0x370]
mov qword [rbp + 0x450], rcx
mov qword [rbp + 0x460], rax
lea rcx, [rax + 0x10]
mov qword [rbp + 0x458], 0
nop word [rax + rax]
mov rax, qword [rbp + 0x458]
cmp qword [rbp + 0x450], rax
je 0x180032468
inc rax
mov qword [rbp + 0x458], rax
lea rsi, [rcx + 0x18]
call fcn.1800521f0
mov rcx, rsi
jmp 0x180032440
mov rax, qword [rbp + 0x360]
test rax, rax
je 0x1800316a2
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, qword [rbp + 0x460]
jmp 0x18003169d
mov r9, qword [rbp + 0xa0]
mov r10, qword [rbp + 0xa8]
mov r8, qword [rbp + 0xb8]
lea rcx, [r10 + 1]
movdqa xmm0, xmmword [r9]
test r10, r10
je 0x1800324d5
mov edx, 0x30
mov rax, rcx
mul rdx
lea rdx, [r10 + rax]
add rdx, 0x11
mov r10, r9
sub r10, rax
mov eax, 0x10
jmp 0x1800324d7
xor eax, eax
lea r11, [r9 + 0x10]
pmovmskb esi, xmm0
not esi
add rcx, r9
mov qword [rbp - 8], rax
mov qword [rbp], rdx
mov qword [rbp + 8], r10
mov qword [rbp + 0x10], r9
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x20], rcx
mov word [rbp + 0x28], si
mov qword [rbp + 0x30], r8
mov byte [rbp + 0x473], 0
lea rdx, [rbp - 8]
mov rsi, qword [rbp + 0x1a8]
mov rcx, rsi
call fcn.180025640
lea rcx, [rbp + 0x380]
call fcn.180039cc0
mov rax, qword [rbp + 0x380]
test rax, rax
je 0x180032550
mov rcx, qword [rbp + 0x388]
shl rax, 5
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.18006a580
mov rax, rsi
movaps xmm6, xmmword [rbp + 0x480]
add rsp, 0x518
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, qword [rbp + 0x440]
mov qword [rbp + 0x418], rcx
mov rcx, qword [rbp + 0x460]
mov qword [rbp + 0x408], rcx
mov rcx, qword [rbp + 0x448]
mov qword [rbp + 0x410], rcx
add r12, rax
cmp rdi, r12
cmova r12, rdi
lea r8, [0x1801a2570]
mov rcx, r12
mov rdx, rdi
call fcn.18019e2f8
jmp 0x1800329b3
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x408], rax
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
add r12, r15
cmp rdi, r12
cmova r12, rdi
lea r8, [0x1801a2570]
mov rcx, r12
mov rdx, rdi
call fcn.18019e2f8
jmp 0x1800329b3
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x408], rax
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
lea r8, [0x1801a2540]
mov rdx, r13
call fcn.18019e2f8
jmp 0x1800329b3
mov rcx, qword [rbp + 0x440]
mov qword [rbp + 0x418], rcx
mov rcx, qword [rbp + 0x460]
mov qword [rbp + 0x408], rcx
mov rcx, qword [rbp + 0x448]
mov qword [rbp + 0x410], rcx
lea r8, [0x1801a2558]
mov rcx, rax
mov rdx, rdi
call fcn.18019e2f8
jmp 0x1800329b3
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x408], rax
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
lea rax, [0x1801a2820]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, rdi
mov r8, r15
mov r9, rdi
call fcn.18019e810
jmp 0x1800329b3
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x408], rax
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
lea rcx, [r12 + r10 - 1]
lea r8, [0x1801a2558]
mov rdx, rdi
call fcn.18019e2f8
jmp 0x1800329b3
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x408], rdx
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
xor ecx, ecx
jmp 0x18003278a
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x418], rax
mov qword [rbp + 0x408], rcx
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
xor ecx, ecx
jmp 0x1800327cc
mov qword [rbp + 0x418], rbx
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x408], rax
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
mov rcx, qword [rbp + 0x228]
mov rdx, qword [rbp + 0x230]
call fcn.18019deb5
jmp 0x1800329b3
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x408], rax
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
mov rcx, qword [rbp + 0x228]
mov rdx, qword [rbp + 0x230]
call fcn.18019deb5
jmp 0x1800329b3
mov ecx, 8
mov edx, 0x40
call fcn.18019decf
jmp 0x1800329b3
mov qword [rbp + 0x450], r12
mov qword [rbp + 0x460], rbx
xor edi, edi
jmp 0x180032811
mov qword [rbp + 0x450], r12
mov qword [rbp + 0x460], rbx
mov qword [rbp + 0x340], r13
mov rcx, rdi
mov rdx, qword [rbp + 0x340]
call fcn.18019deb5
jmp 0x1800329b3
xor ebx, ebx
mov byte [rbp + 0x46f], 1
mov byte [rbp + 0x46e], 1
mov rcx, rbx
mov rdx, rdi
call fcn.18019deb5
jmp 0x1800329b3
mov byte [rbp + 0x477], 0
lea rcx, str.src_translatorlookuplookup_table.rs
call fcn.18019e0f0
jmp 0x1800329b3
lea r9, [r8 - 1]
mov byte [rbp + 0x477], 0
lea rax, str.src_translatorlookuplookup_table.rs
mov qword [rsp + 0x20], rax
mov rax, r8
mov r8d, 1
mov rcx, rdx
mov rdx, rax
call fcn.18019e810
jmp 0x1800329b3
lea rcx, str.split_segment_failed_for_lookup_table
lea r8, str.src_translatorlookuplookup_table.rs
mov edx, 0x25
call fcn.18019e110
jmp 0x1800329b3
mov qword [rbp + 0x458], rdx
mov rdx, qword [rbp + 0x60]
lea r8, str.src_translatorlookuplookup_table.rs
mov qword [rbp + 0x450], rcx
call fcn.18019e110
jmp 0x1800329b3
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x408], rax
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x410], rax
lea r8, [0x1801a2540]
mov rcx, qword [rbp + 0x450]
mov rdx, r13
call fcn.18019e2f8
jmp 0x1800329b3
xor edi, edi
mov byte [rbp + 0x476], 1
mov rcx, rdi
mov rdx, rsi
call fcn.18019deb5
jmp 0x1800329b3
lea rax, [0x18019fbf0]
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_9b72238eb813e9d06e9e9d270168512fbffd7ee7library_std_src_threadlocal.rs
lea r9, [0x18019fc08]
lea r8, [rbp + 0x2c0]
mov edx, 0x46
call fcn.18019e500
mov ecx, 8
mov edx, 0x28
call fcn.18019decf
jmp 0x1800329b3
mov qword [rbp + 0x450], r14
mov qword [rbp + 0x458], rbx
xor edi, edi
jmp 0x18003298e
mov qword [rbp + 0x450], r14
mov qword [rbp + 0x458], rbx
mov qword [rbp + 0x348], r12
mov rcx, rdi
mov rdx, qword [rbp + 0x348]
call fcn.18019deb5
jmp 0x1800329b3
xor ebx, ebx
mov qword [rbp + 0x458], r12
mov rcx, rbx
mov rdx, rdi
call fcn.18019deb5
ud2