Function at 0x18002ca20
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x178
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xe0], xmm6
mov qword [rbp + 0xd8], 0xfffffffffffffffe
mov rsi, rdx
mov rbx, rcx
xorps xmm0, xmm0
movaps xmmword [rbp - 0x20], xmm0
movaps xmmword [rbp - 0x30], xmm0
lea rdi, [rcx + 0x48]
lea r14, [rcx + 0x98]
lea r13, [0x180050430]
movabs r12, 0x3800000000000000
xor r15d, r15d
nop dword [rax]
test r15b, 1
jne 0x18002cc66
mov eax, dword [rbx + 0x40]
dec eax
cmp eax, 0xe
ja case.0x18002caa0.10
movsxd rax, dword [r13 + rax*4]
add rax, r13
jmp rax
mov rcx, rsi
mov rdx, 0xffffffffffffffff
call fcn.180032f90
test al, al
je 0x18002db70
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
cmp eax, 0xa
je 0x18002cd7f
mov rax, qword [rbp - 0x18]
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r12]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x30]
and eax, 0x1f
mov qword [rbp + 0x90], rdx
mov qword [rbp + 0x98], rax
mov r8d, 1
lea rcx, [rbp - 0x30]
lea rdx, [rbp + 0x90]
call fcn.180023630
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r12]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x30]
and eax, 0x1f
lea rcx, [rax + 1]
mov r8d, ecx
shr r8d, 5
lea r8, [rdx + r8*4]
and ecx, 0x1f
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], rcx
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x50]
lea rdx, [rbp - 0x10]
mov r8b, 1
call fcn.180023ae0
jmp 0x18002ca80
mov rcx, rsi
mov rdx, 0xffffffffffffffff
call fcn.1800327d0
test al, al
je 0x18002db70
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
cmp eax, 4
jne 0x18002cc6e
mov rcx, rsi
mov rdx, r14
call fcn.180032d30
test al, al
je 0x18002db70
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
cmp eax, 0xc
jne 0x18002d1d8
mov rax, qword [rbp - 0x18]
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r12]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x30]
and eax, 0x1f
mov qword [rbp + 0x90], rdx
mov qword [rbp + 0x98], rax
mov r8d, 1
lea rcx, [rbp - 0x30]
lea rdx, [rbp + 0x90]
call fcn.180023630
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r12]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x30]
and eax, 0x1f
lea rcx, [rax + 1]
mov r8d, ecx
shr r8d, 5
lea r8, [rdx + r8*4]
and ecx, 0x1f
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], rcx
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x50]
lea rdx, [rbp - 0x10]
xor r8d, r8d
call fcn.180023ae0
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
jmp 0x18002ca80
xor r15d, r15d
jmp 0x18002cd8f
cmp eax, 0xb
jne 0x18002d12f
mov rcx, rsi
call fcn.180032a20
jmp 0x18002cd87
mov rax, qword [rbx + 0xc0]
mov qword [rbp + 0x50], rax
mov rcx, rsi
lea rdx, [rbp - 0x10]
lea r8, [rbp + 0x50]
xor r9d, r9d
call fcn.180038650
jmp 0x18002cd8f
mov qword [rbp - 0x38], rdi
mov qword [rbp - 0x58], rsi
mov rdi, r14
movsd xmm6, qword [rbx + 0xd0]
movsd qword [rbp - 0x10], xmm6
lea r14, [rbp - 0x10]
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__dtest]
test ax, ax
jg 0x18002dc72
movsd qword [rbp + 0x50], xmm6
mov rsi, qword [rbp - 0x58]
mov rcx, rsi
mov rdx, r14
lea r8, [rbp + 0x50]
xor r9d, r9d
call fcn.180037c00
mov r14, rdi
mov rdi, qword [rbp - 0x38]
jmp 0x18002cd8f
mov rax, qword [rbx + 0xc8]
mov qword [rbp + 0x50], rax
mov rcx, rsi
lea rdx, [rbp - 0x10]
lea r8, [rbp + 0x50]
xor r9d, r9d
call fcn.180038d70
jmp 0x18002cd8f
mov byte [rbp + 0x50], 0
mov rcx, rsi
lea rdx, [rbp - 0x10]
lea r8, [rbp + 0x50]
xor r9d, r9d
call fcn.180037f70
jmp 0x18002cd8f
mov byte [rbp + 0x50], 1
mov rcx, rsi
lea rdx, [rbp - 0x10]
lea r8, [rbp + 0x50]
xor r9d, r9d
call fcn.180037f70
jmp 0x18002cd8f
mov rcx, rsi
lea rdx, [rbp - 0x10]
mov r8, r14
xor r9d, r9d
call fcn.1800389c0
jmp 0x18002cd8f
mov qword [rbp + 0x50], 0
mov rcx, rsi
lea rdx, [rbp - 0x10]
lea r8, [rbp + 0x50]
xor r9d, r9d
call fcn.1800382e0
jmp 0x18002cd8f
mov rcx, rsi
call fcn.1800331e0
test al, al
je 0x18002db70
mov rax, qword [rbp - 0x18]
test rax, rax
je 0x18002d352
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 + r12]
test rax, rax
cmovns r9, r8
shl r9, 2
mov eax, 1
shl eax, cl
add r9, qword [rbp - 0x30]
and eax, dword [r9 + rdx*4]
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xa0230470
mov r8d, eax
and r8d, 0x45c88180
and eax, 0x10107008
and ecx, 0xa040a07
add edx, r8d
add edx, 0x10107008
add eax, ecx
add eax, 0xa0230470
xor eax, edx
cmp eax, 0x1a147a0f
jne 0x18002ce7f
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
cmp eax, 0xb
je 0x18002ceb2
cmp eax, 0xd
jne 0x18002d35a
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
cmp eax, 4
jne 0x18002d4cf
mov rcx, rsi
mov rdx, r14
call fcn.180032d30
test al, al
je 0x18002db70
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
cmp eax, 0xc
jne 0x18002d5d7
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
jmp 0x18002ca80
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
cmp eax, 0xd
jne 0x18002ce9f
mov rcx, rdi
call fcn.1800297e0
mov dword [rbx + 0x40], eax
jmp 0x18002ca80
cmp eax, 0xa
jne 0x18002dbc9
mov rcx, rsi
call fcn.1800331e0
jmp 0x18002ceba
mov rcx, rsi
call fcn.180032a20
test al, al
je 0x18002db70
mov rax, qword [rbp - 0x18]
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 + r12]
test rax, rax
cmovns r9, r8
shl r9, 2
add r9, qword [rbp - 0x30]
lea rax, [r9 + rdx*4]
and ecx, 0x1f
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rcx
lea rcx, [rbp - 0x30]
lea rdx, [rbp + 0x50]
lea r8, [rbp - 0x10]
call fcn.1800390e0
mov r15b, 1
jmp 0x18002ca80
movabs rcx, 0x7c76087a58ed8539
add rcx, qword [0x18005cbb0]
call fcn.1800456d0
movabs rdx, 0x7c76087a58ed569e
add rdx, qword [0x18005cbd0]
lea rcx, [rbp + 0x90]
call fcn.1800018d0
lea rdx, [rbp + 0x50]
lea r9, [rbp + 0x90]
mov rcx, rbx
xor r8d, r8d
call fcn.18002f180
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x40], rax
movups xmm0, xmmword [rbx + 0x68]
movaps xmmword [rbp + 0x30], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x10]
lea r8, [rbp + 0x30]
lea r9, [rbp + 0x50]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0xb0]
mov rcx, rdi
call fcn.18002fe50
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xb0]
lea r9, [rbp - 0x10]
mov rcx, rsi
call fcn.18002ea30
jmp 0x18002d321
lea r14, [rbx + 0x68]
cmp qword [rbx + 0x68], 1
jne 0x18002d281
movabs rcx, 0x7c76087a58ed8637
add rcx, qword [0x18005cbb0]
call fcn.1800457c0
movabs rdx, 0x7c76087a58ed569e
add rdx, qword [0x18005cbd8]
lea rcx, [rbp + 0x50]
call fcn.1800018d0
mov rax, qword [r14 + 0x10]
mov qword [rbp + 0xc0], rax
movups xmm0, xmmword [r14]
movaps xmmword [rbp + 0xb0], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x10]
lea r8, [rbp + 0xb0]
lea r9, [rbp + 0x50]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0x90]
mov rcx, rdi
call fcn.18002fe50
mov rdx, qword [r14]
lea r8, [rbp + 0x90]
lea r9, [rbp - 0x10]
mov rcx, rsi
call fcn.18002ea30
mov esi, eax
lea rcx, [rbp + 0x90]
call fcn.180001a00
lea rcx, [rbp - 0x10]
call fcn.180030260
lea rcx, [rbp + 0x50]
jmp 0x18002d348
movabs rcx, 0x7c76087a58ed8539
add rcx, qword [0x18005cbb0]
call fcn.1800456d0
movabs rdx, 0x7c76087a58ed569e
add rdx, qword [0x18005cbd0]
lea rcx, [rbp + 0x90]
call fcn.1800018d0
lea rdx, [rbp + 0x50]
lea r9, [rbp + 0x90]
mov rcx, rbx
mov r8d, 0x10
call fcn.18002f180
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x40], rax
movups xmm0, xmmword [rbx + 0x68]
movaps xmmword [rbp + 0x30], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x10]
lea r8, [rbp + 0x30]
lea r9, [rbp + 0x50]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0xb0]
mov rcx, rdi
call fcn.18002fe50
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xb0]
lea r9, [rbp - 0x10]
mov rcx, rsi
call fcn.18002ea30
jmp 0x18002d321
movabs rcx, 0x7c76087a58ed857d
add rcx, qword [0x18005cbb0]
call fcn.180045710
movabs rdx, 0x7c76087a58ed569e
add rdx, qword [0x18005cbb8]
lea rcx, [rbp + 0x90]
call fcn.1800018d0
lea rdx, [rbp + 0x50]
lea r9, [rbp + 0x90]
mov rcx, rbx
mov r8d, 4
call fcn.18002f180
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x40], rax
movups xmm0, xmmword [rbx + 0x68]
movaps xmmword [rbp + 0x30], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x10]
lea r8, [rbp + 0x30]
lea r9, [rbp + 0x50]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0xb0]
mov rcx, rdi
call fcn.18002fe50
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xb0]
lea r9, [rbp - 0x10]
mov rcx, rsi
call fcn.18002ea30
jmp 0x18002d321
movabs rcx, 0x7c76087a58ed85bd
add rcx, qword [0x18005cbb0]
call fcn.180045790
movabs rdx, 0x7c76087a58ed569e
add rdx, qword [0x18005cbc0]
lea rcx, [rbp + 0x90]
call fcn.1800018d0
lea rdx, [rbp + 0x50]
lea r9, [rbp + 0x90]
mov rcx, rbx
mov r8d, 0xc
call fcn.18002f180
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x40], rax
movups xmm0, xmmword [rbx + 0x68]
movaps xmmword [rbp + 0x30], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x10]
lea r8, [rbp + 0x30]
lea r9, [rbp + 0x50]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0xb0]
mov rcx, rdi
call fcn.18002fe50
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xb0]
lea r9, [rbp - 0x10]
mov rcx, rsi
call fcn.18002ea30
jmp 0x18002d321
movabs rcx, 0x7c76087a58ed8539
add rcx, qword [0x18005cbb0]
call fcn.1800456d0
movabs rdx, 0x7c76087a58ed569e
add rdx, qword [0x18005cbd0]
lea rcx, [rbp + 0x90]
call fcn.1800018d0
lea rdx, [rbp + 0x50]
lea r9, [rbp + 0x90]
mov rcx, rbx
mov r8d, 0x10
call fcn.18002f180
mov rax, qword [r14 + 0x10]
mov qword [rbp + 0x40], rax
movups xmm0, xmmword [r14]
movaps xmmword [rbp + 0x30], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x10]
lea r8, [rbp + 0x30]
lea r9, [rbp + 0x50]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0xb0]
mov rcx, rdi
call fcn.18002fe50
mov rdx, qword [r14]
lea r8, [rbp + 0xb0]
lea r9, [rbp - 0x10]
mov rcx, rsi
call fcn.18002ea30
mov esi, eax
lea rcx, [rbp + 0xb0]
call fcn.180001a00
lea rcx, [rbp - 0x10]
call fcn.180030260
lea rcx, [rbp + 0x50]
call fcn.180001a00
lea rcx, [rbp + 0x90]
call fcn.180001a00
jmp 0x18002db72
mov sil, 1
jmp 0x18002db72
cmp byte [0x18005ef42], 0
jne 0x18002d45c
mov rax, qword [0x18005cbb0]
movabs rcx, 0x7c76087a58ed86f4
movzx ecx, byte [rax + rcx]
movabs rdx, 0x7c76087a58ed8706
xor cl, byte [rax + rdx]
mov byte [0x18005ef3b], cl
movabs rcx, 0x7c76087a58ed86f5
movzx ecx, byte [rax + rcx]
movabs rdx, 0x7c76087a58ed8707
xor cl, byte [rax + rdx]
mov byte [0x18005ef3c], cl
movabs rcx, 0x7c76087a58ed86f6
movzx ecx, byte [rax + rcx]
movabs rdx, 0x7c76087a58ed8708
xor cl, byte [rax + rdx]
mov byte [0x18005ef3d], cl
movabs rcx, 0x7c76087a58ed86f7
movzx ecx, byte [rax + rcx]
movabs rdx, 0x7c76087a58ed8709
xor cl, byte [rax + rdx]
mov byte [0x18005ef3e], cl
movabs rcx, 0x7c76087a58ed86f8
movzx ecx, byte [rax + rcx]
movabs rdx, 0x7c76087a58ed870a
xor cl, byte [rax + rdx]
mov byte [0x18005ef3f], cl
movabs rcx, 0x7c76087a58ed86f9
movzx ecx, byte [rax + rcx]
movabs rdx, 0x7c76087a58ed870b
xor cl, byte [rax + rdx]
mov byte [0x18005ef40], cl
movabs rcx, 0x7c76087a58ed86fa
movzx ecx, byte [rax + rcx]
movabs rdx, 0x7c76087a58ed870c
xor cl, byte [rax + rdx]
mov byte [0x18005ef41], cl
mov byte [0x18005ef42], 1
movabs r15, 0x7c76087a58ed569e
add r15, qword [0x18005cbe8]
xorps xmm0, xmm0
movaps xmmword [rbp + 0xb0], xmm0
movaps xmmword [rbp + 0xc0], xmm0
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18002ddac
mov r14, rax
cmp rax, 0xf
ja 0x18002d660
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], 0xf
lea rcx, [rbp + 0xb0]
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, rbp
add r14, 0xb0
jmp 0x18002d86f
cmp byte [0x18005ee9e], 0
jne 0x18002d564
mov rdx, qword [0x18005cbb0]
movabs rax, 0x7c76087a58ed857d
add rax, rdx
movabs rcx, 0x7c76087a58ed8595
add rcx, rdx
xor edx, edx
lea r8, [0x18005ee93]
movzx r9d, byte [rcx + rdx]
movzx r10d, byte [rax + rdx]
not r10b
mov r11d, r9d
and r11b, r10b
or r10b, r9b
mov r9d, r11d
not r9b
mov r14d, r11d
and r14b, 0x82
mov r15d, r9d
and r15b, 0x24
or r15b, r14b
and r9b, 0x40
and r11b, 0x19
or r11b, r9b
or r15b, 0x40
or r11b, 0x82
xor r11b, r10b
xor r11b, r15b
xor r11b, 0x59
mov byte [rdx + r8], r11b
inc rdx
cmp rdx, 0xb
jne 0x18002d506
mov byte [0x18005ee9e], 1
movabs r15, 0x7c76087a58ed569e
add r15, qword [0x18005cbb8]
xorps xmm0, xmm0
movaps xmmword [rbp + 0xb0], xmm0
movaps xmmword [rbp + 0xc0], xmm0
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18002ddb1
mov r14, rax
cmp rax, 0xf
ja 0x18002d6ff
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], 0xf
lea rcx, [rbp + 0xb0]
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, rbp
add r14, 0xb0
jmp 0x18002d92f
movabs rcx, 0x7c76087a58ed85bd
add rcx, qword [0x18005cbb0]
call fcn.180045790
movabs r15, 0x7c76087a58ed569e
add r15, qword [0x18005cbc0]
xorps xmm0, xmm0
movaps xmmword [rbp + 0xb0], xmm0
movaps xmmword [rbp + 0xc0], xmm0
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18002ddb6
mov r14, rax
cmp rax, 0xf
ja 0x18002d79e
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], 0xf
lea rcx, [rbp + 0xb0]
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, rbp
add r14, 0xb0
jmp 0x18002d9ef
mov eax, r14d
and eax, 0xf
movabs rcx, 0x19de41ba56853670
or rcx, rax
mov rdx, r14
and rdx, 0xfffffffffffffff0
movabs r8, 0x19de41ba5685367f
xor r8, rdx
xor r8, rcx
or r8, rax
cmp r8, 0x17
mov r13d, 0x16
cmovae r13, r8
cmp r13, 0xfff
jb 0x18002d83d
lea rcx, [r13 + 0x28]
call fcn.180047c7c
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
movabs r12, 0x26c553cca5b37451
and rdx, r12
movabs r8, 0xd93aac335a4c8bae
and r8, rcx
or r8, rdx
xor r12, r8
movabs rcx, 0xd93aac335a4c8bb1
xor rcx, r8
and r12, rcx
xor r12, rcx
mov qword [r12 - 8], rax
jmp 0x18002d849
mov eax, r14d
and eax, 0xf
movabs rcx, 0x19de41ba56853670
or rcx, rax
mov rdx, r14
and rdx, 0xfffffffffffffff0
movabs r8, 0x19de41ba5685367f
xor r8, rdx
xor r8, rcx
or r8, rax
cmp r8, 0x17
mov r13d, 0x16
cmovae r13, r8
cmp r13, 0xfff
jb 0x18002d8fd
lea rcx, [r13 + 0x28]
call fcn.180047c7c
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
movabs r12, 0x26c553cca5b37451
and rdx, r12
movabs r8, 0xd93aac335a4c8bae
and r8, rcx
or r8, rdx
xor r12, r8
movabs rcx, 0xd93aac335a4c8bb1
xor rcx, r8
and r12, rcx
xor r12, rcx
mov qword [r12 - 8], rax
jmp 0x18002d909
mov eax, r14d
and eax, 0xf
movabs rcx, 0x19de41ba56853670
or rcx, rax
mov rdx, r14
and rdx, 0xfffffffffffffff0
movabs r8, 0x19de41ba5685367f
xor r8, rdx
xor r8, rcx
or r8, rax
cmp r8, 0x17
mov r13d, 0x16
cmovae r13, r8
cmp r13, 0xfff
jb 0x18002d9bd
lea rcx, [r13 + 0x28]
call fcn.180047c7c
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
movabs r12, 0x26c553cca5b37451
and rdx, r12
movabs r8, 0xd93aac335a4c8bae
and r8, rcx
or r8, rdx
xor r12, r8
movabs rcx, 0xd93aac335a4c8bb1
xor rcx, r8
and r12, rcx
xor r12, rcx
mov qword [r12 - 8], rax
jmp 0x18002d9c9
lea rcx, [r13 + 1]
call fcn.180047c7c
mov r12, rax
mov qword [rbp + 0xb0], r12
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], r13
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, r12
mov byte [r14], 0
lea rdx, [rbp + 0x90]
lea r9, [rbp + 0xb0]
mov rcx, rbx
mov r8d, 0xb
call fcn.18002f180
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x40], rax
movups xmm0, xmmword [rbx + 0x68]
movaps xmmword [rbp - 0x50], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x50]
lea r8, [rbp - 0x50]
lea r9, [rbp + 0x90]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.18002fe50
mov byte [rsi + 0x68], 1
cmp byte [rsi + 0xb0], 0
je 0x18002da5e
lea rsi, [rbp - 0x10]
lea rdx, [rbp + 0x50]
mov rcx, rsi
call fcn.180039260
lea rdx, [0x1800529d0]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
lea rcx, [r13 + 1]
call fcn.180047c7c
mov r12, rax
mov qword [rbp + 0xb0], r12
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], r13
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, r12
mov byte [r14], 0
lea rdx, [rbp + 0x90]
lea r9, [rbp + 0xb0]
mov rcx, rbx
mov r8d, 4
call fcn.18002f180
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x40], rax
movups xmm0, xmmword [rbx + 0x68]
movaps xmmword [rbp - 0x50], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x50]
lea r8, [rbp - 0x50]
lea r9, [rbp + 0x90]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.18002fe50
mov byte [rsi + 0x68], 1
cmp byte [rsi + 0xb0], 0
je 0x18002da5e
lea rsi, [rbp - 0x10]
lea rdx, [rbp + 0x50]
mov rcx, rsi
call fcn.180039260
lea rdx, [0x1800529d0]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
lea rcx, [r13 + 1]
call fcn.180047c7c
mov r12, rax
mov qword [rbp + 0xb0], r12
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], r13
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r14, r12
mov byte [r14], 0
lea rdx, [rbp + 0x90]
lea r9, [rbp + 0xb0]
mov rcx, rbx
mov r8d, 0xc
call fcn.18002f180
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x40], rax
movups xmm0, xmmword [rbx + 0x68]
movaps xmmword [rbp - 0x50], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x50]
lea r8, [rbp - 0x50]
lea r9, [rbp + 0x90]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.18002fe50
mov byte [rsi + 0x68], 1
cmp byte [rsi + 0xb0], 0
jne 0x18002ddbb
mov rax, qword [rbp + 0x48]
cmp rax, 0x10
jb 0x18002da9d
mov rcx, qword [rbp + 0x30]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18002da98
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x18002dda6
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.180047cc0
lea rax, vtable.nlohmann::json_abi_v3_11_3::detail::exception.0
mov qword [rbp + 0x50], rax
lea rsi, vtable.std::exception.0
mov qword [rbp + 0x70], rsi
lea rcx, [rbp + 0x78]
call sub.VCRUNTIME140.dll___std_exception_destroy
mov qword [rbp + 0x50], rsi
lea rcx, [rbp + 0x58]
call sub.VCRUNTIME140.dll___std_exception_destroy
mov rax, qword [rbp + 0xa8]
cmp rax, 0x10
jb 0x18002db0e
mov rcx, qword [rbp + 0x90]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18002db09
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x18002dda6
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.180047cc0
mov qword [rbp + 0xa0], 0
mov qword [rbp + 0xa8], 0xf
mov byte [rbp + 0x90], 0
mov rax, qword [rbp + 0xc8]
cmp rax, 0x10
jb 0x18002db70
mov rcx, qword [rbp + 0xb0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x18002db6b
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x18002dda6
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.180047cc0
xor esi, esi
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x18002dbac
mov rdx, qword [rbp - 0x20]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x18002dba7
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x18002dda6
add rdx, 0x27
mov rcx, rax
call fcn.180047cc0
mov eax, esi
movaps xmm6, xmmword [rbp + 0xe0]
add rsp, 0x178
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
movabs rcx, 0x7c76087a58ed86c5
add rcx, qword [0x18005cbb0]
call fcn.180045850
movabs rdx, 0x7c76087a58ed569e
add rdx, qword [0x18005cbe0]
lea rcx, [rbp + 0x90]
call fcn.1800018d0
lea rdx, [rbp + 0x50]
lea r9, [rbp + 0x90]
mov rcx, rbx
mov r8d, 0xa
call fcn.18002f180
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x40], rax
movups xmm0, xmmword [rbx + 0x68]
movaps xmmword [rbp + 0x30], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x10]
lea r8, [rbp + 0x30]
lea r9, [rbp + 0x50]
mov edx, 0x65
call fcn.18002ea90
lea rdx, [rbp + 0xb0]
mov rcx, rdi
call fcn.18002fe50
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xb0]
lea r9, [rbp - 0x10]
mov rcx, rsi
call fcn.18002ea30
jmp 0x18002d321
mov byte [rbp + 0x30], 0x27
lea rdx, [rbp + 0x90]
mov rcx, qword [rbp - 0x38]
call fcn.18002fe50
cmp byte [0x18005eecc], 0
jne 0x18002dd3f
mov rax, qword [0x18005cbb0]
movabs r9, 0x7c76087a58ed8606
add r9, rax
movabs r10, 0x7c76087a58ed85f6
add r10, rax
movabs r11, 0x7c76087a58ed85f5
add r11, rax
mov ecx, 1
xor r8d, r8d
movabs r14, 0xf0f0f0f0f0f0f0f1
lea r15, [0x18005eeb2]
mov rax, rcx
mul r14
mov rax, rdx
shr rax, 4
and rdx, 0xfffffffffffffff0
add rdx, rax
mov r12, r10
sub r12, rdx
mov rax, r8
mul r14
mov rax, rdx
shr rax, 4
and rdx, 0xfffffffffffffff0
add rdx, rax
mov rax, r11
sub rax, rdx
movzx eax, byte [rax + r8]
xor al, byte [r9 + r8]
mov byte [r8 + r15], al
movzx eax, byte [r12 + r8]
xor al, byte [r9 + r8 + 1]
mov byte [r8 + r15 + 1], al
add r8, 2
add rcx, 2
cmp r8, 0x1a
jne 0x18002dcda
mov byte [0x18005eecc], 1
movabs rdx, 0x7c76087a58ed569e
add rdx, qword [0x18005cbc8]
lea rcx, [rbp + 0x50]
lea r8, [rbp + 0x90]
lea r9, [rbp + 0x30]
call fcn.1800338d0
lea rcx, [rbp - 0x10]
lea r8, [rbp + 0x50]
mov edx, 0x196
xor r9d, r9d
call fcn.180033440
lea rdx, [rbp + 0xb0]
mov rcx, qword [rbp - 0x38]
call fcn.18002fe50
mov rdx, qword [rbx + 0x68]
lea r8, [rbp + 0xb0]
lea r9, [rbp - 0x10]
mov rcx, qword [rbp - 0x58]
call fcn.1800333e0
jmp 0x18002d321
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
call fcn.180016f90
call fcn.180016f90
call fcn.180016f90
lea rsi, [rbp - 0x10]
lea rdx, [rbp + 0x50]
mov rcx, rsi
call fcn.180039260
lea rdx, [0x1800529d0]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
int3