Function at 0x140168170
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x3e0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x250], r8
mov qword [rbp + 0x1a8], rdx
mov qword [rbp + 0x1b0], rcx
mov eax, 0x10
mov qword [rbp + 0x230], rax
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1b8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1c0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1c8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1d0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1d8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1e0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1e8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1f0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x1f8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x200], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x208], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x210], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x218], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x220], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x228], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x230]
mov rcx, rsp
mov qword [rbp + 0x238], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x240], rax
sub rsp, 0x20
call fcn.14016c2bc
add rsp, 0x20
mov qword [rbp + 0x268], rax
add rax, 0x50
mov qword [rbp + 0x248], rax
movabs rcx, 0xd2d010f044710323
movabs rax, 0xd2d010f044710363
xor rcx, rax
movabs rdx, 0x8987147220469d93
movabs rax, 0x8987147220469d9b
xor rdx, rax
sub rsp, 0x20
call fcn.140013970
mov r8, qword [rbp + 0x250]
add rsp, 0x20
mov rcx, rax
mov qword [rbp + 0x258], rcx
lea rax, [0x1401fb950]
mov qword [rcx], rax
add rcx, 0x10
mov qword [rbp + 0x260], rcx
mov rax, qword [r8]
mov qword [rbp + 0x350], rax
mov rax, qword [r8 + 8]
mov qword [rbp + 0x358], rax
lea rdx, [rbp + 0x350]
sub rsp, 0x20
call fcn.14013b9da
mov rax, qword [rbp + 0x268]
add rsp, 0x20
mov dl, byte [rax + 0x50]
mov r8b, 0xdb
xor r8b, 0xdb
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jne 0x14016a302
mov rcx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x250]
mov qword [rdx], 0
mov qword [rdx + 8], 0
mov rax, qword [rax]
test rax, rax
sete al
mov cl, byte [rcx + 4]
mov byte [rbp + 0x1a7], cl
sub cl, 1
sete cl
and al, cl
test al, 1
jne 0x140168467
jmp 0x1401687dc
mov rdx, qword [rbp + 0x1b8]
mov rax, qword [rbp + 0x1a8]
mov rcx, qword [rax + 0x30]
mov qword [rdx], rcx
mov rax, qword [rax + 0x38]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x340]
sub rsp, 0x20
call fcn.140160be0
mov rdx, qword [rbp + 0x248]
add rsp, 0x20
mov rax, qword [rbp + 0x340]
mov qword [rbp + 0x190], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x198], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jne 0x14016a302
mov eax, dword [0x1401fccb8]
xor eax, 0xe9d85943
mov ecx, dword [0x1401fccbc]
xor eax, 0xffffffff
mov edx, 0x75385c6c
xor edx, 0x8ac7a393
xor ecx, edx
mov edx, 0x27be5424
xor edx, 0x2a596e7b
mov r8d, 0x3f0359a6
xor r8d, 0xc0fca659
xor edx, r8d
or eax, ecx
mov ecx, 0xfbb29e39
xor ecx, 0xf655a466
or ecx, edx
mov edx, 0x835a5c2c
xor edx, 0x7ca5a3d3
xor eax, edx
and eax, ecx
mov ecx, 0xa5ab625c
xor ecx, 0x9252e6f6
sub eax, ecx
and eax, 0x6b78cc13
mov ecx, 0x90370717
xor ecx, 0x6e65133f
imul eax, ecx
mov ecx, 0x68cf3522
xor ecx, 0xd308dbc
cmp eax, ecx
jbe 0x14016a646
mov rdx, qword [rbp + 0x1c8]
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x198]
mov r9, qword [rbp + 0x190]
mov r10, qword [rbp + 0x1b0]
mov r8, qword [rbp + 0x1a8]
mov r11d, dword [0x1401fccc0]
xor r11d, 0x957f33a9
mov ebx, dword [0x1401fccc4]
mov edi, 0x327a8440
xor edi, 0xcd857bbf
mov esi, r11d
xor esi, edi
mov edi, ebx
and edi, esi
mov r14d, ebx
xor r14d, 0xffffffff
mov esi, r11d
and esi, r14d
imul esi, edi
mov edi, r11d
and edi, ebx
or r11d, ebx
imul r11d, edi
add r11d, esi
xor r11d, 0xf7e333e2
mov esi, 0x6126b689
xor esi, 0xa01f2104
xor r11d, esi
add r11d, 0x8b076485
add r11d, 0x81c825e3
mov esi, 0xa68b1c5a
xor esi, 0x2d8c78df
sub r11d, esi
mov dword [rbp + 0x17c], r11d
mov r11d, 0x9c561df6
xor r11d, 0x3f15571d
mov dword [rbp + 0x178], r11d
mov r8d, dword [r8 + 0xc]
mov r11, qword [r10]
mov qword [rcx], r11
mov r10, qword [r10 + 8]
mov qword [rcx + 8], r10
mov qword [rdx], r9
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140154ae0
mov rdx, qword [rbp + 0x248]
mov ecx, dword [rbp + 0x178]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x17c]
mov qword [rbp + 0x180], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x18f], dl
cmp eax, ecx
jae 0x140168562
mov rax, qword [rbp + 0x180]
mov dl, byte [rbp + 0x18f]
mov cl, 1
test dl, 1
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jne 0x1401686a0
jmp 0x14016a302
mov ecx, dword [0x1401fccc8]
xor ecx, 0x82aaf4b8
mov eax, dword [0x1401fcccc]
mov edx, 0xa6c42379
xor edx, 0xa66a3b1d
xor eax, edx
imul ecx, eax
mov eax, ecx
and eax, 0xf14b0053
xor eax, 0xffffffff
mov edx, 0x5c9420d3
xor edx, 0xa36bdf2c
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xf14b0053
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
xor eax, 0xbaaa7c87
mov r8d, 0x9e1eb8ef
xor r8d, 0x79dfffb
mov ecx, 0xdf3dd5cf
xor ecx, 0x20c22a30
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xb2b2428
xor r8d, 0x92a8633c
mov edx, eax
and edx, r8d
or eax, 0x99834714
imul eax, edx
add eax, ecx
cmp eax, 0x92ab4e45
jb 0x14016a64f
mov rdx, qword [rbp + 0x180]
mov r8, qword [rbp + 0x1a8]
mov ecx, dword [0x1401fccd0]
mov r9d, dword [0x1401fccd4]
xor r9d, 0xacc1cd88
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, r9d
add eax, ecx
mov ecx, 0xad6d246a
xor ecx, 0xad6d246a
sub ecx, eax
mov eax, ecx
and eax, 0xa3919f38
mov r9d, 0xe8f1f79a
xor r9d, 0x4b6068a2
xor ecx, r9d
or eax, ecx
sub eax, 0x47cf97b7
mov ecx, 0x594b2e10
xor ecx, 0x5fc4b63e
or eax, ecx
mov ecx, 0x2eacf58c
xor ecx, 0xe6d28bb1
mov r8d, dword [r8]
mov dword [rdx + 0x20], r8d
cmp eax, ecx
jae 0x14016a64f
mov rax, qword [rbp + 0x180]
xor ecx, ecx
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jmp 0x14016a302
mov al, byte [rbp + 0x1a7]
cmp al, 0
jne 0x14016a24e
mov rcx, qword [rbp + 0x1d0]
mov r8, qword [rbp + 0x1e0]
mov rdx, qword [rbp + 0x1d8]
mov rax, qword [rbp + 0x1a8]
mov r9, qword [rbp + 0x1b0]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax + 0x10]
mov qword [r8], r9
mov rax, qword [rax + 0x18]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14013f7cb
mov rax, qword [rbp + 0x1d0]
mov rdx, qword [rbp + 0x248]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x150], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x158], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x167], cl
mov rcx, rax
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x14016a144
mov rdx, qword [rbp + 0x1e8]
mov rax, qword [rbp + 0x1a8]
mov rcx, qword [rax + 0x30]
mov qword [rdx], rcx
mov rax, qword [rax + 0x38]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x330]
sub rsp, 0x20
call fcn.140160be0
mov rax, qword [rbp + 0x248]
add rsp, 0x20
mov rcx, qword [rbp + 0x330]
mov qword [rbp + 0x140], rcx
mov rcx, qword [rbp + 0x338]
mov qword [rbp + 0x148], rcx
mov dl, byte [rax]
mov r8b, 0x2f
xor r8b, 0x2f
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x167], cl
mov rcx, rax
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x14016a144
mov rax, qword [rbp + 0x148]
mov rcx, qword [rbp + 0x140]
mov rdx, qword [rbp + 0x158]
mov r8, qword [rbp + 0x150]
mov qword [rbp + 0x320], r8
mov qword [rbp + 0x328], rdx
mov qword [rbp + 0x310], rcx
mov qword [rbp + 0x318], rax
lea rcx, [rbp + 0x320]
lea rdx, [rbp + 0x310]
sub rsp, 0x20
call fcn.140142b40
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x248]
mov qword [rbp + 0x138], rcx
mov r8b, byte [rax]
mov r9b, 0x3a
xor r9b, 0x3a
mov dl, 1
xor eax, eax
cmp r8b, r9b
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x14016a144
mov ecx, dword [str.P8___]
mov edx, dword [0x1401fccdc]
xor edx, 0x34dd3050
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
sub eax, 0x9c9ad65d
mov r8d, 0xffffffff
xor r8d, 0x57041b61
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x4ec5a23a
xor r8d, 0x19c1b95b
mov edx, eax
and edx, r8d
mov r8d, 0xfc49bf3
xor r8d, 0x58c08092
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xc9981cb2
xor ecx, 0x3ee5afbe
xor edx, edx
div ecx
mov ecx, 0x293dd021
xor ecx, 0x92956ecd
cmp eax, ecx
je 0x14016a658
mov rcx, qword [rbp + 0x1f0]
mov eax, dword [0x1401fcce0]
xor eax, 0xb1f7b903
xor edx, edx
div dword [0x1401fcce4]
mov rdx, qword [rbp + 0x1a8]
mov r8d, eax
mov rax, qword [rbp + 0x138]
mov r9d, 0xcdbb9748
xor r9d, 0xf8e842f1
and r9d, r8d
xor r9d, 0xffffffff
add r8d, 0x3553d5b9
add r8d, 1
add r8d, r9d
imul r8d, r8d, 0xb6dc3dc8
mov r9d, r8d
and r9d, 0xdbe35f6c
xor r9d, 0xffffffff
mov r10d, 0x1800c4e9
xor r10d, 0xc3e39b85
add r8d, r10d
add r8d, 1
add r8d, r9d
mov dword [rbp + 0x130], r8d
mov edx, dword [rdx]
mov dword [rax + 0x20], edx
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.14002535d
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x258]
add rsp, 0x20
mov rdx, qword [rax]
mov rax, qword [rax + 8]
add rcx, 0x20
mov qword [rbp + 0x128], rcx
mov qword [rbp + 0x300], rdx
mov qword [rbp + 0x308], rax
lea rdx, [rbp + 0x300]
sub rsp, 0x20
call fcn.1401679c0
mov rcx, qword [rbp + 0x248]
mov eax, dword [rbp + 0x130]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x137], cl
cmp eax, 0xe8303f48
jae 0x140168a1e
mov rcx, qword [rbp + 0x138]
mov r8b, byte [rbp + 0x137]
mov dl, 1
xor eax, eax
test r8b, 1
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x140168b4f
jmp 0x14016a144
mov rax, qword [rbp + 0x1f8]
mov rdx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x258]
mov rcx, qword [rbp + 0x260]
mov rcx, qword [rcx]
add r8, 0x18
mov qword [rbp + 0xf0], r8
lea r8, [rbp + 0x2e0]
add r8, 8
mov qword [rbp + 0xf8], r8
add rdx, 8
mov qword [rbp + 0x100], rdx
add rax, 8
mov qword [rbp + 0x108], rax
lea rax, [rbp + 0x2f0]
add rax, 8
mov qword [rbp + 0x110], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x118], rax
xor eax, eax
mov qword [rbp + 0x120], rax
mov rcx, qword [rbp + 0x118]
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0xe8], rax
cmp rax, rcx
je 0x14016935a
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0x260]
mov rcx, qword [rcx]
mov qword [rbp + 0xe0], rcx
cmp rax, rcx
jl 0x140168c2f
mov rcx, qword [rbp + 0xe8]
mov rdx, qword [rbp + 0xe0]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140013c92
add rsp, 0x20
jmp 0x14016a11e
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
lea rdx, [rax + rcx*8 + 8]
mov qword [rbp + 0xd0], rdx
mov rax, qword [rax + rcx*8 + 8]
mov al, byte [rax + 4]
mov byte [rbp + 0xdf], al
test al, al
je 0x140168c7a
jmp 0x140168c67
mov al, byte [rbp + 0xdf]
sub al, 1
je 0x140169037
jmp 0x140169287
movabs rcx, 0x4ed525d60a167ca3
movabs rax, 0x4ed525d60a167ccb
xor rcx, rax
movabs rdx, 0x678699079c540194
movabs rax, 0x678699079c54019c
xor rdx, rax
sub rsp, 0x20
call fcn.140013970
mov rdx, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov qword [rbp + 0xc8], rax
mov rdx, qword [rdx]
mov edx, dword [rdx]
mov dword [rax + 0x20], edx
mov byte [rax], 0
sub rsp, 0x20
xor eax, eax
mov dl, al
call fcn.140143c5b
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov rax, qword [rbp + 0x248]
mov r8b, byte [rax]
mov r9b, 0x26
xor r9b, 0x26
mov dl, 1
xor eax, eax
cmp r8b, r9b
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x14016a144
mov r9, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x1f8]
mov rdx, qword [rbp + 0x200]
mov rax, qword [rbp + 0xd0]
mov r8, qword [rbp + 0xc8]
mov qword [r8 + 0x38], r9
mov qword [r8 + 0x40], 0
mov rax, qword [rax]
mov r8, qword [rax + 0x30]
mov qword [rdx], r8
mov rax, qword [rax + 0x38]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140160be0
mov rdx, qword [rbp + 0x1f8]
mov rax, qword [rbp + 0x108]
mov r8, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0xb8], rdx
mov rax, qword [rax]
mov qword [rbp + 0xc0], rax
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x14016a144
mov rcx, qword [rbp + 0xc8]
mov rax, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0x208]
mov r8, qword [rbp + 0xc0]
mov r9, qword [rbp + 0xb8]
mov qword [rcx + 0x58], r9
mov qword [rcx + 0x60], r8
mov rax, qword [rax]
mov rcx, qword [rax + 0x10]
mov qword [rdx], rcx
mov rax, qword [rax + 0x18]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x2f0]
sub rsp, 0x20
call fcn.14001c672
mov rdx, qword [rbp + 0x110]
mov rcx, qword [rbp + 0xd0]
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov r8, qword [rbp + 0x2f0]
mov rdx, qword [rdx]
mov qword [rax + 0x28], r8
mov qword [rax + 0x30], rdx
mov rcx, qword [rcx]
mov ecx, dword [rcx + 0xc]
mov dword [rax + 0x24], ecx
mov ecx, 0x20
sub rsp, 0x20
call fcn.14004ed80
mov r8, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0xc8]
mov qword [rax + 8], rdx
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x14016a144
mov ecx, dword [0x1401fcce8]
mov edx, dword [0x1401fccec]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
or eax, 0x81bc8e9a
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xbe3d23f3
mov edx, 0xffffffff
xor edx, 0xbe3d23f3
and eax, edx
sub eax, ecx
xor eax, 0xb7f6ae0e
cmp eax, 0x64375328
jb 0x14016a661
mov rcx, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x218]
mov rax, qword [rbp + 0xd0]
mov r8d, dword [str.X8]
mov r10d, dword [0x1401fccf4]
xor r9d, r9d
sub r9d, r10d
add r8d, r9d
or r8d, 0xb8aab42f
mov r11d, 0xffffffff
xor r11d, 0xc9825bc9
mov r10d, r8d
and r10d, r11d
mov r9d, r8d
or r9d, r11d
mov r11d, 0xf556fd7f
xor r11d, 0xaa90280
xor r9d, r11d
imul r9d, r10d
mov r10d, r8d
and r10d, 0xc9825bc9
or r8d, 0xc9825bc9
imul r8d, r10d
add r8d, r9d
mov r10d, 0x26039941
xor r10d, 0x26039940
mov r9d, r8d
add r9d, r10d
mov r10d, 0xe23629db
xor r10d, 0x1dc9d624
xor r8d, r10d
or r8d, 0x55e83c40
add r8d, r9d
mov dword [rbp + 0xb0], r8d
mov rax, qword [rax]
mov r8, qword [rax + 0x20]
mov qword [rdx], r8
mov rax, qword [rax + 0x28]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14013fdc0
mov r8, qword [rbp + 0x210]
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x248]
mov eax, dword [rbp + 0xb0]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rdx + 0x48], r9
mov r8, qword [r8 + 8]
mov qword [rdx + 0x50], r8
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xb7], cl
cmp eax, 0xbc58b81a
jae 0x140168ed3
mov rcx, qword [rbp + 0x138]
mov r8b, byte [rbp + 0xb7]
mov dl, 1
xor eax, eax
test r8b, 1
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x140169014
jmp 0x14016a144
mov rax, qword [rbp + 0xc8]
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0
mov qword [rbp + 0xa8], rax
jmp 0x140169328
movabs rcx, 0x866cb1e3146b529
movabs rax, 0x866cb1e3146b541
xor rcx, rax
movabs rdx, 0x28998edd2156bc78
movabs rax, 0x28998edd2156bc70
xor rdx, rax
sub rsp, 0x20
call fcn.140013970
mov rdx, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov qword [rbp + 0xa0], rax
mov rdx, qword [rdx]
mov edx, dword [rdx]
mov dword [rax + 0x20], edx
mov byte [rax], 1
sub rsp, 0x20
xor eax, eax
mov dl, al
call fcn.140143c5b
mov r8, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x14016a144
mov rdx, qword [rbp + 0x138]
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0xa0]
mov qword [rcx + 0x38], rdx
mov qword [rcx + 0x40], 0
mov rax, qword [rax]
mov rcx, qword [rax + 0x30]
mov qword [rbp + 0x2d0], rcx
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x2d8], rax
lea rcx, [rbp + 0x2e0]
lea rdx, [rbp + 0x2d0]
sub rsp, 0x20
call fcn.140160be0
mov rax, qword [rbp + 0xf8]
mov r8, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov rdx, qword [rbp + 0x2e0]
mov qword [rbp + 0x90], rdx
mov rax, qword [rax]
mov qword [rbp + 0x98], rax
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x14016a144
mov rdx, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x98]
mov r9, qword [rbp + 0x90]
mov qword [rdx + 0x58], r9
mov qword [rdx + 0x60], r8
mov rax, qword [rax]
mov rdx, qword [rax + 0x10]
mov qword [rbp + 0x2c0], rdx
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x2c8], rax
lea rdx, [rbp + 0x2c0]
sub rsp, 0x20
call fcn.14001c672
mov r10, qword [rbp + 0x220]
mov r9, qword [rbp + 0x100]
mov rax, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0x238]
mov rcx, qword [rbp + 0x228]
mov r8, qword [rbp + 0xa0]
add rsp, 0x20
mov r10, qword [r10]
mov r9, qword [r9]
mov qword [r8 + 0x28], r10
mov qword [r8 + 0x30], r9
mov rax, qword [rax]
mov r9d, dword [rax + 0xc]
mov dword [r8 + 0x24], r9d
mov r8, qword [rax + 0x20]
mov qword [rdx], r8
mov rax, qword [rax + 0x28]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14013fdc0
mov rax, qword [rbp + 0x228]
mov r9, qword [rbp + 0x248]
mov r8, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [r8 + 0x48], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 0x50], rax
mov dl, 1
xor eax, eax
cmp byte [r9], 0
mov qword [rbp + 0xa8], r8
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
je 0x140169328
jmp 0x14016a144
movabs rcx, 0xed02f4f3101d7b47
movabs rax, 0xed02f4f3101d7b07
xor rcx, rax
movabs rdx, 0xefd9a9702d94714b
movabs rax, 0xefd9a9702d947143
xor rdx, rax
sub rsp, 0x20
call fcn.140013970
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402090d8]
mov qword [rcx], rax
lea rax, [0x140208728]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1402087f8]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140208800]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140208728]
lea r8, str._oVJ_
lea r9, [0x140208743]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffff9edf0d02
call fcn.14001302b
add rsp, 0x30
jmp 0x14016a11e
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rbp + 0xa8]
sub rsp, 0x20
call fcn.14002eba0
mov rax, qword [rbp + 0xe8]
add rsp, 0x20
add rax, 1
mov qword [rbp + 0x120], rax
jmp 0x140168bcc
mov eax, dword [0x1401fccf8]
xor eax, 0x83b4a868
mov ecx, dword [0x1401fccfc]
xor ecx, 0x6e25cc32
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0x59b16900
xor edx, 0x737daaa
mov r8d, 0x7041d70
xor r8d, 0xf8fbe28f
xor edx, r8d
or eax, ecx
mov ecx, 0x2727b332
xor ecx, 0x79a10098
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
or eax, 0xc47c4325
mov ecx, eax
xor ecx, 0xeaa046c2
mov edx, 0xffffffff
xor edx, 0xeaa046c2
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x619c4d99
xor ecx, 0xb6ecfca8
and eax, ecx
mov ecx, 0xb83350d4
xor ecx, 0x568ccbaf
cmp eax, ecx
ja 0x14016a66a
mov rcx, qword [rbp + 0x258]
mov eax, dword [0x1401fcd00]
mov r8d, dword [0x1401fcd04]
mov edx, 0x8c268c9c
xor edx, 0x192d43ea
xor r8d, edx
mov edx, eax
and edx, r8d
or eax, r8d
add edx, eax
mov eax, edx
and eax, 0x67dabff8
xor edx, 0x67dabff8
or eax, edx
mov r8d, 0xc007dcd
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x128]
mov r8d, 0x335d8ce3
xor r8d, 0x1aa3bbf5
add eax, r8d
mov r8, rcx
add r8, 0x30
mov qword [rbp + 0x70], r8
mov qword [rcx + 0x30], 0
mov rdx, qword [rdx]
mov r8, rcx
add r8, 0x38
mov qword [rbp + 0x78], r8
add rcx, 0x28
mov qword [rbp + 0x80], rcx
xor ecx, ecx
test rdx, rdx
cmovg rcx, rdx
mov qword [rbp + 0x88], rcx
cmp eax, 0xba6ce7a7
je 0x1401693e5
xor eax, eax
mov qword [rbp + 0x68], rax
jmp 0x140169494
mov rcx, qword [rbp + 0x88]
mov rax, qword [rbp + 0x68]
mov qword [rbp + 0x60], rax
cmp rax, rcx
jne 0x14016961d
mov eax, dword [0x1401fcd08]
xor edx, edx
div dword [0x1401fcd0c]
mov edx, 0xffffffff
xor edx, 0x2b73723e
mov ecx, eax
xor ecx, edx
and ecx, eax
mov eax, ecx
and eax, eax
mov edx, 0xe7287cdd
xor edx, 0x18d78322
xor eax, edx
and eax, 0x7f0a4913
mov edx, 0x68ebbab8
xor edx, 0x97144547
xor eax, edx
mov edx, 0x7f0a4913
and edx, 0x7f0a4913
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov r8d, 0xfd4709fd
xor r8d, 0x140066c9
mov ecx, 0xbe341ce4
xor ecx, 0x41cbe31b
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xe9476f34
or eax, 0xe9476f34
imul eax, edx
add eax, ecx
cmp eax, 0x9dee0ea9
jbe 0x14016a673
mov rcx, qword [rbp + 0x248]
mov eax, dword [0x1401fcd10]
mov r8d, dword [0x1401fcd14]
xor r8d, 0xb16196d2
xor edx, edx
sub edx, eax
mov eax, 0x6f525ae4
xor eax, 0x6f525ae4
sub eax, r8d
add edx, eax
xor eax, eax
sub eax, edx
mov r8d, 0xbe7dc480
xor edx, edx
div r8d
mov r9d, 0xffffffff
xor r9d, 0xe928ac29
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0xe928ac29
mov r9d, 0x16fa692a
xor r9d, 0xffd2c503
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, 0x74b8af30
xor edx, 0xc814b91b
add eax, edx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x5f], cl
cmp eax, 0xe95327a8
jae 0x14016a673
mov rax, qword [rbp + 0x138]
mov r8b, byte [rbp + 0x5f]
mov dl, 1
xor ecx, ecx
test r8b, 1
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
jne 0x140169e9a
jmp 0x14016a144
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x60]
mov qword [rax], rcx
lea rcx, [rbp + 0x2b0]
mov edx, 0x10
sub rsp, 0x20
call fcn.140139340
mov rcx, qword [rbp + 0x258]
call fcn.140167d70
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x248]
mov qword [rbp + 0x50], rcx
mov al, byte [rax]
mov cl, 0xc6
xor cl, 0xc6
cmp al, cl
jne 0x140169d4b
mov rcx, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x260]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp + 0x48], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1401696e0
mov rcx, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x48]
movabs rax, 0x4ec7105738d68ce8
movabs r8, 0x4ec7105738d68ce8
xor rax, r8
movabs r8, 0x307bf3e49d741ba5
movabs r9, 0xcf840c1b628be45a
xor r8, r9
sub rax, r8
sub rdx, rax
sub rsp, 0x20
call fcn.140013c92
add rsp, 0x20
jmp 0x140169d4b
mov rcx, qword [rbp + 0x78]
mov rdx, qword [rbp + 0x50]
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
mov rdx, qword [rax + rdx*8 + 8]
sub rsp, 0x20
call fcn.1400d5800
mov rax, qword [rbp + 0x248]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x8e
xor cl, 0x8e
cmp al, cl
jne 0x140169d4b
mov rcx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x78]
mov rax, qword [rax]
mov eax, dword [rax + 8]
cmp eax, dword [rcx]
jne 0x1401697c5
mov rdx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x70]
mov rcx, qword [rax]
mov qword [rbp + 0x38], rcx
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp + 0x40], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140169780
mov rcx, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x40]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140013c92
add rsp, 0x20
jmp 0x140169d4b
mov rdx, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x38]
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
mov rcx, qword [rax + rcx*8 + 8]
add rcx, 0x40
sub rsp, 0x20
xor eax, eax
mov r8b, al
call fcn.1401434d4
mov rax, qword [rbp + 0x248]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401699f6
jmp 0x140169d4b
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
mov qword [rbp + 0x28], rax
cmp rax, 0
mov qword [rbp + 0x30], rax
jl 0x140169887
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x128]
mov rcx, qword [rcx]
cmp rax, rcx
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
jge 0x14016989d
movabs rdx, 0x526eac3dfc29ac21
movabs rax, 0x526eac3dfc29ac31
xor rdx, rax
lea rcx, [rbp + 0x2a0]
sub rsp, 0x20
call fcn.140139340
mov rcx, qword [rbp + 0x258]
call fcn.140168035
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x248]
mov qword [rbp + 0x10], rcx
mov al, byte [rax]
mov cl, 0x1d
xor cl, 0x1d
cmp al, cl
jne 0x1401698cc
mov rax, qword [rbp + 0x10]
cmp rax, 0
mov qword [rbp + 0x30], rax
jl 0x140169887
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x128]
mov rcx, qword [rcx]
cmp rax, rcx
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
jl 0x1401699ab
jmp 0x14016989d
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x30]
mov rcx, qword [rcx]
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
movabs rax, 0x78b1b461a3f72214
movabs r8, 0x874e4b9e5c08ddeb
xor rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.140013c92
add rsp, 0x20
mov eax, dword [0x1401fcd18]
mov ecx, dword [0x1401fcd1c]
xor ecx, 0xada495b9
or eax, ecx
or eax, 0x634af407
mov ecx, 0xf0ce4a1b
xor edx, edx
div ecx
and eax, eax
mov ecx, 0x81d59eb7
xor ecx, 0x7e2a6148
xor eax, ecx
mov ecx, 0xb33fada6
xor ecx, 0x59419bed
mov edx, 0x3a8f53b4
xor edx, 0xc570ac4b
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xea7e364b
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0xc171fb64
je 0x14016a67c
mov eax, dword [0x1401fcd20]
add eax, dword [0x1401fcd24]
mov r8d, 0xf1a10d15
xor r8d, 0x89a3fc40
mov ecx, 0x5b646dca
xor ecx, 0xa49b9235
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x7802f155
mov r8d, 0xb483b59
xor r8d, 0x734aca0c
or eax, r8d
imul eax, edx
add eax, ecx
and eax, 0xf2242383
mov ecx, 0xe45c2a7b
xor ecx, 0xdde1f519
and eax, ecx
cmp eax, 0x4f8a88d3
jae 0x140169935
jmp 0x140169d4b
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
mov rcx, qword [rcx]
mov rcx, qword [rax + rcx*8 + 8]
add rcx, 0x40
mov rdx, qword [rax + rdx*8 + 8]
sub rsp, 0x20
xor eax, eax
mov r8b, al
call fcn.1401434d4
mov rax, qword [rbp + 0x248]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xad
xor cl, 0xad
cmp al, cl
jne 0x14016a11e
mov rdx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x70]
mov rcx, qword [rax]
mov qword [rbp], rcx
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp + 8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140169a43
mov rcx, qword [rbp]
mov rdx, qword [rbp + 8]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140013c92
add rsp, 0x20
jmp 0x140169d4b
mov eax, dword [0x1401fcd28]
mov edx, dword [0x1401fcd2c]
xor edx, 0x1765221a
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
and eax, eax
mov ecx, 0x8223a761
xor ecx, 0x7ddc589e
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x6a7f6127
mov edx, 0x4b19f566
xor edx, 0x21669441
mov r8d, 0xaacd1d64
xor r8d, 0x5532e29b
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x2c491879
xor ecx, 0xd31cd3b6
and eax, ecx
xor ecx, ecx
sub ecx, 0xd7d6b6ea
sub eax, ecx
mov ecx, 0xe970bf61
xor ecx, 0xe5e9b32c
cmp eax, ecx
jb 0x14016a685
mov rcx, qword [rbp]
mov rax, qword [rbp + 0x80]
mov r8d, dword [0x1401fcd30]
mov edx, dword [str.Q_C_]
or r8d, r8d
xor r8d, 0xffffffff
or edx, edx
xor edx, 0xffffffff
or r8d, edx
xor r8d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xd60d408f
mov edx, r8d
xor edx, r9d
and edx, r8d
xor edx, 0xe237aca9
mov r10d, 0xffffffff
xor r10d, 0xf66fd3a5
mov r9d, edx
and r9d, r10d
mov r8d, edx
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r9d, edx
and r9d, 0xf66fd3a5
or edx, 0xf66fd3a5
imul edx, r9d
add edx, r8d
mov dword [rbp - 8], edx
mov rax, qword [rax]
mov rcx, qword [rax + rcx*8 + 8]
mov qword [rbp - 0x18], rcx
cmp qword [rcx + 0x28], 0
sete al
mov byte [rbp - 9], al
sub rsp, 0x20
call fcn.14014356e
mov rcx, qword [rbp + 0x248]
mov eax, dword [rbp - 8]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 1], cl
cmp eax, 0x484995bd
jbe 0x14016a685
mov al, byte [rbp - 9]
test al, 1
jne 0x140169b9d
jmp 0x140169ce1
mov al, byte [rbp - 1]
test al, 1
jne 0x140169bad
jmp 0x140169d4b
mov eax, dword [0x1401fcd38]
mov edx, dword [0x1401fcd3c]
mov ecx, 0xf85999eb
xor ecx, 0xf85999eb
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
add eax, 0x86acfd88
sub eax, 0xb50d68fd
sub eax, 0x86acfd88
mov ecx, 0xe8660a5
xor ecx, 0x9599d850
xor edx, edx
div ecx
mov ecx, 0x3c35125c
xor edx, edx
div ecx
cmp eax, 0x8332aa2b
jae 0x14016a68e
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x80]
mov r8d, dword [0x1401fcd40]
or r8d, dword [0x1401fcd44]
mov r10d, r8d
xor r10d, 0xffffffff
and r10d, 0xc123392c
mov r11d, 0x91e0067
xor r11d, 0xc83d394b
mov r9d, 0xf20f6f26
xor r9d, 0xdf090d9
xor r11d, r9d
mov r9d, r8d
and r9d, r11d
imul r9d, r10d
mov r10d, r8d
and r10d, 0xc123392c
or r8d, 0xc123392c
imul r8d, r10d
add r8d, r9d
mov r9d, 0xa4e49271
xor r9d, 0x7f6d1c80
or r8d, r9d
mov r9d, r8d
and r9d, 0xf99fd441
mov r10d, 0xe200a47d
xor r10d, 0xe200a47f
imul r9d, r10d
mov r10d, 0x7b22c825
xor r10d, 0x82bd1c64
xor r8d, r10d
add r8d, r9d
mov dword [rbp - 0x1c], r8d
mov rax, qword [rax]
mov rcx, qword [rcx]
mov rax, qword [rax + rcx*8 + 8]
mov rcx, qword [rax + 0x40]
add rcx, 0x10
sub rsp, 0x20
call fcn.14002eba0
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
cmp eax, 0xfacdfb1a
je 0x140169c02
jmp 0x140169d50
mov al, byte [rbp - 1]
test al, 1
jne 0x140169cf1
jmp 0x140169d4b
mov r8, qword [rbp - 0x18]
mov rdx, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
mov rcx, qword [rcx]
mov rax, qword [rax + rcx*8 + 8]
mov rcx, qword [rax + 0x40]
mov rcx, qword [rcx + 8]
mov r9, qword [rax + 0x28]
mov qword [rdx], r9
mov rax, qword [rax + 0x30]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140050f77
mov rax, qword [rbp + 0x248]
add rsp, 0x20
cmp byte [rax], 0
je 0x140169d50
jmp 0x14016a11e
jmp 0x14016a11e
mov eax, dword [0x1401fcd48]
xor eax, 0x2662cbdc
or eax, dword [0x1401fcd4c]
mov edx, 0x4dfbdd3d
xor edx, 0x9a311121
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
and ecx, 0xd7cacc1c
shl ecx, 1
mov edx, 0x6540f73f
xor edx, 0xb28a3b23
sub ecx, edx
sub eax, ecx
mov ecx, 0x266302c9
xor ecx, 0xd58d53b8
add eax, ecx
mov ecx, 0xfa7ca075
xor edx, edx
div ecx
cmp eax, 0xc8ef5853
jae 0x14016a697
mov rdx, qword [rbp + 0x60]
mov eax, dword [0x1401fcd50]
mov ecx, 0xdcb894ab
xor ecx, 0xad273aad
xor eax, ecx
xor eax, dword [0x1401fcd54]
sub eax, 0x4d7eac3
mov ecx, 0x207d36a7
xor ecx, 0x14acb8d7
mov r8d, 0x63cee847
xor r8d, 0x9c3117b8
xor ecx, r8d
xor r8d, r8d
sub r8d, 1
sub ecx, r8d
sub eax, ecx
mov ecx, eax
xor ecx, 0x3d4109ef
mov r8d, 0x89a33214
xor r8d, 0x765ccdeb
xor ecx, r8d
and ecx, 0x3d4109ef
shl ecx, 1
mov r8d, 0xf6c57e61
xor r8d, 0xcb84778e
sub ecx, r8d
sub eax, ecx
mov ecx, 0xb87aa6bf
xor ecx, 0xd7767f2a
movabs r8, 0x7d120f8d40964b31
movabs r9, 0xe9f751afa60187b9
xor r8, r9
sub rdx, r8
movabs r8, 0x40aa1f633ee9d36a
movabs r9, 0x40aa1f633ee9d36b
xor r8, r9
add rdx, r8
movabs r8, 0x2e4ad9e2da4bb18f
movabs r9, 0xbaaf87c03cdc7d07
xor r8, r9
add rdx, r8
mov qword [rbp - 0x28], rdx
cmp eax, ecx
jbe 0x140169dac
mov rax, qword [rbp - 0x28]
mov qword [rbp + 0x68], rax
jmp 0x140169494
mov rax, qword [rbp + 0x158]
cmp rax, 0
je 0x140169f98
mov ecx, dword [0x1401fcd58]
sub ecx, dword [0x1401fcd5c]
or ecx, 0xabf0d852
mov edx, 0xffffffff
xor edx, 0xabdde305
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x161cdc4e
mov edx, 0xb5672f09
xor edx, 0xa37bf347
mov r8d, 0xebdce3f1
xor r8d, 0x14231c0e
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x7e67d2b6
xor edx, 0x81982d49
xor ecx, edx
and eax, ecx
cmp eax, 0xcaf01614
je 0x14016a6a0
mov rcx, qword [rbp + 0x158]
mov eax, dword [0x1401fcd60]
mov edx, dword [0x1401fcd64]
xor edx, 0x834080f
or eax, edx
sub eax, 0xd9c2e442
or eax, 0x1ce30898
sub eax, 0xd4b57081
mov rcx, qword [rcx]
movabs rdx, 0x316c6c7197403b68
movabs r8, 0x716c6c7197403b68
xor rdx, r8
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp - 0x29], cl
cmp eax, 0x20f0d06f
je 0x140169f18
mov al, byte [rbp - 0x29]
test al, 1
jne 0x140169f84
jmp 0x140169f98
mov rcx, qword [rbp + 0x158]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401429c0
mov rdx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x138]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jne 0x14016a302
mov rax, qword [rbp + 0x250]
mov rcx, qword [rax]
mov qword [rbp + 0x290], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x298], rax
lea rcx, [rbp + 0x290]
sub rsp, 0x20
call fcn.14013b5e0
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x138]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x38], rax
jne 0x14016a634
mov rcx, qword [rbp + 0x1a8]
sub rsp, 0x20
call fcn.1400d52c0
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x138]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x5c
xor dl, 0x5c
cmp cl, dl
mov qword [rbp - 0x38], rax
jne 0x14016a634
mov rax, qword [rbp + 0x1b0]
mov rax, qword [rax + 8]
mov qword [rbp - 0x40], rax
cmp rax, 0
je 0x14016a0fa
mov rax, qword [rbp - 0x40]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0x4770a8b197d49000
movabs rdx, 0x770a8b197d49000
xor rcx, rdx
movabs rdx, 0x7434d3e02a80129f
movabs r8, 0x8bcb2c1fd57fed60
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x2e64edb92300508e
movabs r8, 0xd19b1246dcffaf71
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016a0fa
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rcx, qword [rbp + 0x258]
sub rsp, 0x20
call fcn.14016813e
mov rax, qword [rbp + 0x138]
add rsp, 0x20
mov qword [rbp - 0x38], rax
jmp 0x14016a634
mov rcx, qword [rbp + 0x138]
mov rax, qword [rbp + 0x248]
mov dl, byte [rax]
xor eax, eax
mov byte [rbp + 0x167], dl
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x158]
mov rcx, qword [rbp + 0x248]
mov dl, byte [rbp + 0x167]
mov r8, qword [rbp + 0x168]
mov r9, qword [rbp + 0x170]
mov qword [rbp - 0x58], r9
mov qword [rbp - 0x50], r8
mov byte [rbp - 0x41], dl
mov dl, 0x51
xor dl, 0x51
mov byte [rcx], dl
cmp rax, 0
je 0x14016a203
mov rax, qword [rbp + 0x158]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xc93c053ea62209e3
movabs r8, 0x36c3fac159ddf61c
xor rdx, r8
xor rax, rdx
movabs rdx, 0x42680488811d93e1
movabs r8, 0xbd97fb777ee26c1e
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14016a203
mov rcx, qword [rbp + 0x158]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.1401429c0
mov rcx, qword [rbp + 0x248]
mov al, byte [rbp - 0x41]
add rsp, 0x20
mov dl, 1
mov byte [rbp - 0x5a], dl
cmp byte [rcx], 0
mov byte [rbp - 0x59], al
je 0x14016a235
mov al, byte [rbp - 0x5a]
mov byte [rbp - 0x59], al
mov rax, qword [rbp - 0x58]
mov cl, byte [rbp - 0x59]
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
jmp 0x14016a302
movabs rcx, 0x7c5ccb7acb4e8b72
movabs rax, 0x7c5ccb7acb4e8b32
xor rcx, rax
movabs rdx, 0xe5080a3de262d2c8
movabs rax, 0xe5080a3de262d2c0
xor rdx, rax
sub rsp, 0x20
call fcn.140013970
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402090d8]
mov qword [rcx], rax
lea rax, [0x140208728]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1402087f8]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140208800]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140208728]
lea r8, str._oVJ_
lea r9, [0x140208743]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x73c6f403
call fcn.14001302b
mov rax, qword [rbp + 0x248]
add rsp, 0x30
mov cl, byte [rax]
xor eax, eax
mov byte [rbp + 0x277], cl
mov qword [rbp + 0x278], rax
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x250]
mov dl, byte [rbp + 0x277]
mov r8, qword [rbp + 0x278]
mov qword [rbp - 0x68], r8
mov byte [rbp - 0x69], dl
mov byte [rcx], 0
mov rcx, qword [rax]
mov qword [rbp + 0x280], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x288], rax
lea rcx, [rbp + 0x280]
sub rsp, 0x20
call fcn.14013b5e0
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp - 0x68]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x38], rax
jne 0x14016a634
mov rcx, qword [rbp + 0x1a8]
sub rsp, 0x20
call fcn.1400d52c0
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp - 0x68]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xdb
xor dl, 0xdb
cmp cl, dl
mov qword [rbp - 0x38], rax
jne 0x14016a634
mov rax, qword [rbp + 0x1b0]
mov rax, qword [rax + 8]
mov qword [rbp - 0x78], rax
cmp rax, 0
je 0x14016a405
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movabs rcx, 0x1364d06a4490940f
movabs rdx, 0x5364d06a4490940f
xor rcx, rdx
and rax, rcx
movabs rcx, 0x29a6c5bc46efbe6d
movabs rdx, 0x29a6c5bc46efbe6d
xor rcx, rdx
cmp rax, rcx
jne 0x14016a405
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov eax, dword [0x1401fcd68]
xor eax, 0xddb467a1
mov ecx, dword [0x1401fcd6c]
xor ecx, 0x27c3ea90
xor edx, edx
div ecx
mov ecx, 0x2ed5570d
xor ecx, 0xeed504bc
and eax, ecx
add eax, 0x762cb019
mov ecx, 0x28426369
xor ecx, 0xec6d7815
add eax, ecx
mov ecx, 0x57e73245
xor ecx, 0xa26a9790
cmp eax, ecx
jae 0x14016a6a9
mov rcx, qword [rbp + 0x258]
mov eax, dword [0x1401fcd70]
mov r8d, dword [0x1401fcd74]
xor r8d, 0xa4351934
xor edx, edx
div r8d
mov r8d, 0xbf9d40bd
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xfbb31962
mov eax, edx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x8ee4e925
or eax, r8d
mov r8d, 0x2a0c8c71
xor r8d, 0xa4e86554
mov r9d, 0x47bc10d6
xor r9d, 0xc958f9f3
and r8d, r9d
xor r8d, 0xffffffff
xor edx, 0xffffffff
mov r9d, 0x3d6137b1
xor r9d, 0xc29ec84e
xor r8d, r9d
or edx, r8d
mov r8d, 0x38fbaae6
xor r8d, 0xc7045519
xor eax, r8d
xor edx, 0xffffffff
or eax, edx
mov dword [rbp - 0x80], eax
sub rsp, 0x20
call fcn.14016813e
mov rcx, qword [rbp + 0x248]
mov eax, dword [rbp - 0x80]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x79], cl
cmp eax, 0xa11f8451
ja 0x14016a452
mov rax, qword [rbp - 0x68]
mov cl, byte [rbp - 0x79]
test cl, 1
mov qword [rbp - 0x38], rax
jne 0x14016a53a
jmp 0x14016a634
mov ecx, dword [0x1401fcd78]
mov edx, dword [0x1401fcd7c]
mov r8d, 0x3db233b0
xor r8d, 0xc24dcc4f
mov eax, ecx
xor eax, r8d
mov r8d, ecx
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0xebb5f044
xor r8d, 0x144a0fbb
xor eax, r8d
mov r9d, 0xf11c0be3
xor r9d, 0xee3f41c
mov r8d, edx
xor r8d, r9d
or eax, r8d
and edx, edx
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
xor ecx, 0x7da2b110
mov edx, 0x3fbc2fa9
xor edx, 0x421e9eb9
mov r8d, 0x5ff90290
xor r8d, 0xa006fd6f
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
or eax, 0x141cd20c
sub eax, 0x52ebbfe7
mov ecx, 0x1467cd35
xor ecx, 0x762a3397
cmp eax, ecx
jae 0x14016a6b2
mov rcx, qword [rbp + 0x248]
mov eax, dword [0x1401fcd80]
xor eax, dword [0x1401fcd84]
mov r8d, 0x1c076cae
xor edx, edx
div r8d
mov r8d, 0xd59b0584
xor r8d, 0x86227f8f
xor edx, edx
div r8d
mov dl, byte [rbp - 0x69]
imul eax, eax, 0x20a66a52
mov byte [rcx], dl
cmp eax, 0x843c9d09
ja 0x14016a5e1
mov rax, qword [rbp - 0x68]
mov qword [rbp - 0x38], rax
jmp 0x14016a634
mov rax, qword [rbp - 0x38]
lea rsp, [rbp + 0x360]
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
invalid
movabs al, byte [0xffffe0eae9d9fb7a]
mov cl, 0x82
invalid
jrcxz 0x14016a65f
invalid
call qword [rcx]
sbb eax, 0x69e9ff7f
adc dword [0x1aa00a5e6], ebx
call 0x16572a66b
insd dword [rdi], dx
loop 0x14016a658
pop rbx
and eax, 0x72e9e26d
in eax, dx
jb 0x14016a65e
invalid
out 0xab, al
jb 0x14016a6c6
jmp 0x14016954e
invalid
int3
invalid
sbb dword [rbp + 0xce9b8a8], edx
idiv edi
invalid
invalid
int1
adc edx, dword [rbx - 0x25f17]
call qword [rdi + rsi*4 + 0x26e90571]
invalid
xchg esp, eax
mov bh, 0x71
add eax, 0xffff26e9
dec dword [rdi]
invalid
add byte [rax - 0x77], cl
push rsp
and al, 0x70