Function at 0x140155930
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x308
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x278], rdx
mov qword [rbp + 0x280], rcx
mov eax, dword [0x1401d0b78]
xor eax, 0x942d02e0
mov edx, dword [0x1401d0b7c]
xor edx, 0xad9f9a5f
xor ecx, ecx
sub ecx, edx
sub eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xe3b657af
mov edx, 0x48b7e944
xor edx, 0xa3b9d9c5
mov r8d, 0x4d3f8841
xor r8d, 0xb2c077be
xor edx, r8d
or eax, ecx
mov ecx, 0x601b9148
xor ecx, 0x8b15a1c9
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov edx, 0x9359eade
xor edx, 0x16994474
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, 0x85c0aeaa
sub eax, ecx
xor eax, 0xf2e6cbce
cmp eax, 0xa958f8eb
jae 0x140157832
mov eax, dword [0x1401d0b80]
mov ecx, dword [0x1401d0b84]
add eax, ecx
mov ecx, eax
imul rcx, rcx, 0x2c8280fd
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xfffffffe
and ecx, 0xb624a929
imul ecx, edx
mov edx, eax
and edx, 1
or eax, 0xb624a929
imul eax, edx
add eax, ecx
imul eax, eax, 0xb798fa2e
mov dword [rbp + 0x270], eax
mov eax, 0x77c69c8e
mov dword [rbp + 0x26c], eax
mov eax, 0x10
mov qword [rbp + 0x210], rax
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x250], rax
mov eax, 0x20
mov qword [rbp + 0x1f8], rax
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x228], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x240], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x248], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x60], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x68], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x70], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x78], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x80], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x88], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x258], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x90], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x98], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0xa0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0xa8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0xb0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0xb8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0xc0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0xc8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0xd0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0xd8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0xe0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0xe8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0xf0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0xf8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x100], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x108], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x110], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x118], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x120], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x128], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x130], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x138], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x140], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x148], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x150], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x158], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x160], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x168], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x170], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x178], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x180], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x188], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x190], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x198], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x1a0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x1a8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x1b0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x1b8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x1c0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x1c8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x1d0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x1d8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x1e0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x1e8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x1f0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f8]
mov rcx, rsp
mov qword [rbp + 0x200], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x208], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x210]
mov rcx, rsp
mov qword [rbp + 0x218], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x220], rax
sub rsp, 0x20
call fcn.140163bef
mov rcx, qword [rbp + 0x228]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x250]
mov qword [rbp + 0x260], rdx
add rdx, 0x60
mov qword [rbp + 0x230], rdx
movabs rdx, 0xd1ea8c631331afa8
movabs r8, 0xd1ea8c631331afa8
xor rdx, r8
mov qword [rax], rdx
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x238], rdx
mov qword [rax + 8], 0
mov edx, 0x18
sub rsp, 0x20
call fcn.140157890
mov rcx, qword [rbp + 0x240]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.140157890
mov rcx, qword [rbp + 0x248]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.140157890
mov rax, qword [rbp + 0x280]
mov rcx, qword [rbp + 0x250]
mov rdx, qword [rbp + 0x258]
add rsp, 0x20
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14008e9e0
mov rdx, qword [rbp + 0x260]
mov ecx, dword [rbp + 0x26c]
mov eax, dword [rbp + 0x270]
add rsp, 0x20
cmp byte [rdx + 0x60], 0
sete dl
mov byte [rbp + 0x277], dl
cmp eax, ecx
ja 0x1401559d4
mov cl, byte [rbp + 0x277]
mov al, 1
test cl, 1
mov byte [rbp + 0x5f], al
jne 0x14015611f
jmp 0x140157459
mov eax, dword [0x1401d0b88]
xor eax, 0xbefe20f4
sub eax, dword [0x1401d0b8c]
imul eax, eax, 0x4915eab1
and eax, 0x8bd708c7
and eax, 0x1beefacc
mov ecx, 0xae223662
xor ecx, 0xb1788be9
cmp eax, ecx
je 0x14015783b
mov eax, dword [0x1401d0b90]
mov ecx, 0x9d6f43dd
xor ecx, 0xe70aab5a
xor eax, ecx
mov ecx, dword [0x1401d0b94]
mov edx, 0xa78c7f
xor edx, 0xaee7d0cc
xor ecx, edx
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0xe4f36f4c
xor ecx, 0xffffffff
add eax, 0xe4f36f4c
add eax, 1
add eax, ecx
mov ecx, 0xca2eb1af
xor edx, edx
div ecx
mov ecx, 0xffbb84d0
xor edx, edx
div ecx
mov dword [rbp + 0x4c], eax
mov eax, 0xf0113c5e
xor eax, 0xb450a40f
mov dword [rbp + 0x48], eax
mov ecx, 0xe0
mov edx, 8
sub rsp, 0x20
call fcn.14001be40
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0x90]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0x280]
mov qword [rbp + 0x40], r8
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001c072
mov rdx, qword [rbp + 0x90]
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0xa0]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rdx + 8]
mov qword [rax], r8
mov qword [rax + 8], rdx
mov edx, 0x18
sub rsp, 0x20
call fcn.140157890
mov rcx, qword [rbp + 0xa8]
add rsp, 0x20
mov ax, 0xd02f
xor ax, 0xd544
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
mov rdx, qword [rbp + 0x230]
mov ecx, dword [rbp + 0x48]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x4c]
mov qword [rbp + 0x50], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x5e], dl
cmp eax, ecx
jae 0x14015783b
mov cl, byte [rbp + 0x5e]
mov al, 1
test cl, 1
mov byte [rbp + 0x3f], al
jne 0x14015628e
jmp 0x1401565c9
mov rcx, qword [rbp + 0xb8]
mov r8, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0x50]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rdx, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rax], r8
mov r8, qword [rdx + 8]
mov qword [rax + 8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rax + 0x10], rdx
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x3f], al
jne 0x1401565c9
mov rax, qword [rbp + 0xa0]
cmp byte [rax + 0x10], 0
jne 0x140156408
mov rcx, qword [rbp + 0xd0]
mov ax, 0xa4e9
xor ax, 0xa44b
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x30], rcx
cmp byte [rax], 0
jne 0x1401563fe
mov r8, qword [rbp + 0xe8]
mov rdx, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x30]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rax, qword [rbp + 0x230]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401563fe
mov rdx, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xd8]
mov r8, qword [rax]
mov qword [rdx], r8
mov r8, qword [rax + 8]
mov qword [rdx + 8], r8
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
sub rsp, 0x20
call fcn.14005dc23
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x22
xor cl, 0x22
cmp al, cl
je 0x140156408
mov al, 1
mov byte [rbp + 0x3f], al
jmp 0x1401565c9
mov eax, dword [0x1401d0b98]
mov edx, dword [0x1401d0b9c]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
mov ecx, 0x28a857d7
xor ecx, 0x1497b40f
xor eax, ecx
mov ecx, 0xf4d5f3c6
xor ecx, 0xb476e7be
or eax, ecx
mov ecx, 0xfaae9a8e
xor edx, edx
div ecx
mov ecx, 0xae557617
xor ecx, 0x62c304cb
cmp eax, ecx
jae 0x140157844
mov rcx, qword [rbp + 0xa0]
mov eax, dword [0x1401d0ba0]
xor eax, 0x219e3879
mov r8d, dword [0x1401d0ba4]
mov edx, eax
and edx, r8d
shl edx, 1
add eax, r8d
sub eax, edx
mov r8d, 0x84d8e925
xor r8d, 0xfed079d
xor edx, edx
div r8d
mov r8d, eax
mov rax, qword [rbp + 0x228]
mov edx, r8d
or edx, 0xba945aa2
xor edx, 0xffffffff
or r8d, 0xba945aa2
xor r8d, 0xffffffff
mov r9d, 0xba1ec590
xor r9d, 0x45e13a6f
xor edx, r9d
xor r8d, 0xffffffff
and edx, r8d
mov r8d, 0xa8b49129
xor r8d, 0x574b6ed6
mov r9d, edx
xor r9d, r8d
and r9d, 0x42e25ffb
mov r10d, 0xca4620f
xor r10d, 0x4e463df4
mov r8d, 0xd6ad2f94
xor r8d, 0x2952d06b
xor r10d, r8d
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r9d, edx
and r9d, 0x42e25ffb
or edx, 0x42e25ffb
imul edx, r9d
add edx, r8d
mov dword [rbp + 0x28], edx
mov edx, 0xb88c402b
xor edx, 0x68f1b131
mov dword [rbp + 0x24], edx
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.14005da3b
mov rcx, qword [rbp + 0x228]
mov rax, qword [rbp + 0xb0]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.14005da3b
mov r9, qword [rbp + 0xb0]
mov r8, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x230]
mov ecx, dword [rbp + 0x24]
mov eax, dword [rbp + 0x28]
add rsp, 0x20
mov r10, qword [r9]
mov qword [r8 + 0x20], r10
mov r10, qword [r9 + 8]
mov qword [r8 + 0x28], r10
mov r9, qword [r9 + 0x10]
mov qword [r8 + 0x30], r9
mov dl, byte [rdx]
mov byte [rbp + 0x2f], dl
cmp eax, ecx
ja 0x140156455
mov al, byte [rbp + 0x2f]
mov byte [rbp + 0x3f], al
jmp 0x1401565c9
mov al, byte [rbp + 0x3f]
mov byte [rbp + 0x23], al
mov ecx, dword [0x1401d0ba8]
mov r8d, dword [0x1401d0bac]
xor r8d, 0xd48952eb
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
xor ecx, 0x5648ff4a
mov edx, 0xf6b29e8f
xor edx, 0xf61dc8ae
mov eax, ecx
and eax, edx
xor ecx, 0xaf5621
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xe3bd5b06
mov r8d, 0xffffffff
xor r8d, 0xe3bd5b06
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xb7d8830e
xor r8d, 0x5465d808
mov edx, eax
and edx, r8d
mov r8d, 0x2cb77700
xor r8d, 0xcf0a2c06
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0xa3aa8e77
jae 0x14015784d
mov rax, qword [rbp + 0x230]
mov rcx, qword [rbp + 0xa0]
mov r8d, dword [0x1401d0bb0]
mov r9d, dword [0x1401d0bb4]
mov edx, r8d
and edx, r9d
or r8d, r9d
add edx, r8d
or edx, 0x7d569ee8
mov r8d, 0x5d7c38f
xor r8d, 0xf008d84c
imul edx, r8d
mov r10d, 0xf74324c5
xor r10d, 0x91b765f0
mov r8d, 0xfe59d23e
xor r8d, 0x1a62dc1
xor r10d, r8d
mov r9d, edx
and r9d, r10d
mov r8d, edx
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r9d, edx
and r9d, 0x66f44135
or edx, 0x66f44135
imul edx, r9d
add edx, r8d
mov dword [rbp + 0x1c], edx
mov byte [rax], 0
sub rsp, 0x20
call fcn.14005da50
mov rcx, qword [rbp + 0x230]
mov eax, dword [rbp + 0x1c]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x22], cl
cmp eax, 0xbcca6b4
je 0x140156676
mov cl, byte [rbp + 0x22]
mov al, 1
test cl, 1
mov byte [rbp + 0x1b], al
jne 0x140156744
jmp 0x14015675b
mov al, byte [rbp + 0x23]
mov rcx, qword [rbp + 0x230]
mov byte [rcx], al
cmp al, 0
mov byte [rbp + 0x1b], al
je 0x140156766
mov al, byte [rbp + 0x1b]
mov byte [rbp + 0x5f], al
jmp 0x140157459
mov rcx, qword [rbp + 0xf8]
movabs rdx, 0x14568964474085e6
movabs rax, 0x14568964474085fe
xor rdx, rax
sub rsp, 0x20
call fcn.140157890
mov rcx, qword [rbp + 0x100]
add rsp, 0x20
mov ax, 0x1661
xor ax, 0x13a0
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x10], rcx
mov cl, byte [rax]
mov dl, 0x70
xor dl, 0x70
mov al, 1
cmp cl, dl
mov byte [rbp + 0x1a], al
jne 0x140156b27
mov ecx, dword [0x1401d0bb8]
xor ecx, 0x4a3ead42
mov edx, dword [0x1401d0bbc]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0xdb287db
xor ecx, 0xcbf65bb3
or eax, ecx
add eax, 0x50c144c2
sub eax, 0xccb67f21
mov ecx, 0x22abaee8
xor ecx, 0x726aea2a
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xd8ebb448
xor edx, 0x682c2e1a
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xb0c79a52
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x6c4f0b23
xor r8d, 0xdc889171
mov edx, eax
and edx, r8d
or eax, 0xb0c79a52
imul eax, edx
add eax, ecx
mov ecx, 0xff90d48b
xor ecx, 0xfc3ba36b
cmp eax, ecx
jb 0x140157856
mov rcx, qword [rbp + 0x110]
mov r8, qword [rbp + 0x120]
mov rdx, qword [rbp + 0x118]
mov rax, qword [rbp + 0x10]
mov r9, qword [rbp + 0x280]
mov r10d, dword [0x1401d0bc0]
mov edi, dword [0x1401d0bc4]
mov r11d, r10d
xor r11d, 0xffffffff
mov esi, edi
and esi, r11d
mov ebx, edi
xor ebx, 0xffffffff
mov r11d, r10d
and r11d, ebx
imul r11d, esi
mov esi, r10d
and esi, edi
or r10d, edi
imul r10d, esi
add r10d, r11d
mov r11d, 0x2216b0d9
xor r11d, 0xdfbc6961
add r10d, r11d
mov edi, 0x5fbc6ca0
xor edi, 0xcde79054
mov r11d, 0x8b5efa45
xor r11d, 0x74a105ba
xor edi, r11d
mov esi, r10d
and esi, edi
mov r11d, r10d
or r11d, edi
xor r11d, 0xffffffff
imul r11d, esi
mov esi, r10d
and esi, 0x925bfcf4
mov edi, 0x52a5766
xor edi, 0x9771ab92
or r10d, edi
imul r10d, esi
add r10d, r11d
imul r10d, r10d, 0x378e1b43
mov dword [rbp + 8], r10d
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov r8, qword [rbp + 0x110]
mov rdx, qword [rbp + 0xf8]
mov rcx, qword [rbp + 0x230]
mov eax, dword [rbp + 8]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rdx], r9
mov r9, qword [r8 + 8]
mov qword [rdx + 8], r9
mov r8, qword [r8 + 0x10]
mov qword [rdx + 0x10], r8
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xf], cl
cmp eax, 0x95f8ecd2
jae 0x140156866
mov cl, byte [rbp + 0xf]
mov al, 1
test cl, 1
mov byte [rbp + 0x1a], al
jne 0x1401569a5
jmp 0x140156b27
mov rax, qword [rbp + 0xf8]
cmp byte [rax + 0x10], 0
jne 0x140156a97
mov rcx, qword [rbp + 0x128]
mov word [rcx], 0x670
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x230]
mov qword [rbp], rcx
cmp byte [rax], 0
jne 0x140156a8d
mov r8, qword [rbp + 0x140]
mov rdx, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x130]
mov rax, qword [rbp]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rax, qword [rbp + 0x230]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140156a8d
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0xf8]
mov rax, qword [rbp + 0x130]
mov r8, qword [rax]
mov qword [rdx], r8
mov r8, qword [rax + 8]
mov qword [rdx + 8], r8
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
sub rsp, 0x20
call fcn.14005dc23
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xc
xor cl, 0xc
cmp al, cl
je 0x140156a97
mov al, 1
mov byte [rbp + 0x1a], al
jmp 0x140156b27
mov rax, qword [rbp + 0x240]
mov rcx, qword [rbp + 0xf8]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.14005da3b
mov rcx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x108]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.14005da3b
mov rdx, qword [rbp + 0x108]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx + 0x38], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 0x40], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0x48], rdx
mov al, byte [rax]
mov byte [rbp + 0x1a], al
mov rax, qword [rbp + 0x230]
mov rcx, qword [rbp + 0xf8]
mov dl, byte [rbp + 0x1a]
mov byte [rbp - 2], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14005da50
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 1], al
jne 0x140156b77
mov al, byte [rbp - 2]
mov rcx, qword [rbp + 0x230]
mov byte [rcx], al
cmp al, 0
mov byte [rbp - 1], al
je 0x140156b82
mov al, byte [rbp - 1]
mov byte [rbp + 0x5f], al
jmp 0x140157459
mov rcx, qword [rbp + 0x60]
mov word [rcx], 0x8d7
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov qword [rbp - 0x10], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x5f], al
jne 0x140157459
mov rcx, qword [rbp + 0x150]
mov r8, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x158]
mov rax, qword [rbp - 0x10]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rdx, qword [rbp + 0x150]
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rax + 0x50], r8
mov r8, qword [rdx + 8]
mov qword [rax + 0x58], r8
mov rdx, qword [rdx + 0x10]
mov qword [rax + 0x60], rdx
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x5f], al
jne 0x140157459
mov rcx, qword [rbp + 0x68]
mov ax, 0x78b9
xor ax, 0x72e9
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov qword [rbp - 0x18], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x5f], al
jne 0x140157459
mov eax, dword [0x1401d0bc8]
xor edx, edx
div dword [0x1401d0bcc]
mov ecx, 0x879f0f42
xor ecx, 0xdac1d3c5
mov edx, 0xc11220b2
xor edx, 0x3eeddf4d
xor ecx, edx
mov edx, 0x251b0c94
xor edx, 0x251b0c94
mov r8d, 0xc26e9d05
xor r8d, 0xc26e9d04
sub edx, r8d
sub ecx, edx
sub eax, ecx
imul ecx, eax, 0xb86c758
mov eax, 0x84405a12
xor eax, 0x7bbfa5ed
mov edx, ecx
xor edx, eax
mov eax, 0x4e635e10
xor eax, 0x6d168a9a
and eax, edx
mov edx, 0xffffffff
xor edx, 0x2375d48a
and ecx, edx
or eax, ecx
cmp eax, 0x5ddffdc8
ja 0x14015785f
mov rcx, qword [rbp + 0x168]
mov r8, qword [rbp + 0x178]
mov r9, qword [rbp + 0x280]
mov eax, dword [0x1401d0bd0]
mov r11d, dword [0x1401d0bd4]
xor r11d, 0xc1952249
mov edx, eax
xor edx, 0xffffffff
mov r10d, r11d
and r10d, edx
mov esi, r11d
xor esi, 0xffffffff
mov edx, eax
and edx, esi
imul edx, r10d
mov r10d, eax
and r10d, r11d
or eax, r11d
imul eax, r10d
add eax, edx
mov edx, 0xffffffff
xor edx, 0xd7e5c688
add eax, edx
add eax, 1
mov edx, 0x4df31cc4
xor edx, 0x4df31cc4
mov r10d, 0x9ad5f7a3
xor r10d, 0x67c84568
sub edx, r10d
sub eax, edx
mov r10d, 0xa6d3a56e
xor edx, edx
div r10d
mov rdx, qword [rbp + 0x170]
mov r10d, eax
mov rax, qword [rbp - 0x18]
mov dword [rbp - 0x20], r10d
mov r10d, 0xf0ca8aab
xor r10d, 0x8d8184a1
mov dword [rbp - 0x24], r10d
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov r9, qword [rbp + 0x168]
mov r8, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x230]
mov ecx, dword [rbp - 0x24]
mov eax, dword [rbp - 0x20]
add rsp, 0x20
mov r10, qword [r9]
mov qword [r8 + 0x68], r10
mov r10, qword [r9 + 8]
mov qword [r8 + 0x70], r10
mov r9, qword [r9 + 0x10]
mov qword [r8 + 0x78], r9
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x19], dl
cmp eax, ecx
ja 0x140156ce5
mov cl, byte [rbp - 0x19]
mov al, 1
test cl, 1
mov byte [rbp + 0x5f], al
jne 0x140156e10
jmp 0x140157459
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x250]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.14000f979
mov rdx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x180]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rax + 0x10], r8
mov rdx, qword [rdx + 8]
mov qword [rax + 0x18], rdx
mov edx, 0x18
sub rsp, 0x20
call fcn.140157890
mov rcx, qword [rbp + 0x188]
add rsp, 0x20
mov word [rcx], 0x540
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x230]
mov qword [rbp - 0x30], rcx
mov cl, byte [rax]
mov dl, 0xf
xor dl, 0xf
mov al, 1
cmp cl, dl
mov byte [rbp - 0x25], al
jne 0x14015718b
mov r8, qword [rbp + 0x1a0]
mov rdx, qword [rbp + 0x198]
mov rcx, qword [rbp + 0x180]
mov rax, qword [rbp - 0x30]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x25], al
jne 0x14015718b
mov eax, dword [0x1401d0bd8]
xor eax, 0x2d593a42
mov ecx, dword [0x1401d0bdc]
sub eax, 0xb258b04a
add eax, ecx
mov ecx, 0x331ff4dc
xor ecx, 0x81474496
add eax, ecx
imul eax, eax, 0x46625eef
mov edx, 0x1e35f707
xor edx, 0xe1ca08f8
mov ecx, eax
xor ecx, edx
mov edx, 0x8696b85d
xor edx, 0xcf18dae6
and ecx, edx
mov edx, 0xff822297
xor edx, 0xb60c402c
mov r8d, 0x3b631f94
xor r8d, 0xc49ce06b
xor edx, r8d
and eax, edx
sub eax, ecx
and eax, 0xc3b18ac9
mov ecx, 0xa8ced452
xor ecx, 0x4645fb00
cmp eax, ecx
je 0x140157868
mov rcx, qword [rbp + 0x180]
mov edx, dword [0x1401d0be0]
mov eax, dword [0x1401d0be4]
xor eax, 0xb9be0bf2
imul edx, eax
xor edx, 0xeca8381d
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x80a377fb
or eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x80a377fb
or edx, r8d
xor eax, 0xffffffff
mov r8d, 0x30587f40
xor r8d, 0xcfa780bf
xor edx, r8d
or eax, edx
mov r8d, 0xf7a28d04
xor edx, edx
div r8d
mov cl, byte [rcx + 0x10]
mov dl, 0xfc
xor dl, 0xfc
cmp cl, dl
sete cl
mov byte [rbp - 0x31], cl
cmp eax, 0x446e968b
je 0x140156f7d
mov al, byte [rbp - 0x31]
test al, 1
jne 0x140157011
jmp 0x1401570f2
mov rcx, qword [rbp + 0x1a8]
mov word [rcx], 0x9f3
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x230]
mov qword [rbp - 0x40], rcx
cmp byte [rax], 0
jne 0x1401570e8
mov r8, qword [rbp + 0x1c0]
mov rdx, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x1b0]
mov rax, qword [rbp - 0x40]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rax, qword [rbp + 0x230]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401570e8
mov rdx, qword [rbp + 0x1c8]
mov rcx, qword [rbp + 0x180]
mov rax, qword [rbp + 0x1b0]
mov r8, qword [rax]
mov qword [rdx], r8
mov r8, qword [rax + 8]
mov qword [rdx + 8], r8
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
sub rsp, 0x20
call fcn.14005dc23
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xa5
xor cl, 0xa5
cmp al, cl
je 0x1401570f2
mov al, 1
mov byte [rbp - 0x25], al
jmp 0x14015718b
mov rax, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x180]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.14005da3b
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x190]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
sub rsp, 0x20
call fcn.14005da3b
mov rdx, qword [rbp + 0x190]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx + 0x80], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 0x88], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0x90], rdx
mov al, byte [rax]
mov byte [rbp - 0x25], al
mov rax, qword [rbp + 0x230]
mov rcx, qword [rbp + 0x180]
mov dl, byte [rbp - 0x25]
mov byte [rbp - 0x42], dl
mov dl, 0xd3
xor dl, 0xd3
mov byte [rax], dl
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x47
xor dl, 0x47
mov al, 1
cmp cl, dl
mov byte [rbp - 0x41], al
jne 0x1401571ea
mov al, byte [rbp - 0x42]
mov rdx, qword [rbp + 0x230]
mov cl, 0x49
xor cl, 0x49
mov byte [rdx], al
cmp al, cl
mov byte [rbp - 0x41], al
je 0x1401571f5
mov al, byte [rbp - 0x41]
mov byte [rbp + 0x5f], al
jmp 0x140157459
mov rcx, qword [rbp + 0x78]
mov word [rcx], 0x6aa
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov qword [rbp - 0x50], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x5f], al
jne 0x140157459
mov rcx, qword [rbp + 0x1d0]
mov r8, qword [rbp + 0x1e0]
mov rdx, qword [rbp + 0x1d8]
mov rax, qword [rbp - 0x50]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rdx, qword [rbp + 0x1d0]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx + 0x98], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 0xa0], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0xa8], rdx
mov cl, byte [rax]
mov dl, 0x9e
xor dl, 0x9e
mov al, 1
cmp cl, dl
mov byte [rbp + 0x5f], al
jne 0x140157459
mov rcx, qword [rbp + 0x80]
mov ax, 0x1454
xor ax, 0x1689
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov qword [rbp - 0x58], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x5f], al
jne 0x140157459
mov rcx, qword [rbp + 0x1e8]
mov r8, qword [rbp + 0x200]
mov rdx, qword [rbp + 0x1f0]
mov rax, qword [rbp - 0x58]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rdx, qword [rbp + 0x1e8]
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rax + 0xb0], r8
mov r8, qword [rdx + 8]
mov qword [rax + 0xb8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rax + 0xc0], rdx
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x5f], al
jne 0x140157459
mov rcx, qword [rbp + 0x88]
mov word [rcx], 0x9a5
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov qword [rbp - 0x60], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x5f], al
jne 0x140157459
mov rcx, qword [rbp + 0x208]
mov r8, qword [rbp + 0x220]
mov rdx, qword [rbp + 0x218]
mov rax, qword [rbp - 0x60]
mov r9, qword [rbp + 0x280]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14012feb0
mov rdx, qword [rbp + 0x208]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx + 0xc8], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 0xd0], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0xd8], rdx
mov cl, byte [rax]
mov dl, 0x73
xor dl, 0x73
mov al, 1
cmp cl, dl
mov byte [rbp + 0x5f], al
jne 0x140157459
mov rdx, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x278]
sub rsp, 0x20
call fcn.140029c9d
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x5f], al
mov rax, qword [rbp + 0x230]
mov rcx, qword [rbp + 0x248]
mov dl, byte [rbp + 0x5f]
mov byte [rbp - 0x61], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0x230]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x8f
xor cl, 0x8f
cmp al, cl
jne 0x140157826
mov rcx, qword [rbp + 0x240]
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0x230]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140157826
mov eax, dword [0x1401d0be8]
xor eax, 0x9c619bf9
xor edx, edx
div dword [0x1401d0bec]
or eax, 0x7e1a07bf
add eax, 0x17e36772
mov r8d, 0xedd21b92
xor r8d, 0xc5b56bc5
mov ecx, 0x9b264854
xor ecx, 0x64d9b7ab
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, 0x28677057
or eax, 0x28677057
imul eax, edx
add eax, ecx
cmp eax, 0x45e40e8e
ja 0x140157871
mov rcx, qword [rbp + 0x228]
mov eax, dword [0x1401d0bf0]
xor eax, dword [0x1401d0bf4]
and eax, eax
xor eax, 0xffffffff
mov edx, 0x602ed9e5
and edx, 0x602ed9e5
mov r8d, 0x36cc9086
xor r8d, 0xc9336f79
xor edx, r8d
and eax, edx
xor eax, 0xffffffff
add eax, 0x368b206e
mov r8d, 0xffc08db8
xor edx, edx
div r8d
mov dword [rbp - 0x68], eax
sub rsp, 0x20
call fcn.14005da50
mov rcx, qword [rbp + 0x230]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xae
xor dl, 0xae
cmp cl, dl
sete cl
mov byte [rbp - 0x62], cl
cmp eax, 0x999d4223
ja 0x14015751c
mov al, byte [rbp - 0x62]
test al, 1
jne 0x1401575a8
jmp 0x140157826
mov eax, dword [0x1401d0bf8]
mov ecx, dword [0x1401d0bfc]
xor ecx, 0xea02f91b
xor edx, edx
div ecx
mov ecx, 0xb0a7138
xor edx, edx
div ecx
mov ecx, 0x26d72531
xor ecx, 0x4ae213cc
add eax, ecx
sub eax, 0xc7e925b3
sub eax, 0x6c3536fd
mov ecx, 0xe7241747
xor ecx, 0x137fe7ae
xor eax, ecx
cmp eax, 0xf32f718c
ja 0x14015787a
mov rcx, qword [rbp + 0x238]
mov edx, dword [0x1401d0c00]
mov r8d, dword [0x1401d0c04]
xor edx, 0xffffffff
mov eax, 0x6e9639f5
xor eax, 0x9169c60a
xor r8d, eax
mov eax, 0xc9bee518
xor eax, 0xd6167d1d
mov r9d, 0x4f54a0c0
xor r9d, 0xb0ab5f3f
xor eax, r9d
or edx, r8d
or eax, 0x1fa89805
mov r8d, 0xd6bc5c5
xor r8d, 0xf2943a3a
xor edx, r8d
and edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0x6d99414
xor r8d, 0x391dd886
mov r9d, 0xb1a8a5bc
xor r9d, 0x4e575a43
xor r8d, r9d
and eax, r8d
mov r8d, 0x64532d1a
xor r8d, 0x9bacd2e5
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x3fc44c92
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
and eax, 0xa889074e
mov edx, 0xd0fba108
xor edx, 0x419cfa65
or eax, edx
mov rcx, qword [rcx]
mov qword [rbp - 0x78], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0xafc189e9
je 0x14015787a
mov al, byte [rbp - 0x69]
test al, 1
jne 0x14015771b
jmp 0x1401576d9
mov rcx, qword [rbp - 0x78]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x1f02cec49929a6a7
movabs rdx, 0x1f02cec49929a6a7
xor rcx, rdx
cmp rax, rcx
jne 0x14015771b
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov edx, dword [0x1401d0c08]
mov eax, 0x57751019
xor eax, 0x64a32701
xor edx, eax
add edx, dword [0x1401d0c0c]
mov ecx, edx
xor ecx, 0xf7b8af08
mov eax, 0xd4ec693
xor eax, 0xfaf6699b
mov r8d, 0xa9ccbbc1
xor r8d, 0x5633443e
xor eax, r8d
and edx, eax
mov eax, 0xf2c9bc41
xor eax, 0xf2c9bc43
imul eax, edx
sub eax, ecx
mov ecx, eax
and ecx, 0x5e672f41
shl ecx, 1
mov edx, 0x2ad161e4
xor edx, 0x74b64ea5
xor eax, edx
add eax, ecx
sub eax, 0xde0284a4
cmp eax, 0x478d401c
je 0x140157883
mov rcx, qword [rbp + 0x230]
mov dl, byte [rbp - 0x61]
mov r8d, dword [0x1401d0c10]
mov eax, dword [0x1401d0c14]
xor eax, 0xffffffff
mov r9d, 0xbc77c5b0
xor r9d, 0xbc77c5b0
mov r10d, 0x4774b96
xor r10d, 0x4774b97
sub r9d, r10d
sub eax, r9d
sub r8d, eax
mov eax, r8d
xor eax, 0xffffffff
xor r8d, 0xffffffff
and eax, r8d
mov r8d, 0xffffffff
xor r8d, 0xc1be533a
mov r9d, 0xffffffff
xor r9d, 0xc1be533a
and r8d, r9d
or eax, r8d
mov r8d, 0xfb56031e
xor r8d, 0x4a9fce1
xor eax, r8d
xor eax, 0xda9e3a1a
or eax, 0xf4bf911a
mov byte [rcx], dl
cmp eax, 0xe6955394
jbe 0x140157883
jmp 0x140157826
lea rsp, [rbp + 0x288]
pop rbx
pop rdi
pop rsi
pop rbp
ret
ret 0xc20f
invalid
xor al, cl
movabs al, byte [0x6d7affffec08e90e]
jp 0x1401578bc
ror dword [rax], 1
jmp 0x140156676
invalid
pop rax
mov al, byte [rbx - 0xb8216dd]
invalid
mov gs, word [rsi]
jnp 0x1401578df
jmp 0x140156f7d
movabs al, byte [0xfffffca2e95bd341]
int3
hlt
scasd eax, dword [rdi]
jge 0x14015787b
jmp 0x140157790
mov dl, 0xc9
mov ecx, 0x420bf281
mov dh, 0x26