Function at 0x180028970
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1a8
lea rbp, [rsp + 0x80]
movdqa xmmword [rbp + 0x110], xmm8
movdqa xmmword [rbp + 0x100], xmm7
movdqa xmmword [rbp + 0xf0], xmm6
mov qword [rbp + 0xe8], 0xfffffffffffffffe
mov rsi, rdx
mov rbx, rcx
pxor xmm0, xmm0
movdqa xmmword [rbp - 0x10], xmm0
movdqa xmmword [rbp - 0x20], xmm0
lea rax, [rdx + 8]
mov qword [rbp - 0x50], rax
lea rax, [rcx + 0x48]
mov qword [rbp + 0xe0], rax
lea rax, [rcx + 0x98]
mov qword [rbp - 0x48], rax
lea r14, [0x1800453ac]
mov r12, rbp
lea r13, [rbp + 0x60]
movabs r15, 0x3800000000000000
xor edi, edi
jmp 0x180028a60
add qword [rsi + 0x10], 0xfffffffffffffff8
mov rax, qword [rbp - 8]
mov ecx, eax
and ecx, 0x1f
lea rdx, [rcx - 1]
shr rdx, 5
sub rcx, 1
mov r8, 0xffffffffffffffff
cmovb rdx, r8
mov r8, rax
shr r8, 5
lea r9, [r8 + r15]
test rax, rax
cmovns r9, r8
shl r9, 2
add r9, qword [rbp - 0x20]
lea rax, [r9 + rdx*4]
and ecx, 0x1f
mov qword [rbp], rax
mov qword [rbp + 8], rcx
lea rcx, [rbp - 0x20]
mov rdx, r13
mov r8, r12
call fcn.1800318e0
mov dil, 1
nop dword [rax]
test dil, 1
jne 0x180028dbf
mov eax, dword [rbx + 0x40]
dec eax
cmp eax, 0xe
ja case.0x180028a7f.10
movsxd rax, dword [r14 + rax*4]
add rax, r14
jmp rax
mov byte [rbp + 0x60], 2
mov rcx, rsi
mov rdx, r13
call fcn.180033c60
mov qword [rbp], rax
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi + 0x18]
je 0x180028c7b
mov qword [rdx], rax
add qword [rsi + 0x10], 8
jmp 0x180028c87
mov byte [rbp + 0x60], 1
mov rcx, rsi
mov rdx, r13
call fcn.180033c60
mov qword [rbp], rax
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi + 0x18]
je 0x180028ad7
mov qword [rdx], rax
add qword [rsi + 0x10], 8
jmp 0x180028ae3
mov rcx, qword [rbp - 0x50]
mov r8, r12
call fcn.18002ce40
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
cmp eax, 0xb
jne 0x180028b90
add qword [rsi + 0x10], 0xfffffffffffffff8
mov rax, qword [rbp - 8]
test rax, rax
je 0x18002908f
mov ecx, eax
and ecx, 0x1f
lea rdx, [rcx - 1]
shr rdx, 5
sub rcx, 1
mov r8, 0xffffffffffffffff
cmovb rdx, r8
mov r8, rax
shr r8, 5
lea r9, [r8 + r15]
test rax, rax
cmovns r9, r8
shl r9, 2
add r9, qword [rbp - 0x20]
mov eax, dword [r9 + rdx*4]
bt eax, ecx
jae 0x180028d36
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
cmp eax, 0xa
je 0x1800289fd
cmp eax, 0xd
jne 0x1800291e6
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
jmp 0x180028a60
cmp eax, 4
jne 0x180029e3e
mov rax, qword [rsi + 0x10]
mov rax, qword [rax - 8]
mov rcx, qword [rax + 8]
mov rdx, r12
mov r8, qword [rbp - 0x48]
call fcn.180030140
mov rax, qword [rbp]
add rax, 0x40
mov qword [rsi + 0x20], rax
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
cmp eax, 0xc
jne 0x180029097
mov rax, qword [rbp - 8]
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r15]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x20]
and eax, 0x1f
mov qword [rbp + 0xa0], rdx
mov qword [rbp + 0xa8], rax
mov r8d, 1
lea rcx, [rbp - 0x20]
lea rdx, [rbp + 0xa0]
call fcn.18001b390
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r15]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x20]
and eax, 0x1f
lea rcx, [rax + 1]
mov r8d, ecx
shr r8d, 5
lea r8, [rdx + r8*4]
and ecx, 0x1f
mov qword [rbp], r8
mov qword [rbp + 8], rcx
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x68], rax
mov rcx, r13
mov rdx, r12
xor r8d, r8d
call fcn.18001b870
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
jmp 0x180028a60
mov rcx, qword [rbp - 0x50]
mov r8, r12
call fcn.18002ce40
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
cmp eax, 0xa
je 0x180028afb
mov rax, qword [rbp - 8]
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r15]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x20]
and eax, 0x1f
mov qword [rbp + 0xa0], rdx
mov qword [rbp + 0xa8], rax
mov r8d, 1
lea rcx, [rbp - 0x20]
lea rdx, [rbp + 0xa0]
call fcn.18001b390
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r15]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x20]
and eax, 0x1f
lea rcx, [rax + 1]
mov r8d, ecx
shr r8d, 5
lea r8, [rdx + r8*4]
and ecx, 0x1f
mov qword [rbp], r8
mov qword [rbp + 8], rcx
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x68], rax
mov rcx, r13
mov rdx, r12
mov r8b, 1
call fcn.18001b870
jmp 0x180028a60
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
cmp eax, 0xb
je 0x1800289fd
cmp eax, 0xd
jne 0x18002933d
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
cmp eax, 4
jne 0x1800294b5
mov rax, qword [rsi + 0x10]
mov rax, qword [rax - 8]
mov rcx, qword [rax + 8]
mov rdx, r12
mov r8, qword [rbp - 0x48]
call fcn.180030140
mov rax, qword [rbp]
add rax, 0x40
mov qword [rsi + 0x20], rax
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
cmp eax, 0xc
jne 0x1800295c2
mov rcx, qword [rbp + 0xe0]
call fcn.180021390
mov dword [rbx + 0x40], eax
jmp 0x180028a60
xor edi, edi
jmp 0x180028b00
mov rax, qword [rbx + 0xc0]
mov qword [rbp], rax
mov rcx, rsi
mov rdx, r12
call fcn.180034cf0
jmp 0x180028b00
movq xmm6, qword [rbx + 0xd0]
movq qword [rbp], xmm6
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__dtest]
test ax, ax
jg 0x180029eeb
movq qword [rbp], xmm6
mov rcx, rsi
mov rdx, r12
call fcn.180034100
jmp 0x180028b00
mov rax, qword [rbx + 0xc8]
mov qword [rbp], rax
mov rcx, rsi
mov rdx, r12
call fcn.180035680
jmp 0x180028b00
mov byte [rbp], 0
mov rcx, rsi
mov rdx, r12
call fcn.180034510
jmp 0x180028b00
mov byte [rbp], 1
mov rcx, rsi
mov rdx, r12
call fcn.180034510
jmp 0x180028b00
mov rcx, rsi
mov rdx, qword [rbp - 0x48]
call fcn.1800350f0
jmp 0x180028b00
mov qword [rbp], 0
mov rcx, rsi
mov rdx, r12
call fcn.180034910
jmp 0x180028b00
movabs rcx, 0xdfeea8d9c0eed50c
add rcx, qword [0x180050c70]
call fcn.18003a540
movabs rdx, 0xdfeea8d9c0eead3f
add rdx, qword [0x180050c90]
lea rcx, [rbp + 0xa0]
call fcn.180002760
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xa0]
mov rcx, rbx
xor r8d, r8d
call fcn.1800274f0
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0xc0]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xc0]
mov r9, rbp
mov rcx, rsi
call fcn.18002b0f0
jmp 0x18002913f
lea rdi, [rbx + 0x68]
cmp qword [rbx + 0x68], 1
je 0x180029f7f
movabs rcx, 0xdfeea8d9c0eed50c
add rcx, qword [0x180050c70]
call fcn.18003a540
movabs rdx, 0xdfeea8d9c0eead3f
add rdx, qword [0x180050c90]
lea rcx, [rbp + 0xa0]
call fcn.180002760
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xa0]
mov rcx, rbx
mov r8d, 0x10
call fcn.1800274f0
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rdi]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0xc0]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
mov rdx, qword [rdi]
lea r8, [rbp + 0xc0]
mov r9, rbp
mov rcx, rsi
call fcn.18002b0f0
jmp 0x18002913f
movabs rcx, 0xdfeea8d9c0eed50c
add rcx, qword [0x180050c70]
call fcn.18003a540
movabs rdx, 0xdfeea8d9c0eead3f
add rdx, qword [0x180050c90]
lea rcx, [rbp + 0xa0]
call fcn.180002760
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xa0]
mov rcx, rbx
mov r8d, 0x10
call fcn.1800274f0
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0xc0]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xc0]
mov r9, rbp
mov rcx, rsi
call fcn.18002b0f0
jmp 0x18002913f
mov sil, 1
jmp 0x18002916a
movabs rcx, 0xdfeea8d9c0eed572
add rcx, qword [0x180050c70]
call fcn.18003a600
movabs rdx, 0xdfeea8d9c0eead3f
add rdx, qword [0x180050c80]
lea rcx, [rbp + 0xa0]
call fcn.180002760
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xa0]
mov rcx, rbx
mov r8d, 0xc
call fcn.1800274f0
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0xc0]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xc0]
mov r9, rbp
mov rcx, rsi
call fcn.18002b0f0
mov esi, eax
lea rcx, [rbp + 0xc0]
call fcn.180001660
mov rcx, rbp
call fcn.180028780
lea rcx, [rbp + 0x60]
call fcn.180001660
lea rcx, [rbp + 0xa0]
call fcn.180001660
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x1800291ba
mov rdx, qword [rbp - 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x1800291b5
mov rax, qword [rcx - 8]
sub rcx, rax
movabs r8, 0x5537c683897700f8
add r8, rcx
shr r8, 5
movabs rcx, 0x2a9be341c4bb808
cmp r8, rcx
jne 0x18002a02c
add rdx, 0x27
mov rcx, rax
call fcn.18003c9c4
mov eax, esi
movaps xmm6, xmmword [rbp + 0xf0]
movaps xmm7, xmmword [rbp + 0x100]
movaps xmm8, xmmword [rbp + 0x110]
add rsp, 0x1a8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
cmp byte [0x180052d6a], 0
jne 0x1800292c7
mov rax, qword [0x180050c70]
movabs rcx, 0xdfeea8d9c0eed694
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6af
xor cl, byte [rax + rdx]
mov byte [0x180052d64], cl
movabs rcx, 0xdfeea8d9c0eed695
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6b0
xor cl, byte [rax + rdx]
mov byte [0x180052d65], cl
movabs rcx, 0xdfeea8d9c0eed696
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6b1
xor cl, byte [rax + rdx]
mov byte [0x180052d66], cl
movabs rcx, 0xdfeea8d9c0eed697
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6b2
xor cl, byte [rax + rdx]
mov byte [0x180052d67], cl
movabs rcx, 0xdfeea8d9c0eed698
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6b3
xor cl, byte [rax + rdx]
mov byte [0x180052d68], cl
movabs rcx, 0xdfeea8d9c0eed699
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6b4
xor cl, byte [rax + rdx]
mov byte [0x180052d69], cl
mov byte [0x180052d6a], 1
movabs r15, 0xdfeea8d9c0eead3f
add r15, qword [0x180050ca0]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0xc0], xmm0
movdqa xmmword [rbp + 0xd0], xmm0
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18002a032
mov r14, rax
cmp rax, 0xf
ja 0x180029625
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd8], 0xf
lea rcx, [rbp + 0xc0]
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, rbp
add r14, 0xc0
jmp 0x1800297fe
cmp byte [0x180052d72], 0
jne 0x18002943f
mov rax, qword [0x180050c70]
movabs rcx, 0xdfeea8d9c0eed6cd
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6df
xor cl, byte [rax + rdx]
mov byte [0x180052d6b], cl
movabs rcx, 0xdfeea8d9c0eed6ce
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6e0
xor cl, byte [rax + rdx]
mov byte [0x180052d6c], cl
movabs rcx, 0xdfeea8d9c0eed6cf
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6e1
xor cl, byte [rax + rdx]
mov byte [0x180052d6d], cl
movabs rcx, 0xdfeea8d9c0eed6d0
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6e2
xor cl, byte [rax + rdx]
mov byte [0x180052d6e], cl
movabs rcx, 0xdfeea8d9c0eed6d1
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6e3
xor cl, byte [rax + rdx]
mov byte [0x180052d6f], cl
movabs rcx, 0xdfeea8d9c0eed6d2
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6e4
xor cl, byte [rax + rdx]
mov byte [0x180052d70], cl
movabs rcx, 0xdfeea8d9c0eed6d3
movzx ecx, byte [rax + rcx]
movabs rdx, 0xdfeea8d9c0eed6e5
xor cl, byte [rax + rdx]
mov byte [0x180052d71], cl
mov byte [0x180052d72], 1
movabs r15, 0xdfeea8d9c0eead3f
add r15, qword [0x180050ca8]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0xc0], xmm0
movdqa xmmword [rbp + 0xd0], xmm0
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18002a037
mov r14, rax
cmp rax, 0xf
ja 0x1800296b2
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd8], 0xf
lea rcx, [rbp + 0xc0]
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, rbp
add r14, 0xc0
jmp 0x1800298c0
cmp byte [0x180052cce], 0
jne 0x18002954c
mov rdx, qword [0x180050c70]
movabs rax, 0xdfeea8d9c0eed534
add rax, rdx
movabs rcx, 0xdfeea8d9c0eed552
add rcx, rdx
xor edx, edx
lea r8, [0x180052cc3]
nop dword [rax]
movzx r10d, byte [rcx + rdx]
movzx r9d, byte [rax + rdx]
mov r11d, r10d
and r11b, 0x20
or r11b, 0x40
mov edi, r10d
and dil, 0x41
xor dil, r11b
and r10b, 0x9e
or r10b, dil
mov r11d, r10d
xor r11b, 0x21
mov edi, r9d
xor dil, 0x61
xor r10b, 0xde
or r10b, dil
xor r9b, 0x9e
or r9b, r11b
and r9b, r10b
not r9b
mov byte [rdx + r8], r9b
inc rdx
cmp rdx, 0xb
jne 0x1800294f0
mov byte [0x180052cce], 1
movabs r15, 0xdfeea8d9c0eead3f
add r15, qword [0x180050c78]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0xc0], xmm0
movdqa xmmword [rbp + 0xd0], xmm0
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18002a03c
mov r14, rax
cmp rax, 0xf
ja 0x18002973f
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd8], 0xf
lea rcx, [rbp + 0xc0]
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, rbp
add r14, 0xc0
jmp 0x180029982
cmp byte [0x180052ce1], 0
jne 0x180029b41
mov rdx, qword [0x180050c70]
movabs rax, 0xdfeea8d9c0eed572
add rax, rdx
movabs rcx, 0xdfeea8d9c0eed58a
add rcx, rdx
movabs r8, 0xdfeea8d9c0eed59b
add r8, rdx
lea rdx, [0x180052cd0]
cmp r8, rdx
jbe 0x180029a12
lea r8, [0x180052ce1]
cmp rax, r8
jae 0x180029a12
xor r8d, r8d
jmp 0x180029ac0
mov rax, r14
or rax, 0xf
cmp rax, 0x17
mov edi, 0x16
cmovae rdi, rax
cmp rdi, 0xfff
jb 0x1800297cc
lea rcx, [rdi + 0x28]
call fcn.18003c980
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
mov r8d, ecx
and r8d, 5
movabs r9, 0x5867f20cf71b6f6b
and r9, rdx
and rdx, 0xfffffffffffffffa
or rdx, r8
movabs r8, 0xa7980df308e49094
and rcx, r8
or r9, rcx
xor r8, r9
xor r9, rdx
xor rdx, 0x1a
or r8, rdx
movabs r12, 0x5867f20cf71b6f71
xor r12, r9
and r12, r8
mov qword [r12 - 8], rax
jmp 0x1800297d8
mov rax, r14
or rax, 0xf
cmp rax, 0x17
mov edi, 0x16
cmovae rdi, rax
cmp rdi, 0xfff
jb 0x18002988e
lea rcx, [rdi + 0x28]
call fcn.18003c980
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
mov r8d, ecx
and r8d, 5
movabs r9, 0x5867f20cf71b6f6b
and r9, rdx
and rdx, 0xfffffffffffffffa
or rdx, r8
movabs r8, 0xa7980df308e49094
and rcx, r8
or r9, rcx
xor r8, r9
xor r9, rdx
xor rdx, 0x1a
or r8, rdx
movabs r12, 0x5867f20cf71b6f71
xor r12, r9
and r12, r8
mov qword [r12 - 8], rax
jmp 0x18002989a
mov rax, r14
or rax, 0xf
cmp rax, 0x17
mov edi, 0x16
cmovae rdi, rax
cmp rdi, 0xfff
jb 0x180029950
lea rcx, [rdi + 0x28]
call fcn.18003c980
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
mov r8d, ecx
and r8d, 5
movabs r9, 0x5867f20cf71b6f6b
and r9, rdx
and rdx, 0xfffffffffffffffa
or rdx, r8
movabs r8, 0xa7980df308e49094
and rcx, r8
or r9, rcx
xor r8, r9
xor r9, rdx
xor rdx, 0x1a
or r8, rdx
movabs r12, 0x5867f20cf71b6f71
xor r12, r9
and r12, r8
mov qword [r12 - 8], rax
jmp 0x18002995c
lea rcx, [rdi + 1]
call fcn.18003c980
mov r12, rax
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd8], rdi
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, r12
mov byte [r14], 0
lea rdx, [rbp + 0xa0]
lea r9, [rbp + 0xc0]
mov rcx, rbx
mov r8d, 0xa
call fcn.1800274f0
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x30], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
lea r8, [rbp - 0x40]
lea r9, [rbp + 0xa0]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
mov byte [rsi + 0x28], 1
cmp byte [rsi + 0x29], 0
je 0x180029cdd
mov rsi, rbp
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.180031a90
lea rdx, [0x180047930]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
lea rcx, [rdi + 1]
call fcn.18003c980
mov r12, rax
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd8], rdi
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, r12
mov byte [r14], 0
lea rdx, [rbp + 0xa0]
lea r9, [rbp + 0xc0]
mov rcx, rbx
mov r8d, 0xb
call fcn.1800274f0
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x30], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
lea r8, [rbp - 0x40]
lea r9, [rbp + 0xa0]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
mov byte [rsi + 0x28], 1
cmp byte [rsi + 0x29], 0
je 0x180029cdd
mov rsi, rbp
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.180031a90
lea rdx, [0x180047930]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
lea rcx, [rdi + 1]
call fcn.18003c980
mov r12, rax
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd8], rdi
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, r12
mov byte [r14], 0
lea rdx, [rbp + 0xa0]
lea r9, [rbp + 0xc0]
mov rcx, rbx
mov r8d, 4
call fcn.1800274f0
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x30], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
lea r8, [rbp - 0x40]
lea r9, [rbp + 0xa0]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
mov byte [rsi + 0x28], 1
cmp byte [rsi + 0x29], 0
je 0x180029cdd
mov rsi, rbp
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.180031a90
lea rdx, [0x180047930]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
movdqu xmm5, xmmword [rcx]
movdqu xmm1, xmmword [rax]
movdqa xmm0, xmmword [str.cccccccccccccccc]
movdqa xmm3, xmm5
por xmm3, xmm0
pcmpeqd xmm2, xmm2
movdqa xmm6, xmm3
pxor xmm6, xmm2
movdqa xmm4, xmmword [0x180042b20]
movdqa xmm7, xmm5
pandn xmm7, xmm4
pxor xmm5, xmm0
por xmm5, xmm7
movdqa xmm7, xmmword [0x180042b30]
pand xmm7, xmm3
movdqa xmm8, xmmword [0x180042b40]
pandn xmm3, xmm8
por xmm3, xmm7
pxor xmm3, xmm5
pandn xmm5, xmm6
movdqa xmm6, xmm5
pxor xmm6, xmm3
pxor xmm6, xmmword [0x180042b50]
pxor xmm3, xmm8
pand xmm3, xmm5
por xmm3, xmm6
pxor xmm0, xmm1
por xmm0, xmm3
pxor xmm1, xmm4
pxor xmm1, xmm3
pand xmm1, xmm3
pxor xmm0, xmm2
por xmm0, xmm1
movdqa xmmword [0x180052cd0], xmm0
mov r8d, 0x10
nop dword [rax + rax]
movzx r11d, byte [rcx + r8]
mov edi, r11d
not dil
movzx r9d, byte [rax + r8]
mov r14d, r11d
or r14b, 0x63
mov r10d, r14d
not r10b
and dil, 0x9c
xor r11b, 0x63
or r11b, dil
mov edi, r11d
not dil
and dil, r10b
and r14b, 0x11
and r10b, 0x8c
or r10b, r14b
xor r10b, r11b
mov r11d, edi
xor r11b, r10b
xor r11b, 0xee
xor r10b, 0x8c
and r10b, dil
or r10b, r11b
mov r11d, r9d
xor r11b, 0x63
or r11b, r10b
xor r9b, r10b
xor r9b, 0x9c
and r9b, r10b
not r11b
or r11b, r9b
mov byte [r8 + rdx], r11b
inc r8
cmp r8, 0x11
jne 0x180029ac0
mov byte [0x180052ce1], 1
movabs r15, 0xdfeea8d9c0eead3f
add r15, qword [0x180050c80]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0xc0], xmm0
movdqa xmmword [rbp + 0xd0], xmm0
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18002a041
mov r14, rax
cmp rax, 0xf
ja 0x180029bb3
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd8], 0xf
lea rcx, [rbp + 0xc0]
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, rbp
add r14, 0xc0
jmp 0x180029c6b
mov rax, r14
or rax, 0xf
cmp rax, 0x17
mov edi, 0x16
cmovae rdi, rax
cmp rdi, 0xfff
jb 0x180029c39
lea rcx, [rdi + 0x28]
call fcn.18003c980
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
mov r8d, ecx
and r8d, 5
movabs r9, 0x5867f20cf71b6f6b
and r9, rdx
and rdx, 0xfffffffffffffffa
or rdx, r8
movabs r8, 0xa7980df308e49094
and rcx, r8
or r9, rcx
xor r8, r9
xor r9, rdx
xor rdx, 0x1a
or r8, rdx
movabs r12, 0x5867f20cf71b6f71
xor r12, r9
and r12, r8
mov qword [r12 - 8], rax
jmp 0x180029c45
lea rcx, [rdi + 1]
call fcn.18003c980
mov r12, rax
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xd0], r14
mov qword [rbp + 0xd8], rdi
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, r12
mov byte [r14], 0
lea rdx, [rbp + 0xa0]
lea r9, [rbp + 0xc0]
mov rcx, rbx
mov r8d, 0xc
call fcn.1800274f0
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x30], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
lea r8, [rbp - 0x40]
lea r9, [rbp + 0xa0]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
mov byte [rsi + 0x28], 1
cmp byte [rsi + 0x29], 0
jne 0x18002a046
mov rax, qword [rbp + 0x58]
cmp rax, 0x10
jb 0x180029d32
mov rcx, qword [rbp + 0x40]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180029d2d
mov r8, qword [rcx - 8]
sub rcx, r8
movabs rdx, 0x5537c683897700f8
add rdx, rcx
shr rdx, 5
movabs rcx, 0x2a9be341c4bb808
cmp rdx, rcx
jne 0x18002a02c
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.18003c9c4
lea rax, vtable.nlohmann::json_abi_v3_11_3::detail::exception.0
mov qword [rbp + 0x60], rax
lea rsi, vtable.std::exception.0
mov qword [rbp + 0x80], rsi
lea rcx, [rbp + 0x88]
call sub.VCRUNTIME140.dll___std_exception_destroy
mov qword [rbp + 0x60], rsi
lea rcx, [rbp + 0x68]
call sub.VCRUNTIME140.dll___std_exception_destroy
mov rax, qword [rbp + 0xb8]
cmp rax, 0x10
jb 0x180029dbf
mov rcx, qword [rbp + 0xa0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180029dba
mov r8, qword [rcx - 8]
sub rcx, r8
movabs rdx, 0x5537c683897700f8
add rdx, rcx
shr rdx, 5
movabs rcx, 0x2a9be341c4bb808
cmp rdx, rcx
jne 0x18002a02c
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.18003c9c4
mov qword [rbp + 0xb0], 0
mov qword [rbp + 0xb8], 0xf
mov byte [rbp + 0xa0], 0
mov rax, qword [rbp + 0xd8]
cmp rax, 0x10
jb 0x180029e37
mov rcx, qword [rbp + 0xc0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180029e32
mov r8, qword [rcx - 8]
sub rcx, r8
movabs rdx, 0x5537c683897700f8
add rdx, rcx
shr rdx, 5
movabs rcx, 0x2a9be341c4bb808
cmp rdx, rcx
jne 0x18002a02c
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.18003c9c4
xor esi, esi
jmp 0x18002916a
movabs rcx, 0xdfeea8d9c0eed534
add rcx, qword [0x180050c70]
call fcn.18003a580
movabs rdx, 0xdfeea8d9c0eead3f
add rdx, qword [0x180050c78]
lea rcx, [rbp + 0xa0]
call fcn.180002760
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xa0]
mov rcx, rbx
mov r8d, 4
call fcn.1800274f0
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0xc0]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xc0]
mov r9, rbp
mov rcx, rsi
call fcn.18002b0f0
jmp 0x18002913f
mov byte [rbp + 0x40], 0x27
lea rdx, [rbp + 0xa0]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
movabs rcx, 0xdfeea8d9c0eed5b2
add rcx, qword [0x180050c70]
call fcn.18003a790
movabs rdx, 0xdfeea8d9c0eead3f
add rdx, qword [0x180050c88]
lea rcx, [rbp + 0x60]
lea r8, [rbp + 0xa0]
lea r9, [rbp + 0x40]
call fcn.18002c3b0
mov rcx, rbp
lea r8, [rbp + 0x60]
mov edx, 0x196
xor r9d, r9d
call fcn.18002bec0
lea rdx, [rbp + 0xc0]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
mov rdx, qword [rbx + 0x68]
lea r8, [rbp + 0xc0]
mov r9, rbp
mov rcx, rsi
call fcn.180033c00
jmp 0x18002913f
movabs rcx, 0xdfeea8d9c0eed5fd
add rcx, qword [0x180050c70]
call fcn.18003a8d0
movabs rdx, 0xdfeea8d9c0eead3f
add rdx, qword [0x180050c98]
lea rcx, [rbp + 0x60]
call fcn.180002760
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0xd0], rax
movups xmm0, xmmword [rdi]
movaps xmmword [rbp + 0xc0], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0xc0]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.180026b50
lea rdx, [rbp + 0xa0]
mov rcx, qword [rbp + 0xe0]
call fcn.180028520
mov rdx, qword [rdi]
lea r8, [rbp + 0xa0]
mov r9, rbp
mov rcx, rsi
call fcn.18002b0f0
mov esi, eax
lea rcx, [rbp + 0xa0]
call fcn.180001660
mov rcx, rbp
call fcn.180028780
lea rcx, [rbp + 0x60]
jmp 0x180029165
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
call fcn.18000f240
call fcn.18000f240
call fcn.18000f240
call fcn.18000f240
mov rsi, rbp
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.180031a90
lea rdx, [0x180047930]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
int3