Function at 0x1401bf7b0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x6d0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x648], rcx
mov r8d, dword [0x1401ff1f8]
xor r8d, 0x520b312b
mov edx, dword [0x1401ff1fc]
mov ecx, r8d
xor ecx, 0xffffffff
and ecx, 0x6d72ac46
mov r9d, 0x7b4ce012
xor r9d, 0x163e4c54
mov eax, 0xe990d278
xor eax, 0x166f2d87
xor r9d, eax
and r8d, r9d
mov eax, edx
xor eax, 0xffffffff
and eax, 0x6d72ac46
and edx, r9d
or ecx, r8d
or eax, edx
xor ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x817e6b26
mov r8d, 0xa2b3e5c9
xor r8d, 0x23cd8eef
mov eax, 0x44b09e42
xor eax, 0xbb4f61bd
xor r8d, eax
mov eax, ecx
and eax, r8d
imul eax, edx
mov edx, ecx
and edx, 0x817e6b26
mov r8d, 0xd55191e4
xor r8d, 0x542ffac2
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, 0xce674e92
xor eax, 0x3198b16d
mov edx, ecx
xor edx, eax
mov eax, 0x48c13d7a
xor eax, 0x97b1c349
and eax, edx
mov edx, 0xffffffff
xor edx, 0xdf70fe33
and ecx, edx
or eax, ecx
add eax, 0xffebd8da
cmp eax, 0x39b244cc
jb 0x1401c3908
mov edx, dword [0x1401ff200]
mov r9d, dword [0x1401ff204]
mov r8d, r9d
xor r8d, 0x9f441da
mov eax, edx
not eax
mov ecx, r8d
and ecx, eax
xor r9d, 0xf60bbe25
mov eax, edx
and eax, r9d
imul eax, ecx
mov ecx, edx
and ecx, r8d
or edx, r8d
imul edx, ecx
mov ecx, eax
mov eax, edx
lea eax, [rax + rcx + 0x62820698]
mov ecx, 0xc37c95b3
imul rax, rcx
shr rax, 0x3f
mov dword [rbp + 0x634], eax
mov eax, 0x10
mov qword [rbp + 0x5b0], rax
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5d8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5e0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5f0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5c8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5d0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x310], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x318], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x320], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x328], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x330], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x338], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5e8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x340], rax
mov eax, 0x20
mov qword [rbp + 0x418], rax
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x418]
mov rcx, rsp
mov qword [rbp + 0x348], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x350], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x418]
mov rcx, rsp
mov qword [rbp + 0x358], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x418]
mov rcx, rsp
mov qword [rbp + 0x360], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x368], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x418]
mov rcx, rsp
mov qword [rbp + 0x370], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x418]
mov rcx, rsp
mov qword [rbp + 0x378], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x380], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x388], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x390], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x418]
mov rcx, rsp
mov qword [rbp + 0x398], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3a0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3a8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3b0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3b8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3c0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3c8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3d0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x418]
mov rcx, rsp
mov qword [rbp + 0x3d8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3e0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3e8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3f0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x3f8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x400], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x408], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x410], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x418]
mov rcx, rsp
mov qword [rbp + 0x420], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x428], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x430], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x438], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x440], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x448], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x450], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x458], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x460], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x468], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x470], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x478], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x480], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x488], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x490], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x498], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4a0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4a8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4b0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4b8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4c0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4c8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4d0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4d8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4e0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4e8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4f0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x4f8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x500], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x508], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x510], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x518], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x520], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x528], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x530], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x538], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x540], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x548], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x550], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x558], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x560], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x568], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x570], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x578], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x580], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x588], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x590], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x598], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5a0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5a8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x5b0]
mov rcx, rsp
mov qword [rbp + 0x5b8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x5c0], rax
sub rsp, 0x20
call fcn.1401c4499
mov r10, qword [rbp + 0x5c8]
mov r9, qword [rbp + 0x5d0]
mov r8, qword [rbp + 0x5d8]
mov rdx, qword [rbp + 0x5e0]
mov rcx, qword [rbp + 0x5e8]
add rsp, 0x20
mov r11, rax
mov rax, qword [rbp + 0x5f0]
mov qword [rbp + 0x628], r11
add r11, 0x50
mov qword [rbp + 0x5f8], r11
mov r11, r8
add r11, 8
mov qword [rbp + 0x600], r11
mov r11, rdx
add r11, 8
mov qword [rbp + 0x608], r11
mov r11, rax
add r11, 8
mov qword [rbp + 0x610], r11
mov qword [r10], 0
mov r11, r10
add r11, 8
mov qword [rbp + 0x618], r11
mov qword [r10 + 8], 0
movabs r10, 0x19eff54327fb2788
movabs r11, 0x19eff54327fb2788
xor r10, r11
mov qword [r9], r10
mov r10, r9
add r10, 8
mov qword [rbp + 0x620], r10
mov qword [r9 + 8], 0
mov r9, qword [0x140208bd0]
mov qword [r8], r9
mov r9, qword [0x140208bd8]
mov qword [r8 + 8], r9
mov r8, qword [0x140208bd0]
mov qword [rdx], r8
mov r8, qword [0x140208bd8]
mov qword [rdx + 8], r8
mov rdx, qword [0x140208bd0]
mov qword [rax], rdx
mov rdx, qword [0x140208bd8]
mov qword [rax + 8], rdx
mov word [rcx], 0x325
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0x628]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x634]
mov qword [rbp + 0x638], rdx
mov cl, byte [rcx + 0x50]
mov dl, 0x12
xor dl, 0x12
cmp cl, dl
sete cl
mov byte [rbp + 0x647], cl
cmp eax, 0xce2323db
jae 0x1401bf8a0
mov al, byte [rbp + 0x647]
test al, 1
jne 0x1401c0341
jmp 0x1401c1a33
mov rcx, qword [rbp + 0x340]
mov edx, 0x10
sub rsp, 0x20
call fcn.1401bf3b0
mov rax, qword [rbp + 0x638]
mov rcx, qword [rbp + 0x340]
mov r8, qword [rbp + 0x390]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [r8], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
movabs rdx, 0x7f18881f28cdafe3
movabs rax, 0x80e777e0a8cdafe1
xor rdx, rax
mov r9d, 0xcecc3e5e
xor r9d, 0xcece3e47
sub rsp, 0x20
call fcn.1400d0500
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c1a33
mov rax, qword [rbp + 0x340]
mov rcx, qword [rax]
mov qword [rbp + 0x308], rcx
cmp byte [rax + 8], 0
jne 0x1401c03fb
sub rsp, 0x20
call fcn.140080580
add rsp, 0x20
mov rax, qword [rbp + 0x5f8]
cmp byte [rax], 0
jne 0x1401c1a33
jmp 0x1401c1ba3
mov ecx, dword [0x1401ff208]
mov edx, dword [0x1401ff20c]
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
mov ecx, 0x1581a40d
xor edx, edx
div ecx
or eax, 0xef25b54c
mov ecx, 0xe393b6b0
xor ecx, 0xe393b6b0
sub ecx, eax
xor eax, eax
sub eax, 0x13819e13
add ecx, eax
xor eax, eax
sub eax, ecx
cmp eax, 0x82ab5c0b
je 0x1401c3911
mov rcx, qword [rbp + 0x348]
mov eax, dword [0x1401ff210]
or eax, dword [0x1401ff214]
mov edx, 0x88c52bb7
xor edx, 0x307e2e82
and eax, edx
sub eax, 0x50002697
sub eax, 0x49ce1112
mov edx, 0xabec5259
xor edx, 0xfbec74ce
add eax, edx
and eax, 0x8e1c94b3
mov dword [rbp + 0x2f4], eax
mov edx, 0x18
sub rsp, 0x20
call fcn.1401bf3b0
mov rcx, qword [rbp + 0x350]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.1401bf3b0
mov rax, qword [rbp + 0x358]
mov rcx, qword [rbp + 0x360]
add rsp, 0x20
mov qword [rax], 0
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x2d8], rdx
mov qword [rax + 8], 0
movabs rdx, 0xb9404a297d480156
movabs rax, 0xb9404a297d48014e
xor rdx, rax
sub rsp, 0x20
call fcn.1401bf3b0
mov rcx, qword [rbp + 0x368]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.1401bf3b0
mov rax, qword [rbp + 0x370]
mov rcx, qword [rbp + 0x378]
add rsp, 0x20
mov qword [rax], 0
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x2e0], rdx
mov qword [rax + 8], 0
movabs rdx, 0x725b767a654295b9
movabs rax, 0x725b767a654295a1
xor rdx, rax
sub rsp, 0x20
call fcn.1401bf3b0
mov rcx, qword [rbp + 0x380]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.1401bf3b0
mov rax, qword [rbp + 0x388]
mov rcx, qword [rbp + 0x398]
add rsp, 0x20
mov qword [rax], 0
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x2e8], rdx
mov qword [rax + 8], 0
mov word [rcx], 0x2e0
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x2f4]
mov qword [rbp + 0x2f8], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x307], cl
cmp eax, 0x5665923c
ja 0x1401c0442
mov al, byte [rbp + 0x307]
test al, 1
jne 0x1401c05fd
jmp 0x1401c0992
mov rcx, qword [rbp + 0x3a8]
mov rdx, qword [rbp + 0x3b0]
mov rax, qword [rbp + 0x2f8]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001c672
mov rax, qword [rbp + 0x3a8]
mov rcx, qword [rbp + 0x3a0]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x2c8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2d0], rax
mov edx, 0x18
sub rsp, 0x20
call fcn.1401bf3b0
mov r9, qword [rbp + 0x2c8]
mov rax, qword [rbp + 0x2d0]
mov rcx, qword [rbp + 0x3a0]
mov rdx, qword [rbp + 0x308]
mov r8, qword [rbp + 0x3b8]
add rsp, 0x20
mov qword [r8], r9
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1400d1b90
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c0992
mov rax, qword [rbp + 0x350]
mov rcx, qword [rbp + 0x348]
mov rdx, qword [rbp + 0x3a0]
mov r8, qword [rdx + 0x10]
mov qword [rcx + 0x10], r8
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
mov r8, qword [rdx + 0x10]
mov qword [rax + 0x10], r8
movups xmm0, xmmword [rdx]
movups xmmword [rax], xmm0
add rax, 0x10
mov qword [rbp + 0x2b8], rax
sub rsp, 0x20
call fcn.14005e351
mov rcx, qword [rbp + 0x350]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov cl, byte [rcx + 0x10]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x2c7], al
or al, cl
test al, 1
jne 0x1401c0763
mov rdx, qword [rbp + 0x3c0]
mov rcx, qword [rbp + 0x358]
mov rax, qword [rbp + 0x350]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400191eb
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x2b7], al
jmp 0x1401c08ff
mov al, byte [rbp + 0x2c7]
test al, 1
jne 0x1401c0992
jmp 0x1401c0776
mov rcx, qword [rbp + 0x3c8]
sub rsp, 0x20
call fcn.140080790
mov rcx, qword [rbp + 0x3c8]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x2a0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x2a8], rcx
mov al, byte [rax]
mov cl, 0x1d
xor cl, 0x1d
cmp al, cl
jne 0x1401c0992
mov eax, dword [0x1401ff218]
xor eax, 0x2f5ab0e4
mov edx, dword [0x1401ff21c]
xor edx, 0xd23bc067
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
mov r8d, edx
and r8d, ecx
mov ecx, 0xfc6af147
xor ecx, 0xfc6af145
imul ecx, r8d
sub ecx, edx
sub eax, ecx
sub eax, 0xdd82fd7e
mov ecx, 0x29b0e9c7
xor ecx, 0x5c765a39
add eax, ecx
or eax, 0xc200a368
cmp eax, 0xb25b64b8
je 0x1401c391a
mov rcx, qword [rbp + 0x2d8]
mov rdx, qword [rbp + 0x2a8]
mov r8, qword [rbp + 0x358]
mov r9, qword [rbp + 0x2a0]
mov r10d, dword [0x1401ff220]
mov r11d, dword [0x1401ff224]
mov eax, r10d
xor eax, 0xffffffff
and eax, r11d
xor r11d, 0xffffffff
and r10d, r11d
sub r10d, eax
xor eax, eax
sub eax, r10d
mov r10d, 0xd8099c8
xor r10d, 0xd8099c8
mov r11d, 0x2911b8fe
xor r11d, 0xc5ab73d
sub r10d, r11d
add eax, r10d
xor r10d, r10d
sub r10d, eax
mov eax, 0x249feb0c
xor eax, 0xfb7ee556
and r10d, eax
mov eax, r10d
or eax, eax
xor eax, 0xffffffff
mov r11d, 0xffffffff
xor r11d, 0xe578a28f
mov esi, 0x808a1d9f
xor esi, 0x65f2bf10
mov edi, 0x5896d457
xor edi, 0xa7692ba8
xor esi, edi
and r11d, esi
or eax, r11d
xor eax, 0xffffffff
or r10d, 0xe578a28f
mov r11d, 0x36423138
xor r11d, 0xc9bdcec7
xor r10d, r11d
xor eax, 0xffffffff
xor r10d, 0xffffffff
and eax, r10d
mov qword [r8], r9
mov qword [rcx], rdx
cmp eax, 0xa413cf05
jae 0x1401c0815
xor eax, eax
mov byte [rbp + 0x2b7], al
jmp 0x1401c08ff
mov rcx, qword [rbp + 0x2b8]
mov al, byte [rbp + 0x2b7]
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
mov byte [rbp + 0x29f], al
or al, cl
test al, 1
jne 0x1401c099f
mov rcx, qword [rbp + 0x5e0]
mov rax, qword [rbp + 0x358]
mov rdx, qword [rbp + 0x3d0]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140014ce0
mov rcx, qword [rbp + 0x358]
call fcn.140011315
mov rcx, qword [rbp + 0x5e0]
add rsp, 0x20
mov edx, 0x5c
sub rsp, 0x20
call fcn.14003bdc9
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c0992
jmp 0x1401c09b6
mov al, 1
mov byte [rbp + 0x29e], al
jmp 0x1401c147c
mov cl, byte [rbp + 0x29f]
mov al, 1
test cl, 1
mov byte [rbp + 0x29e], al
jne 0x1401c147c
mov eax, dword [0x1401ff228]
mov ecx, dword [0x1401ff22c]
mov r11d, eax
or r11d, r11d
xor r11d, 0xffffffff
mov edx, ecx
or edx, edx
xor edx, 0xffffffff
or r11d, edx
mov edx, 0x19bdc04
xor edx, 0xfe6423fb
xor r11d, edx
or eax, ecx
xor eax, 0xffffffff
xor r11d, 0xffffffff
xor eax, 0xffffffff
and r11d, eax
mov eax, r11d
xor eax, 0xcb6c7c
xor eax, 0xffffffff
or r11d, 0xcb6c7c
and r11d, eax
mov eax, 0x4cf50196
xor eax, 0xb30afe69
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x6bb78c1c
mov edx, 0xffffffff
xor edx, 0x6b930fa5
mov r9d, 0xabaf1232
xor r9d, 0xc03c1d97
mov eax, ecx
and eax, r9d
and r11d, edx
mov r10d, 0x3ddc604f
xor r10d, 0x564f6fea
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x6bb78c1c
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0xf46963
xor r8d, 0xff0b969c
xor ecx, r8d
or edx, 0x6b930fa5
and ecx, edx
or eax, ecx
mov edx, 0xffffffff
xor edx, 0x6fbb0003
mov ecx, eax
and ecx, edx
mov r8d, 0xb2f93855
xor r8d, 0xdd423856
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x5ddc4458
xor ecx, 0x62bef469
cmp eax, ecx
jb 0x1401c3923
mov rcx, qword [rbp + 0x3d8]
mov eax, dword [0x1401ff230]
mov r8d, dword [0x1401ff234]
mov edx, 0x89970cb0
xor edx, 0xde9213a6
xor r8d, edx
xor edx, edx
div r8d
mov esi, eax
sub esi, 0xf325e952
mov eax, 0x9d428b20
xor eax, 0x62bd74df
mov edx, esi
xor edx, eax
mov r8d, 0xffffffff
xor r8d, 0xfbeccb58
mov r9d, 0xffffffff
xor r9d, 0x5948b696
mov eax, edx
and eax, 0x5948b696
and esi, r9d
mov r11d, 0x6fc7aa89
xor r11d, 0x368f1c1f
mov r10d, r8d
and r10d, r11d
mov r11d, 0x84a3bc0e
xor r11d, 0x7f4f7756
and r11d, r9d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r8d
mov r8d, 0x5930a5fe
xor r8d, 0xa6cf5a01
xor edx, r8d
mov r8d, 0x3babc
xor r8d, 0x594b0c2a
or r8d, r9d
and edx, r8d
or eax, edx
xor eax, 0xb387f49d
mov dword [rbp + 0x28c], eax
mov eax, 0x41f0d0c5
xor eax, 0xf15854e8
mov dword [rbp + 0x288], eax
mov word [rcx], 0x47a
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x5f8]
mov ecx, dword [rbp + 0x288]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x28c]
mov qword [rbp + 0x290], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x29d], dl
cmp eax, ecx
ja 0x1401c0abf
mov al, byte [rbp + 0x29d]
test al, 1
jne 0x1401c0be4
jmp 0x1401c0f6e
mov rcx, qword [rbp + 0x3e8]
mov rdx, qword [rbp + 0x3f0]
mov rax, qword [rbp + 0x290]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001c672
mov rax, qword [rbp + 0x3e8]
mov rcx, qword [rbp + 0x3e0]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x278], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x280], rax
movabs rdx, 0x112281a633972595
movabs rax, 0x112281a63397258d
xor rdx, rax
sub rsp, 0x20
call fcn.1401bf3b0
mov r9, qword [rbp + 0x278]
mov rax, qword [rbp + 0x280]
mov rcx, qword [rbp + 0x3e0]
mov rdx, qword [rbp + 0x308]
mov r8, qword [rbp + 0x3f8]
add rsp, 0x20
mov qword [r8], r9
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1400d1b90
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c0f6e
mov rax, qword [rbp + 0x368]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x3e0]
mov r8, qword [rdx + 0x10]
mov qword [rcx + 0x10], r8
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
mov r8, qword [rdx + 0x10]
mov qword [rax + 0x10], r8
movups xmm0, xmmword [rdx]
movups xmmword [rax], xmm0
add rax, 0x10
mov qword [rbp + 0x268], rax
sub rsp, 0x20
call fcn.14005e351
mov rcx, qword [rbp + 0x368]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov cl, byte [rcx + 0x10]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x277], al
or al, cl
test al, 1
jne 0x1401c0d5c
mov rdx, qword [rbp + 0x400]
mov rcx, qword [rbp + 0x370]
mov rax, qword [rbp + 0x368]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400191eb
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x267], al
jmp 0x1401c0ecf
mov al, byte [rbp + 0x277]
test al, 1
jne 0x1401c0d6f
jmp 0x1401c0d7c
mov al, 1
mov byte [rbp + 0x29e], al
jmp 0x1401c147c
mov rcx, qword [rbp + 0x408]
sub rsp, 0x20
call fcn.140080790
mov rcx, qword [rbp + 0x408]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x250], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x258], rcx
cmp byte [rax], 0
jne 0x1401c0f6e
mov eax, dword [0x1401ff238]
xor eax, 0xa43bf6d4
xor edx, edx
div dword [0x1401ff23c]
mov ecx, eax
or ecx, 0xb308e482
sub ecx, 0x4283a248
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x6976b035
xor edx, 0x7cb3120f
mov r8d, 0xbb90cee6
xor r8d, 0x446f3119
xor edx, r8d
mov r8d, 0xd2c48718
xor r8d, 0xc7012522
mov r9d, 0xd9cef107
xor r9d, 0x26310ef8
xor r8d, r9d
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0x15c5a23a
mov edx, 0xfdc332c7
xor edx, 0x23ccd38
xor ecx, edx
or eax, ecx
mov ecx, 0x8348707b
xor ecx, 0x7cb78f84
xor eax, ecx
cmp eax, 0xb8e82030
ja 0x1401c392c
mov rcx, qword [rbp + 0x2e0]
mov r8, qword [rbp + 0x370]
mov r9, qword [rbp + 0x250]
mov eax, dword [0x1401ff240]
xor edx, edx
div dword [0x1401ff244]
or eax, 0x73485c95
mov r10d, 0x5dbf8a4e
xor r10d, 0xc6e410
mov edx, eax
and edx, r10d
shl edx, 1
add eax, 0x5d796e5e
sub eax, edx
mov r10d, 0x9a54ed44
xor r10d, 0x372e4964
xor edx, edx
div r10d
mov rdx, qword [rbp + 0x258]
mov qword [r8], r9
mov qword [rcx], rdx
cmp eax, 0x4f0f39e9
jae 0x1401c392c
xor eax, eax
mov byte [rbp + 0x267], al
jmp 0x1401c0ecf
mov rcx, qword [rbp + 0x268]
mov al, byte [rbp + 0x267]
mov byte [rbp + 0x24e], al
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
mov byte [rbp + 0x24f], al
or al, cl
test al, 1
jne 0x1401c0f7b
mov rcx, qword [rbp + 0x5d8]
mov rax, qword [rbp + 0x370]
mov rdx, qword [rbp + 0x410]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140014ce0
mov rcx, qword [rbp + 0x370]
call fcn.140011315
mov rcx, qword [rbp + 0x5d8]
add rsp, 0x20
mov edx, 0x5c
sub rsp, 0x20
call fcn.14003bdc9
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x6f
xor cl, 0x6f
cmp al, cl
jne 0x1401c0f6e
jmp 0x1401c0f96
mov al, 1
mov byte [rbp + 0x29e], al
jmp 0x1401c147c
mov al, byte [rbp + 0x24e]
mov cl, byte [rbp + 0x24f]
test cl, 1
mov byte [rbp + 0x29e], al
jne 0x1401c147c
mov rcx, qword [rbp + 0x420]
mov word [rcx], 0x24d
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
mov qword [rbp + 0x240], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x24d], al
jne 0x1401c145f
mov rcx, qword [rbp + 0x430]
mov rdx, qword [rbp + 0x438]
mov rax, qword [rbp + 0x240]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001c672
mov rax, qword [rbp + 0x430]
mov rcx, qword [rbp + 0x428]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x230], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x238], rax
mov edx, 0x18
sub rsp, 0x20
call fcn.1401bf3b0
mov r9, qword [rbp + 0x230]
mov rax, qword [rbp + 0x238]
mov rcx, qword [rbp + 0x428]
mov rdx, qword [rbp + 0x308]
mov r8, qword [rbp + 0x440]
add rsp, 0x20
mov qword [r8], r9
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1400d1b90
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x24d], al
jne 0x1401c145f
mov rax, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x378]
mov rdx, qword [rbp + 0x428]
mov r8, qword [rdx + 0x10]
mov qword [rcx + 0x10], r8
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
mov r8, qword [rdx + 0x10]
mov qword [rax + 0x10], r8
movups xmm0, xmmword [rdx]
movups xmmword [rax], xmm0
add rax, 0x10
mov qword [rbp + 0x220], rax
sub rsp, 0x20
call fcn.14005e351
mov rcx, qword [rbp + 0x380]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov cl, byte [rcx + 0x10]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x22f], al
or al, cl
test al, 1
jne 0x1401c113c
mov rdx, qword [rbp + 0x448]
mov rcx, qword [rbp + 0x388]
mov rax, qword [rbp + 0x380]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400191eb
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x21f], al
jmp 0x1401c1355
mov al, byte [rbp + 0x22f]
test al, 1
jne 0x1401c114f
jmp 0x1401c115c
mov al, 1
mov byte [rbp + 0x29e], al
jmp 0x1401c147c
mov r11d, dword [0x1401ff248]
mov r10d, dword [0x1401ff24c]
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, r10d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x373b243
mov eax, ecx
and eax, 0x373b243
and r11d, r8d
mov r9d, edx
and r9d, 0x373b243
and r10d, r8d
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x3dad262d
xor edx, 0x3ede946e
or edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0xd8a2deb3
xor ecx, 0x8d4cc50
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x7ce3947c
xor edx, 0xe69378da
and edx, ecx
mov r8d, 0x335c76fe
xor r8d, 0xa92c9a58
mov ecx, 0xec5c9684
xor ecx, 0x13a3697b
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xbd827f3b
xor r8d, 0x27f2939d
mov edx, eax
and edx, r8d
mov r8d, 0xbc28d2ea
xor r8d, 0x26583e4c
or eax, r8d
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x721b7302
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x435f4ea5
xor r8d, 0xbca0b15a
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x721b7302
or eax, 0x721b7302
imul eax, edx
add eax, ecx
cmp eax, 0xaf280231
je 0x1401c3935
mov rcx, qword [rbp + 0x450]
mov eax, dword [0x1401ff250]
xor edx, edx
div dword [0x1401ff254]
mov r8d, 0xd1b817c2
xor r8d, 0x748c5310
xor edx, edx
div r8d
mov edx, eax
mov r8d, 0x98bb1caf
xor r8d, 0xc4c45218
mov eax, edx
and eax, r8d
mov r8d, 0xf5f4c483
xor r8d, 0xa98b8a34
or edx, r8d
add eax, edx
or eax, 0xdd41165a
mov dword [rbp + 0x204], eax
sub rsp, 0x20
call fcn.140080790
mov rdx, qword [rbp + 0x450]
mov rcx, qword [rbp + 0x5f8]
mov eax, dword [rbp + 0x204]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 0x208], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x210], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x21e], cl
cmp eax, 0x43496018
je 0x1401c126a
mov cl, byte [rbp + 0x21e]
mov al, 1
test cl, 1
mov byte [rbp + 0x24d], al
jne 0x1401c132b
jmp 0x1401c145f
mov rax, qword [rbp + 0x2e8]
mov rcx, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x388]
mov r8, qword [rbp + 0x208]
mov qword [rdx], r8
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x21f], al
mov al, byte [rbp + 0x21f]
mov byte [rbp + 0x203], al
mov eax, dword [0x1401ff258]
and eax, dword [0x1401ff25c]
or eax, 0xfbc36b9b
xor eax, 0xfaf6d0c4
imul eax, eax, 0xc6421ff6
cmp eax, 0xcf9bac59
ja 0x1401c393e
mov r8, qword [rbp + 0x220]
mov eax, dword [0x1401ff260]
mov ecx, dword [0x1401ff264]
xor edx, edx
div ecx
mov dl, byte [rbp + 0x203]
mov ecx, eax
not ecx
mov r9d, eax
and r9d, 0x7760ace9
and ecx, 0x889f5316
imul ecx, r9d
mov r9d, eax
and r9d, 0x889f5316
or eax, 0x889f5316
imul eax, r9d
add eax, ecx
or eax, 0x62f3f8b
add eax, 0xc3a24b20
mov ecx, 0xfb4779a6
mov r8b, byte [r8]
test r8b, r8b
sete r8b
test dl, dl
setne dl
or dl, r8b
mov byte [rbp + 0x202], dl
cmp eax, ecx
ja 0x1401c1388
mov al, byte [rbp + 0x202]
test al, 1
jne 0x1401c1470
jmp 0x1401c1414
mov rax, qword [rbp + 0x388]
mov rdx, qword [rbp + 0x458]
mov rcx, qword [rbp + 0x5f0]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140014ce0
mov rcx, qword [rbp + 0x388]
call fcn.140011315
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x24d], al
mov al, byte [rbp + 0x24d]
mov byte [rbp + 0x29e], al
jmp 0x1401c147c
mov al, byte [rbp + 0x203]
mov byte [rbp + 0x29e], al
mov rax, qword [rbp + 0x2e8]
mov rcx, qword [rbp + 0x5f8]
mov dl, byte [rbp + 0x29e]
mov byte [rbp + 0x1f7], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x1f8], rax
cmp rax, 0
je 0x1401c15d9
mov eax, dword [0x1401ff268]
xor eax, 0x2f69e02b
xor edx, edx
div dword [0x1401ff26c]
mov ecx, 0x9d1cf062
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x1613cfd2
mov edx, 0xffffffff
xor edx, 0x1613cfd2
and eax, edx
shl eax, 1
sub eax, ecx
xor eax, 0x390396df
cmp eax, 0xc2d6235f
jb 0x1401c3947
mov rdx, qword [rbp + 0x1f8]
mov eax, dword [0x1401ff270]
xor eax, 0xf748bc92
imul eax, dword [0x1401ff274]
imul esi, eax, 0x32c16286
mov eax, 0x91e217aa
xor eax, 0x2b6be427
and esi, eax
mov ecx, esi
xor ecx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xa432a699
mov r8d, 0xffffffff
xor r8d, 0xf0e30940
mov r10d, 0xed22152e
xor r10d, 0x1dc11c6e
mov eax, ecx
and eax, r10d
and esi, r8d
mov r10d, r9d
and r10d, 0xf0e30940
mov r11d, r8d
and r11d, 0xa432a699
or eax, esi
or r10d, r11d
xor eax, r10d
or ecx, r9d
mov r9d, 0x5ade3a41
xor r9d, 0xa521c5be
xor ecx, r9d
or r8d, 0xf0e30940
and ecx, r8d
or eax, ecx
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rbp + 0x1f6], cl
cmp eax, 0x90459bcb
je 0x1401c3947
mov al, byte [rbp + 0x1f6]
test al, 1
jne 0x1401c15c5
jmp 0x1401c15d9
mov rcx, qword [rbp + 0x1f8]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov ecx, dword [0x1401ff278]
xor ecx, 0x8352c49f
imul ecx, dword [0x1401ff27c]
mov edx, 0x8173cf36
xor edx, 0x7e8c30c9
mov eax, ecx
xor eax, edx
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0x532e699a
mov edx, 0xfaabb97d
xor edx, 0x5544682
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x532e699a
mov r8d, 0xffffffff
xor r8d, 0x532e699a
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6a0b3633
mov ecx, eax
xor ecx, edx
and ecx, eax
mov eax, ecx
and eax, 0x23108110
mov edx, 0x2f436b1e
xor edx, 0xc53ea0e
or ecx, edx
add eax, ecx
cmp eax, 0xe7730eda
ja 0x1401c3950
mov rcx, qword [rbp + 0x380]
mov eax, dword [0x1401ff280]
mov r8d, dword [0x1401ff284]
mov edx, eax
and edx, r8d
or eax, r8d
add edx, eax
add edx, 0x3558e36f
sub edx, 0xf8ddf0ba
sub edx, 0x3558e36f
mov eax, 0x82770a7f
xor eax, 0xa40952dd
xor edx, eax
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0x1c5af162
mov r8d, 0xffffffff
xor r8d, 0x1c5af162
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov dword [rbp + 0x1f0], eax
sub rsp, 0x20
call fcn.14005e380
mov rcx, qword [rbp + 0x5f8]
mov eax, dword [rbp + 0x1f0]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xe1
xor dl, 0xe1
cmp cl, dl
sete cl
mov byte [rbp + 0x1f5], cl
cmp eax, 0x13019e79
jb 0x1401c166b
mov cl, byte [rbp + 0x1f5]
mov al, 1
test cl, 1
mov byte [rbp + 0x1ef], al
jne 0x1401c172d
jmp 0x1401c19dc
mov eax, dword [0x1401ff288]
mov edx, dword [0x1401ff28c]
xor edx, 0xbae0795a
xor eax, 0xffffffff
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x9f5127e6
or eax, edx
or ecx, 0x9f5127e6
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x6448287f
xor ecx, 0x2a8d1325
sub eax, ecx
imul eax, eax, 0xb9facf4a
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xc79a880b
mov edx, 0xffffffff
xor edx, 0xc79a880b
and eax, edx
sub eax, ecx
mov ecx, 0x157c2ce2
xor ecx, 0xb50b6462
cmp eax, ecx
jb 0x1401c3959
mov rcx, qword [rbp + 0x378]
mov eax, dword [0x1401ff290]
xor edx, edx
div dword [0x1401ff294]
mov r8d, 0xffffffff
xor r8d, 0x5f22d6a7
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, 0x5f22d6a7
add eax, r8d
sub eax, edx
mov edx, 0x4c97234b
xor edx, 0xea0a04c7
xor eax, edx
xor edx, edx
sub edx, 0xa3b43143
add eax, edx
mov dword [rbp + 0x1e8], eax
mov eax, 0x1d8d807b
xor eax, 0xd83dba77
mov dword [rbp + 0x1e4], eax
sub rsp, 0x20
call fcn.14005e380
mov rdx, qword [rbp + 0x5f8]
mov ecx, dword [rbp + 0x1e4]
mov eax, dword [rbp + 0x1e8]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x1ee], dl
cmp eax, ecx
je 0x1401c3959
mov cl, byte [rbp + 0x1ee]
mov al, 1
test cl, 1
mov byte [rbp + 0x1ef], al
jne 0x1401c1850
jmp 0x1401c19dc
mov rax, qword [rbp + 0x2e0]
mov rax, qword [rax]
mov qword [rbp + 0x1d8], rax
cmp rax, 0
je 0x1401c18ad
mov rax, qword [rbp + 0x1d8]
mov rax, qword [rax]
movabs rcx, 0xbc6ec7d14efda6ee
movabs rdx, 0xfc6ec7d14efda6ee
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x1401c18ad
mov rcx, qword [rbp + 0x1d8]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rcx, qword [rbp + 0x368]
sub rsp, 0x20
call fcn.14005e380
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x73
xor dl, 0x73
mov al, 1
cmp cl, dl
mov byte [rbp + 0x1ef], al
jne 0x1401c19dc
mov rcx, qword [rbp + 0x360]
sub rsp, 0x20
call fcn.14005e380
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x1ef], al
jne 0x1401c19dc
mov rax, qword [rbp + 0x2d8]
mov rax, qword [rax]
mov qword [rbp + 0x1d0], rax
cmp rax, 0
je 0x1401c1958
mov rcx, qword [rbp + 0x1d0]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401c1958
mov rcx, qword [rbp + 0x1d0]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rcx, qword [rbp + 0x350]
sub rsp, 0x20
call fcn.14005e380
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x1ef], al
jne 0x1401c19dc
mov rcx, qword [rbp + 0x348]
sub rsp, 0x20
call fcn.14005e380
mov rcx, qword [rbp + 0x5f8]
mov al, byte [rbp + 0x1f7]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x3a
xor dl, 0x3a
mov r8b, 1
mov byte [rbp + 0x1ce], r8b
cmp cl, dl
mov byte [rbp + 0x1cf], al
je 0x1401c19d0
mov al, byte [rbp + 0x1ce]
mov byte [rbp + 0x1cf], al
mov al, byte [rbp + 0x1cf]
mov byte [rbp + 0x1ef], al
mov rax, qword [rbp + 0x5f8]
mov rcx, qword [rbp + 0x308]
mov dl, byte [rbp + 0x1ef]
mov byte [rbp + 0x1cd], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400d144e
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xc
xor cl, 0xc
cmp al, cl
jne 0x1401c1a33
mov al, byte [rbp + 0x1cd]
mov rcx, qword [rbp + 0x5f8]
mov byte [rcx], al
cmp al, 0
je 0x1401c1acd
sub rsp, 0x20
call fcn.1401bf737
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x1c0], rax
cmp word [rax + 0x12], 1
jle 0x1401c1ab7
mov rax, qword [rbp + 0x1c0]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x1401c1ab7
mov rax, qword [rbp + 0x5f8]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bf749
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140093060
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x54
xor cl, 0x54
cmp al, cl
jne 0x1401c1b95
sub rsp, 0x20
call fcn.1401bf77e
add rsp, 0x20
mov rax, qword [rbp + 0x5f8]
mov al, byte [rax]
mov cl, 0xca
xor cl, 0xca
cmp al, cl
jne 0x1401c1b95
mov eax, dword [0x1401ff298]
xor eax, 0x557aafe4
mov edx, dword [0x1401ff29c]
xor ecx, ecx
sub ecx, edx
add eax, ecx
mov ecx, 0x9b41b1a0
xor ecx, 0x553c1008
xor eax, ecx
and eax, 0xad3a707c
mov ecx, 0x8f34d35b
xor ecx, 0xa6480362
sub eax, ecx
cmp eax, 0x7bfad6d6
jae 0x1401c3962
mov eax, dword [0x1401ff2a0]
mov ecx, dword [0x1401ff2a4]
mov edx, 0x598c86d9
xor edx, 0x529472b5
xor ecx, edx
imul eax, ecx
mov ecx, eax
and ecx, 0x2b01821c
mov edx, 0xcad386da
xor edx, 0xe1d204c6
or eax, edx
add ecx, eax
mov edx, 0xe028c9a1
xor edx, 0x1fd7365e
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x2132a501
and eax, edx
or ecx, 0x2132a501
mov edx, 0xc7d1db7e
xor edx, 0x382e2481
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
sub eax, 0x6050ad28
mov ecx, 0x9f01314d
xor ecx, 0x46fb74aa
cmp eax, ecx
je 0x1401c1b0e
jmp 0x1401c1ba3
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov rax, qword [rbp + 0x5c8]
movabs rcx, 0x84b379fe67eabed1
movabs rdx, 0x84b379fe67eabed2
xor rcx, rdx
mov qword [rax], rcx
mov ecx, 3
mov edx, 0x10
mov r8d, 8
sub rsp, 0x20
call fcn.140019910
mov rcx, qword [rbp + 0x310]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x618]
mov qword [rax], rdx
mov ax, 0xb44e
xor ax, 0xb155
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov qword [rbp + 0x1a0], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov rcx, qword [rbp + 0x460]
mov r8, qword [rbp + 0x470]
mov rdx, qword [rbp + 0x468]
mov rax, qword [rbp + 0x1a0]
mov r9, qword [0x1402093b0]
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.1401bf540
mov rcx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x190], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x198], rcx
mov dl, byte [rax]
mov r8b, 0x62
xor r8b, 0x62
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov rcx, qword [rbp + 0x318]
mov rdx, qword [rbp + 0x198]
mov r8, qword [rbp + 0x190]
mov rax, qword [rbp + 0x618]
mov rax, qword [rax]
mov qword [rax + 8], r8
mov qword [rax + 0x10], rdx
mov word [rcx], 0x5f
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov qword [rbp + 0x188], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov rcx, qword [rbp + 0x478]
mov r8, qword [rbp + 0x488]
mov rdx, qword [rbp + 0x480]
mov rax, qword [rbp + 0x188]
mov r9, qword [0x1402093b0]
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.1401bf540
mov rax, qword [rbp + 0x478]
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x178], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x180], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov rcx, qword [rbp + 0x320]
mov rdx, qword [rbp + 0x180]
mov r8, qword [rbp + 0x178]
mov rax, qword [rbp + 0x618]
mov rax, qword [rax]
mov qword [rax + 0x18], r8
mov qword [rax + 0x20], rdx
mov word [rcx], 0x3a2
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov qword [rbp + 0x170], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov rcx, qword [rbp + 0x490]
mov r8, qword [rbp + 0x4a0]
mov rdx, qword [rbp + 0x498]
mov rax, qword [rbp + 0x170]
mov r9, qword [0x1402093d0]
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.1401bf540
mov rcx, qword [rbp + 0x490]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x160], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x168], rcx
mov dl, byte [rax]
mov r8b, 0x48
xor r8b, 0x48
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov eax, dword [0x1401ff2a8]
xor eax, 0xdb3738fa
sub eax, dword [0x1401ff2ac]
or eax, 0x79545ad6
mov ecx, 0xa9ae5a23
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x14ae8daf
add eax, ecx
mov ecx, 0x74d6f102
xor ecx, 0xfacbec7a
cmp eax, ecx
je 0x1401c396b
mov rcx, qword [rbp + 0x5d8]
mov r8, qword [rbp + 0x168]
mov r9, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x618]
mov eax, dword [0x1401ff2b0]
xor eax, 0xf88e9c3a
imul eax, dword [0x1401ff2b4]
mov r10d, 0xffffffff
xor r10d, 0x2054635f
xor r11d, r11d
sub r11d, 1
sub r10d, r11d
sub eax, r10d
mov r10d, 0xffffffff
xor r10d, 0x57b3c72d
add eax, r10d
add eax, 1
add eax, 0x68d7315d
mov rdx, qword [rdx]
mov qword [rbp + 0x150], rdx
mov qword [rdx + 0x28], r9
mov qword [rdx + 0x30], r8
mov rcx, qword [rcx]
movabs rdx, 0xab502419e716f379
movabs r8, 0xab502419e716f379
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0x15f], cl
cmp eax, 0xa7f7059a
jae 0x1401c396b
mov al, byte [rbp + 0x15f]
test al, 1
jne 0x1401c2035
jmp 0x1401c1f96
mov r8, qword [rbp + 0x4b0]
mov rax, qword [rbp + 0x5d8]
mov rdx, qword [rbp + 0x5c8]
mov rcx, qword [rbp + 0x150]
add rcx, 8
mov rdx, qword [rdx]
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1401c3998
add rsp, 0x20
test al, 1
jne 0x1401c2035
mov rax, qword [rbp + 0x4a8]
mov rcx, qword [rbp + 0x5d8]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.140011315
mov rax, qword [rbp + 0x4a8]
mov rcx, qword [rbp + 0x5c8]
mov rdx, qword [rbp + 0x4b8]
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.14001b930
add rsp, 0x20
mov rax, qword [rbp + 0x5e0]
cmp qword [rax], 0
je 0x1401c20f6
mov r8, qword [rbp + 0x4c8]
mov rax, qword [rbp + 0x5e0]
mov rdx, qword [rbp + 0x5c8]
mov rcx, qword [rbp + 0x618]
mov r10, qword [rcx]
mov rcx, r10
add rcx, 8
xor r9d, r9d
cmp r10, 0
cmove rcx, r9
mov rdx, qword [rdx]
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1401c3998
add rsp, 0x20
test al, 1
jne 0x1401c20f6
mov rax, qword [rbp + 0x4c0]
mov rcx, qword [rbp + 0x5e0]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.140011315
mov rax, qword [rbp + 0x4c0]
mov rcx, qword [rbp + 0x5c8]
mov rdx, qword [rbp + 0x4d0]
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.14001b930
add rsp, 0x20
mov rax, qword [rbp + 0x5d0]
movabs rcx, 0x4da889bbc013b973
movabs rdx, 0x4da889bbc013b972
xor rcx, rdx
mov qword [rax], rcx
movabs rcx, 0x940fac57afbf042d
movabs rax, 0x940fac57afbf042c
xor rcx, rax
movabs rdx, 0xd722dc2a41ac7826
movabs rax, 0xd722dc2a41ac782e
xor rdx, rax
movabs r8, 0xb851005cd339d9ea
movabs rax, 0xb851005cd339d9e2
xor r8, rax
sub rsp, 0x20
call fcn.140019910
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x620]
mov qword [rax], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001c310
mov rcx, qword [rbp + 0x328]
add rsp, 0x20
mov qword [rbp + 0x140], rax
mov ax, 0x48f3
xor ax, 0x4e26
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov qword [rbp + 0x148], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov eax, dword [0x1401ff2b8]
mov ecx, 0xd7ea861f
xor ecx, 0x75d2ff5d
xor eax, ecx
imul eax, dword [0x1401ff2bc]
imul eax, eax, 0xcec2b1b5
mov ecx, 0x432aaa1c
xor ecx, 0x4ef8728e
xor eax, ecx
sub eax, 0x159ed876
mov ecx, 0x86769fcd
xor ecx, 0x81b85c4b
cmp eax, ecx
je 0x1401c3974
mov rcx, qword [rbp + 0x4d8]
mov rdx, qword [rbp + 0x4e0]
mov rax, qword [rbp + 0x148]
mov r9d, dword [0x1401ff2c0]
mov r8d, 0xb36d3392
xor r8d, 0x6e806313
xor r9d, r8d
mov r10d, dword [0x1401ff2c4]
mov r8d, r9d
or r8d, r10d
mov r11d, 0x894f50e6
xor r11d, 0x76b0af19
xor r8d, r11d
xor r9d, 0xffffffff
xor r10d, 0xffffffff
and r9d, r10d
xor r8d, 0xffffffff
xor r9d, 0xffffffff
and r8d, r9d
mov r9d, 0x7319066d
xor r9d, 0xa7f84925
add r8d, r9d
mov r9d, r8d
or r9d, 0x60f8cc3a
mov r10d, 0x62d8c413
xor r10d, 0x9d273bec
xor r9d, r10d
xor r8d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x60f8cc3a
and r8d, r10d
or r9d, r8d
mov r8d, 0x8f0c7688
xor r8d, 0x70f38977
xor r9d, r8d
mov r8d, r9d
xor r8d, 0xffffffff
and r8d, 0x79ea379d
mov r10d, 0xe3f67155
xor r10d, 0x9a1c46c8
mov r11d, 0xf31be786
xor r11d, 0xce41879
xor r10d, r11d
and r9d, r10d
or r8d, r9d
mov dword [rbp + 0x138], r8d
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001c672
mov rcx, qword [rbp + 0x4d8]
mov rax, qword [rbp + 0x140]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x40d
sub rsp, 0x20
call fcn.140064060
mov rdx, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0x138]
mov dword [rdx + 0x10], r8d
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x13f], cl
cmp eax, 0xa9bf93fa
ja 0x1401c2220
mov dl, byte [rbp + 0x13f]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c23a8
jmp 0x1401c3600
mov ecx, 0x8f7
sub rsp, 0x20
call fcn.140064060
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x5f8]
mov dword [rbp + 0x134], ecx
mov dl, byte [rax]
mov r8b, 0xc6
xor r8b, 0xc6
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov cx, 0x6f74
xor cx, 0x6f09
sub rsp, 0x20
call fcn.140064060
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov dword [rbp + 0x130], eax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov eax, dword [0x1401ff2c8]
xor eax, 0xd3e27c01
mov edx, dword [0x1401ff2cc]
xor edx, 0xffffffff
mov ecx, eax
xor ecx, edx
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x4df31996
mov edx, 0xd70605d
xor edx, 0x408379cb
mov r8d, 0xaedb078
xor r8d, 0xf5124f87
xor edx, r8d
and ecx, edx
or eax, ecx
sub eax, 0xc0802856
mov ecx, 0x4219d879
xor ecx, 0xbde62786
mov edx, eax
xor edx, ecx
and edx, 0xd6b4e069
mov r8d, 0x630a2ccc
xor r8d, 0xb5becca5
mov ecx, 0x4fd6b565
xor ecx, 0xb0294a9a
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x8df0df29
xor r8d, 0x5b443f40
mov edx, eax
and edx, r8d
or eax, 0xd6b4e069
imul eax, edx
add eax, ecx
mov ecx, 0x8e01f210
xor ecx, 0xb79b9dcd
cmp eax, ecx
jbe 0x1401c397d
mov r8, qword [rbp + 0x330]
mov eax, dword [rbp + 0x130]
mov ecx, dword [rbp + 0x134]
mov edx, dword [0x1401ff2d0]
mov r11d, dword [0x1401ff2d4]
mov r9d, 0x37f3a7b6
xor r9d, 0xc80c5849
mov esi, r11d
xor esi, r9d
mov r10d, edx
and r10d, esi
mov r9d, edx
or r9d, esi
xor r9d, 0xffffffff
imul r9d, r10d
mov r10d, edx
and r10d, r11d
or edx, r11d
imul edx, r10d
add edx, r9d
and edx, 0x310e70d4
mov r9d, edx
and r9d, 0x5cd8d96d
mov r10d, 0xe96dad5d
xor r10d, 0x169252a2
xor r9d, r10d
add edx, 0x5cd8d96d
add edx, 1
add edx, r9d
xor edx, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x23a96ace
mov r9d, 0xffffffff
xor r9d, 0x5e7016a9
or edx, r10d
or r9d, 0x5e7016a9
xor edx, 0xffffffff
and edx, r9d
mov dword [rbp + 0x128], edx
mov edx, 0xafab54ba
xor edx, 0xc511ce8a
mov dword [rbp + 0x124], edx
movsxd rcx, ecx
movsxd rdx, eax
sub rsp, 0x20
call fcn.1401bf67f
mov ecx, dword [rbp + 0x124]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x128]
mov byte [rbp + 0x12f], dl
cmp eax, ecx
jae 0x1401c24d8
mov al, byte [rbp + 0x12f]
test al, 1
jne 0x1401c25e1
jmp 0x1401c25fc
sub rsp, 0x20
call fcn.140009cc0
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov rax, qword [rbp + 0x330]
mov rax, qword [rax]
mov qword [rbp + 0x118], rax
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401c2641
sub rsp, 0x20
call fcn.140009cc0
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov cx, 0xadd4
xor cx, 0xac13
sub rsp, 0x20
call fcn.140064060
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov dword [rbp + 0x114], eax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov r8, qword [rbp + 0x338]
mov rcx, qword [rbp + 0x118]
mov eax, dword [rbp + 0x114]
movsxd rdx, eax
sub rsp, 0x20
call fcn.1401bf67f
add rsp, 0x20
test al, 1
jne 0x1401c26af
jmp 0x1401c26ca
sub rsp, 0x20
call fcn.140009cc0
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov rax, qword [rbp + 0x338]
mov rax, qword [rax]
mov qword [rbp + 0x108], rax
add rax, 0xffffffff80000000
movabs rcx, 0x9438a23c548e5816
movabs rdx, 0x6bc75dc3548e5816
xor rcx, rdx
cmp rax, rcx
jae 0x1401c271c
sub rsp, 0x20
call fcn.140009cc0
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov rax, qword [rbp + 0x5f0]
mov rdx, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x620]
mov r8, qword [rbp + 0x108]
mov dword [rdx + 0x14], r8d
mov rcx, qword [rcx]
mov qword [rcx + 8], rdx
mov rax, qword [rax]
movabs rcx, 0x8df7a9ea6e279ab0
movabs rdx, 0x8df7a9ea6e279ab0
xor rcx, rdx
cmp rax, rcx
je 0x1401c2b27
movabs rcx, 0x55b2446cdf6dcebe
movabs rax, 0x55b2446cdf6dcea6
xor rcx, rax
movabs rdx, 0xe8eed870ab5ff27c
movabs rax, 0xe8eed870ab5ff274
xor rdx, rax
sub rsp, 0x20
call fcn.14001c310
mov rcx, qword [rbp + 0x4f0]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x4e8]
mov qword [rbp + 0xf8], rdx
movabs rdx, 0xb9a108c21b57d07c
movabs r8, 0xb9a108c21b57d07c
xor rdx, r8
mov qword [rax], rdx
mov qword [rax + 8], 0
mov word [rcx], 0xa2d
sub rsp, 0x20
call fcn.140063b00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x5f8]
mov qword [rbp + 0x100], rcx
cmp byte [rax], 0
jne 0x1401c2b19
mov rcx, qword [rbp + 0x4e8]
mov rax, qword [rbp + 0x5f0]
mov rdx, qword [rbp + 0x100]
mov r8, qword [rdx]
mov rax, qword [rax]
mov rdx, rax
and rdx, r8
or rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.140019c50
mov rax, qword [rbp + 0x100]
mov rdx, qword [rbp + 0x508]
mov rcx, qword [rbp + 0x4e8]
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.1401c3b3e
mov rax, qword [rbp + 0x5f0]
mov rdx, qword [rbp + 0x510]
mov rcx, qword [rbp + 0x4e8]
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.1401c3b3e
mov rcx, qword [rbp + 0x4e8]
mov rax, qword [rbp + 0xf8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
mov ecx, 0x3a5
sub rsp, 0x20
call fcn.140064060
mov rcx, qword [rbp + 0xf8]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x5f8]
mov dword [rcx + 0x10], edx
mov al, byte [rax]
mov cl, 0xbc
xor cl, 0xbc
cmp al, cl
jne 0x1401c2b19
mov ecx, 0x616
sub rsp, 0x20
call fcn.140064060
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x5f8]
mov dword [rbp + 0xf4], ecx
cmp byte [rax], 0
jne 0x1401c2b19
mov ecx, 0x51c
sub rsp, 0x20
call fcn.140064060
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x5f8]
mov dword [rbp + 0xf0], ecx
mov al, byte [rax]
mov cl, 0xe9
xor cl, 0xe9
cmp al, cl
jne 0x1401c2b19
mov r8, qword [rbp + 0x4f8]
mov eax, dword [rbp + 0xf0]
mov ecx, dword [rbp + 0xf4]
movsxd rcx, ecx
movsxd rdx, eax
sub rsp, 0x20
call fcn.1401bf67f
add rsp, 0x20
test al, 1
jne 0x1401c2b0c
mov rax, qword [rbp + 0x4f8]
mov rax, qword [rax]
mov qword [rbp + 0xe8], rax
movabs rcx, 0x968c1ed999e95c18
add rax, rcx
add rax, 0xffffffff80000000
movabs rcx, 0x968c1ed999e95c18
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jb 0x1401c2b0c
mov ecx, 0x34b
sub rsp, 0x20
call fcn.140064060
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x5f8]
mov dword [rbp + 0xe4], ecx
cmp byte [rax], 0
jne 0x1401c2b19
mov r8, qword [rbp + 0x500]
mov rcx, qword [rbp + 0xe8]
mov eax, dword [rbp + 0xe4]
movsxd rdx, eax
sub rsp, 0x20
call fcn.1401bf67f
add rsp, 0x20
test al, 1
jne 0x1401c2b0c
mov eax, dword [0x1401ff2d8]
mov ecx, dword [0x1401ff2dc]
xor ecx, 0x14f44048
sub eax, ecx
sub eax, 0x6463d39a
or eax, 0xa513f5ef
sub eax, 0x571ec87e
cmp eax, 0x6f1bf18c
jae 0x1401c3986
mov rdx, qword [rbp + 0x500]
mov ecx, dword [0x1401ff2e0]
imul ecx, dword [0x1401ff2e4]
and ecx, 0x5c95ea9e
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x2ae419d8
and ecx, 0x2ae419d8
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x2135fcc6
xor ecx, 0xdeca0339
xor eax, ecx
imul eax, eax, 0xcc4342dc
mov ecx, 0x2f40676b
xor ecx, 0xe86e2dae
mov rdx, qword [rdx]
mov qword [rbp + 0xd8], rdx
movabs r8, 0x16bb4fb6487db192
movabs r9, 0xe944b049c87db192
xor r8, r9
add rdx, r8
movabs r8, 0xffffffff00000000
cmp rdx, r8
setb dl
mov byte [rbp + 0xe3], dl
cmp eax, ecx
ja 0x1401c3986
mov al, byte [rbp + 0xe3]
test al, 1
jne 0x1401c2b0c
jmp 0x1401c2ae2
mov rdx, qword [rbp + 0xf8]
mov rcx, qword [rbp + 0x5d0]
mov rax, qword [rbp + 0xd8]
mov dword [rdx + 0x14], eax
sub rsp, 0x20
call fcn.14002bb28
add rsp, 0x20
jmp 0x1401c2b27
sub rsp, 0x20
call fcn.140009cc0
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov ecx, 0x44a
sub rsp, 0x20
call fcn.1400638f0
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
mov qword [rbp + 0xd0], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0x1b8], rax
jne 0x1401c35e3
mov rcx, qword [rbp + 0xd0]
mov rax, qword [rbp + 0x590]
mov r8, qword [rbp + 0x588]
mov r9, qword [rbp + 0x580]
mov r10, qword [rbp + 0x568]
mov r11, qword [rbp + 0x518]
mov rsi, qword [rbp + 0x560]
mov rdi, qword [rbp + 0x548]
mov rbx, qword [rbp + 0x540]
mov r14, qword [rbp + 0x530]
mov rdx, qword [rbp + 0x5c8]
mov rdx, qword [rdx]
add r14, 8
mov qword [rbp + 0x70], r14
add rbx, 8
mov qword [rbp + 0x78], rbx
add rdi, 8
mov qword [rbp + 0x80], rdi
add rsi, 8
mov qword [rbp + 0x88], rsi
add r11, 8
mov qword [rbp + 0x90], r11
add r10, 8
mov qword [rbp + 0x98], r10
add r9, 8
mov qword [rbp + 0xa0], r9
add r8, 8
mov qword [rbp + 0xa8], r8
add rax, 8
mov qword [rbp + 0xb0], rax
xor eax, eax
test rdx, rdx
cmovg rax, rdx
mov qword [rbp + 0xb8], rax
xor eax, eax
mov qword [rbp + 0xc0], rcx
mov qword [rbp + 0xc8], rax
mov rcx, qword [rbp + 0xb8]
mov rdx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], rdx
cmp rax, rcx
je 0x1401c346f
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x5c8]
mov rcx, qword [rcx]
mov qword [rbp + 0x58], rcx
cmp rax, rcx
jl 0x1401c2c98
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbp + 0x58]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
sub rsp, 0x20
call fcn.140013c92
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov rcx, qword [rbp + 0x530]
mov rdx, qword [rbp + 0x538]
mov r8, qword [rbp + 0x60]
mov rax, qword [rbp + 0x618]
mov rax, qword [rax]
shl r8, 4
lea r9, [rax + r8 + 8]
mov qword [rbp + 0x40], r9
movups xmm0, xmmword [rax + r8 + 8]
movups xmmword [rdx], xmm0
sub rsp, 0x20
call fcn.14001c672
mov r8, qword [rbp + 0x530]
mov rdx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x540]
add rsp, 0x20
mov r8, qword [r8]
mov rdx, qword [rdx]
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.1400bac7e
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x20
mov dl, al
mov rax, qword [rbp + 0x68]
mov cl, byte [rcx]
movzx edx, dl
mov r8d, 0x1e
sub r8d, edx
test cl, cl
mov edx, 0x1c
cmove edx, r8d
mov dword [rbp + 0x48], edx
sub edx, 0x1c
mov byte [rbp + 0x4f], cl
mov qword [rbp + 0x50], rax
je 0x1401c33fe
jmp 0x1401c2d44
mov rax, qword [rbp + 0x68]
mov ecx, dword [rbp + 0x48]
sub ecx, 0x1d
mov qword [rbp + 0x38], rax
jne 0x1401c3420
jmp 0x1401c2d5d
mov rcx, qword [rbp + 0x548]
mov rdx, qword [rbp + 0x550]
mov rax, qword [rbp + 0x5d0]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140160be0
mov rdx, qword [rbp + 0x548]
mov rcx, qword [rbp + 0x80]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp + 0x28], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x30], rcx
cmp byte [rax], 0
jne 0x1401c3412
mov rdx, qword [rbp + 0x560]
mov rcx, qword [rbp + 0x558]
mov rax, qword [rbp + 0x88]
mov r8, qword [rbp + 0x30]
mov r9, qword [rbp + 0x28]
mov r10, qword [rbp + 0x40]
mov r11, qword [r10]
mov qword [rcx], r11
mov r10, qword [r10 + 8]
mov qword [rcx + 8], r10
mov qword [rdx], r9
mov qword [rax], r8
mov r8d, 0x5da3c46e
xor r8d, 0x5da3c46f
sub rsp, 0x20
call fcn.140154ae0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x5f8]
mov qword [rbp + 0x20], rcx
cmp byte [rax], 0
jne 0x1401c3412
mov rcx, qword [rbp + 0x520]
mov rax, qword [rbp + 0x90]
mov rdx, qword [rbp + 0x518]
movabs r8, 0x724c20aa2bbf309b
movabs r9, 0x724c20aa2bbf309b
xor r8, r9
mov qword [rdx], r8
mov qword [rax], 0
mov word [rcx], 0xab7
sub rsp, 0x20
call fcn.140063b00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x5f8]
mov qword [rbp + 0x18], rcx
cmp byte [rax], 0
jne 0x1401c3412
mov rcx, qword [rbp + 0x528]
mov ax, 0x65ad
xor ax, 0x6c6f
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063b00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x5f8]
mov qword [rbp + 0x10], rcx
cmp byte [rax], 0
jne 0x1401c3412
mov rcx, qword [rbp + 0x568]
mov r8, qword [rbp + 0x578]
mov rdx, qword [rbp + 0x570]
mov rax, qword [rbp + 0x10]
mov r9, qword [rbp + 0x18]
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.1401bf540
mov rdx, qword [rbp + 0x568]
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov rdx, qword [rdx]
mov qword [rbp], rdx
mov rcx, qword [rcx]
mov qword [rbp + 8], rcx
cmp byte [rax], 0
jne 0x1401c3412
mov rdx, qword [rbp + 0x68]
mov rcx, qword [rbp + 0x580]
sub rsp, 0x20
call fcn.14000597c
mov r8, qword [rbp + 0x580]
mov rdx, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x5f8]
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp - 0x18], r8
mov rdx, qword [rdx]
mov qword [rbp - 0x10], rdx
mov cl, byte [rcx]
mov dl, 0x3a
xor dl, 0x3a
cmp cl, dl
mov qword [rbp - 8], rax
jne 0x1401c337f
mov rcx, qword [rbp + 0x518]
mov rdx, qword [rbp - 0x18]
mov rax, qword [rbp]
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
sub rsp, 0x20
call fcn.140019c50
mov r9, qword [rbp]
mov r8, qword [rbp + 8]
mov rax, qword [rbp + 0xa8]
mov rdx, qword [rbp + 0x588]
mov rcx, qword [rbp + 0x518]
add rsp, 0x20
mov qword [rdx], r9
mov qword [rax], r8
sub rsp, 0x20
call fcn.1401c3b3e
mov r9, qword [rbp - 0x18]
mov r8, qword [rbp - 0x10]
mov rax, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0x590]
mov rcx, qword [rbp + 0x518]
add rsp, 0x20
mov qword [rdx], r9
mov qword [rax], r8
sub rsp, 0x20
call fcn.1401c3b3e
mov r8, qword [rbp + 0x648]
mov rdx, qword [rbp + 0x518]
mov rax, qword [rbp + 0x598]
mov rcx, qword [rbp + 0x5a0]
add rsp, 0x20
mov r8, qword [r8]
add r8, 0x18
mov qword [rbp - 0x28], r8
mov r8, qword [rdx]
mov qword [rax], r8
mov rdx, qword [rdx + 8]
mov qword [rax + 8], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp + 0x20]
mov r8, qword [rbp + 0x598]
mov rax, qword [rbp + 0x5a0]
add rsp, 0x20
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140154690
mov rcx, qword [rbp + 0x5f8]
add rsp, 0x30
mov rax, qword [rbp + 0x68]
cmp byte [rcx], 0
mov qword [rbp - 0x20], rax
jne 0x1401c319c
mov rcx, qword [rbp + 0x68]
movabs rdx, 0x89b68f07be7bc099
movabs rax, 0x331e83936fc2baeb
xor rdx, rax
mov rax, rcx
sub rax, rdx
add rax, 1
movabs rdx, 0xbaa80c94d1b97a72
add rax, rdx
mov r8, rcx
or r8, r8
xor r8, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r9, 0xa22b3d16f764937f
movabs r10, 0x5dd4c2e9089b6c80
xor r9, r10
movabs r10, 0xa37d267d073635e6
movabs r11, 0x5c82d982f8c9ca19
xor r10, r11
xor r9, r10
and rdx, r9
or r8, rdx
movabs rdx, 0x6f0ce402d3e66be4
movabs r9, 0x90f31bfd2c19941b
xor rdx, r9
xor r8, rdx
movabs rdx, 0xd3f7337738cc8ea7
movabs r9, 0x2c08cc88c7337158
xor rdx, r9
or rcx, rdx
movabs rdx, 0x6bbf3c2853608552
movabs r9, 0x9440c3d7ac9f7aad
xor rdx, r9
xor rcx, rdx
or r8, rcx
xor r8, 0xffffffffffffffff
mov rdx, rax
add rdx, 1
mov rcx, rax
xor rcx, 0xffffffffffffffff
or rcx, r8
add rcx, rdx
cmp rcx, 0
mov qword [rbp - 0x20], rax
jge 0x1401c319c
sub rsp, 0x20
call fcn.140009cc0
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x30], rax
mov eax, dword [0x1401ff2e8]
mov r8d, dword [0x1401ff2ec]
mov ecx, 0x56659c5
xor ecx, 0x2cac8994
xor r8d, ecx
mov ecx, 0x9a2280af
xor ecx, 0x65dd7f50
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x172bd27d
xor edx, edx
div ecx
mov ecx, 0x49dc2c17
xor ecx, 0xcb0fa494
sub eax, ecx
mov edx, 0x47fa6f55
xor edx, 0x96fab5ff
mov ecx, 0x38f58a93
xor ecx, 0xc70a756c
xor edx, ecx
mov ecx, eax
and ecx, edx
mov r8d, 0xbdb80721
xor r8d, 0x6cb8dd8b
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
cmp eax, 0x4e340496
je 0x1401c398f
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x1401ff2f0]
mov edx, dword [0x1401ff2f4]
xor edx, 0x5e427bcf
add eax, edx
mov r8d, 0x7820192f
xor r8d, 0x9cdceb1e
mov edx, 0x6838d705
xor edx, 0x97c728fa
xor r8d, edx
mov edx, eax
and edx, r8d
mov r9d, 0xccd0bffb
xor r9d, 0x282c4dca
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x32d6c776
mov edx, 0xffffffff
xor edx, 0xf98d640c
or eax, r8d
or edx, 0xf98d640c
mov r8d, 0xd7059a44
xor r8d, 0x28fa65bb
xor eax, r8d
and eax, edx
imul eax, eax, 0x9b760700
cmp rcx, 0
sete cl
mov byte [rbp - 0x31], cl
cmp eax, 0xa8736061
je 0x1401c398f
mov rax, qword [rbp - 0x30]
mov cl, byte [rbp - 0x31]
test cl, 1
mov qword [rbp - 8], rax
jne 0x1401c337f
jmp 0x1401c32fa
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rcx]
movabs r8, 0x4000000000000000
mov rcx, rdx
and rcx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r8, 0x8cf030583ad86062
movabs r9, 0xccf030583ad86062
xor r8, r9
movabs r9, 0xcbc380149c2f6f2f
movabs r10, 0x343c7feb63d090d0
xor r9, r10
xor r8, r9
or rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
mov qword [rbp - 8], rax
jne 0x1401c337f
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.14000f935
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov qword [rbp - 8], rax
mov rax, qword [rbp + 8]
mov rcx, qword [rbp - 8]
mov qword [rbp - 0x40], rcx
cmp rax, 0
je 0x1401c33ea
mov rax, qword [rbp + 8]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x91415c844b3a876e
movabs rdx, 0x91415c844b3a876e
xor rcx, rdx
cmp rax, rcx
jne 0x1401c33ea
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp - 0x40]
mov rcx, qword [rbp + 0x5f8]
mov cl, byte [rcx]
mov byte [rbp + 0x4f], cl
mov qword [rbp + 0x50], rax
mov cl, byte [rbp + 0x4f]
mov rax, qword [rbp + 0x50]
cmp cl, 0
mov qword [rbp + 0x38], rax
je 0x1401c3420
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x38]
movabs rdx, 0x751a6cfc1a81d0eb
movabs r8, 0x751a6cfc1a81d0eb
xor rdx, r8
movabs r8, 0x3a4d2c2bbbe398f2
movabs r9, 0x3a4d2c2bbbe398f3
xor r8, r9
sub rdx, r8
sub rax, rdx
mov qword [rbp + 0xc0], rcx
mov qword [rbp + 0xc8], rax
jmp 0x1401c2c26
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.14001c310
add rsp, 0x20
mov qword [rbp - 0x50], rax
mov qword [rax], 0
mov ecx, 0x53d7812a
xor ecx, 0x53d7812b
mov dword [rax + 8], ecx
mov ecx, 0x18d
sub rsp, 0x20
call fcn.1400638f0
mov rdx, qword [rbp + 0x5f8]
add rsp, 0x20
mov qword [rbp - 0x48], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov rax, qword [rbp - 0x48]
xor ecx, ecx
sub rcx, 0xffffffff80000000
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401c3525
mov rcx, qword [rbp - 0x48]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14000e57e
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1b8], rax
jmp 0x1401c35e3
mov rax, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x48]
mov dword [rax + 0xc], ecx
mov ecx, 0x10
mov edx, 8
sub rsp, 0x20
call fcn.140013970
mov rcx, qword [rbp + 0x5a8]
add rsp, 0x20
mov rdx, rax
mov qword [rbp - 0x58], rdx
sub rsp, 0x20
call fcn.140077655
mov r8, qword [rbp + 0x5a8]
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp + 0x5f8]
mov rax, qword [rbp - 0x58]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rcx + 0x10], r9
mov r8, qword [r8 + 8]
mov qword [rcx + 0x18], r8
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
jne 0x1401c3600
mov rdx, qword [rbp - 0x50]
mov rax, qword [rbp + 0x648]
mov rcx, qword [0x140208bd0]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x140208bd8]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.1400272cf
mov rax, qword [rbp - 0x58]
add rsp, 0x20
mov qword [rbp + 0x1b8], rax
mov rcx, qword [rbp + 0x5f8]
mov rax, qword [rbp + 0x1b8]
mov cl, byte [rcx]
mov byte [rbp + 0x1af], cl
mov qword [rbp + 0x1b0], rax
mov rax, qword [rbp + 0x5f8]
mov dl, byte [rbp + 0x1af]
mov rcx, qword [rbp + 0x1b0]
mov byte [rbp - 0x5a], dl
mov r8b, 0x8e
xor r8b, 0x8e
cmp dl, r8b
sete dl
mov byte [rbp - 0x59], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bd6c0
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c3871
mov rcx, qword [rbp + 0x5b8]
mov rax, qword [rbp + 0x5d0]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14013b130
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c3871
mov rcx, qword [rbp + 0x5c0]
mov rax, qword [rbp + 0x5c8]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140018580
mov rax, qword [rbp + 0x610]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x1401c3713
mov rax, qword [rbp - 0x68]
mov rax, qword [rax]
movabs rcx, 0x5ef3d599323d067a
movabs rdx, 0x1ef3d599323d067a
xor rcx, rdx
and rax, rcx
movabs rcx, 0xff93a4e70d9b4162
movabs rdx, 0xff93a4e70d9b4162
xor rcx, rdx
cmp rax, rcx
jne 0x1401c3713
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp + 0x608]
mov rax, qword [rax]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x1401c37a6
mov rax, qword [rbp - 0x70]
mov rax, qword [rax]
movabs rcx, 0x4910509bd526086a
movabs rdx, 0xb6efaf642ad9f795
xor rcx, rdx
xor rax, rcx
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x37abf261f19330bb
xor rcx, r8
or rax, rdx
movabs rdx, 0x37abf261f19330bb
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1401c37a6
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp + 0x600]
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp rax, 0
je 0x1401c385a
mov rax, qword [rbp - 0x78]
mov rcx, qword [rax]
movabs rdx, 0x8deddf2209e9605f
movabs rax, 0xcdeddf2209e9605f
xor rdx, rax
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
movabs rdx, 0x2480feb3257691e0
movabs r8, 0x6480feb3257691e0
xor rdx, r8
movabs r8, 0xd41dd640bc72d49c
movabs r9, 0x2be229bf438d2b63
xor r8, r9
xor rdx, r8
or rcx, rdx
movabs rdx, 0xe0493a9324053cee
movabs r8, 0x1fb6c56cdbfac311
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x1401c385a
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov al, byte [rbp - 0x59]
mov rcx, qword [rbp + 0x5f8]
mov dl, byte [rbp - 0x5a]
mov byte [rcx], dl
test al, 1
jne 0x1401c38fa
sub rsp, 0x20
call fcn.1401bf737
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
mov ax, word [rax + 0x12]
mov cx, 0x84fa
xor cx, 0x84fb
cmp ax, cx
jle 0x1401c38fa
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x1401c38fa
mov rax, qword [rbp + 0x5f8]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bf749
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140093060
mov rax, qword [rbp + 0x5f8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xe5
xor cl, 0xe5
cmp al, cl
jne 0x1401c38fa
add eax, 0xc60000
add byte [rax - 0x7d], cl
in al, dx
and al, ch
xchg byte [rsi - 0x7cb70001], bh
invalid
sub rsp, 0x20
call fcn.1401bf77e
add rsp, 0x20
lea rsp, [rbp + 0x650]
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
push rdx
loop 0x1401c38b4
jmp 0x1401bf8a0
mov bh, 0x12
invalid
jle 0x1401c3920
xor bl, bh
jmp 0x1401c0815
invalid
sub cl, dh
jmp 0x1401c0abf
ret
mov r14b, 0x8b
sub ecx, 0x2c
fcos
call qword [rbx]
invalid
adc eax, dword [rdx + 0x41e9ca21]
invalid
sbb eax, 0xe9bae0a1
movabs dword [0xe9f3282d07ffffdb], eax
adc bl, ch
invalid
invalid
invalid
jrcxz 0x1401c394e
shr ecx, cl
cmp ebx, esi
invalid
invalid
rcl dword [rbp - 0x1a931604], 0xff
call qword [rsi - 0x59]
push rsi
cmpsd dword [rsi], dword [rdi]
jne 0x1401c38fa
jmp 0x1401c2220
invalid
invalid
mov gs, esi
and ecx, esi
jmp 0x1401c3240