Function at 0x140172b30
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x598
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x4f0], r9
mov qword [rbp + 0x4f8], r8
mov qword [rbp + 0x500], rdx
mov qword [rbp + 0x508], rcx
mov rax, qword [rbp + 0x580]
mov qword [rbp + 0x510], rax
mov ecx, dword [0x1401fd1e0]
or ecx, dword [0x1401fd1e4]
mov eax, ecx
and eax, 0x2067c466
mov edx, 0xe1319adb
xor edx, 0xc1565ebd
or ecx, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xce455ffc
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x647ef1d5
xor edx, edx
div ecx
cmp eax, 0xc61fcf69
jae 0x140175dcf
mov edx, dword [0x1401fd1e8]
mov eax, dword [0x1401fd1ec]
mov ecx, eax
xor eax, ecx
not eax
and eax, edx
xor eax, ecx
add eax, 0x8a125079
shr eax, 1
imul rax, rax, 0x25afc01b
shr rax, 0x3a
xor eax, 0x64e96391
mov dword [rbp + 0x4d4], eax
mov eax, 0x10
mov qword [rbp + 0x4b8], rax
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x2d0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x2d8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x2e0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x2e8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x2f0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x2f8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x300], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x308], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x310], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x318], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x320], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x328], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x330], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x338], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x340], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x348], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x350], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x358], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x360], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x368], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x370], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x378], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x380], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x388], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x390], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x398], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3a0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3a8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3b0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3b8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3c0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3c8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3d0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3d8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3e0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3e8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3f0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x3f8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x400], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x408], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x410], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x418], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x420], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x428], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x430], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x438], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x440], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x448], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x450], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x458], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x460], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x468], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x470], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x478], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x480], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x488], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x490], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x498], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x4a0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x4a8], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x4b0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, qword [rbp + 0x4b8]
mov rcx, rsp
mov qword [rbp + 0x4c0], rcx
call fcn.1401f2390
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x4c8], rax
sub rsp, 0x20
call fcn.140181363
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0x4d4]
add rcx, 0x50
mov qword [rbp + 0x4d8], rcx
mov rcx, qword [0x1402092f0]
mov rcx, qword [rcx]
mov rcx, qword [rcx + 0x20]
mov qword [rbp + 0x4e0], rcx
cmp rcx, 0
sete cl
mov byte [rbp + 0x4ef], cl
cmp eax, 0x68ee702c
jae 0x140172bbf
mov al, byte [rbp + 0x4ef]
test al, 1
jne 0x140175dbb
jmp 0x14017327f
mov rdx, qword [rbp + 0x420]
mov r8, qword [rbp + 0x428]
mov r9, qword [rbp + 0x408]
mov r10, qword [rbp + 0x410]
mov r11, qword [rbp + 0x3f0]
mov rsi, qword [rbp + 0x3f8]
mov rdi, qword [rbp + 0x3d8]
mov rbx, qword [rbp + 0x3e0]
mov r14, qword [rbp + 0x3c0]
mov r15, qword [rbp + 0x3b8]
mov r12, qword [rbp + 0x3b0]
mov r13, qword [rbp + 0x3a0]
mov rax, qword [rbp + 0x318]
mov rcx, qword [rbp + 0x4e0]
mov rcx, qword [rcx]
add rax, 8
mov qword [rbp + 0x200], rax
mov rax, qword [rbp + 0x338]
add rax, 8
mov qword [rbp + 0x208], rax
mov rax, qword [rbp + 0x330]
add rax, 8
mov qword [rbp + 0x210], rax
mov rax, qword [rbp + 0x350]
add rax, 8
mov qword [rbp + 0x218], rax
mov rax, qword [rbp + 0x348]
add rax, 8
mov qword [rbp + 0x220], rax
mov rax, qword [rbp + 0x358]
add rax, 8
mov qword [rbp + 0x228], rax
mov rax, qword [rbp + 0x360]
add rax, 8
mov qword [rbp + 0x230], rax
mov rax, qword [rbp + 0x370]
add rax, 8
mov qword [rbp + 0x238], rax
mov rax, qword [rbp + 0x380]
add rax, 8
mov qword [rbp + 0x240], rax
mov rax, qword [rbp + 0x390]
add rax, 8
mov qword [rbp + 0x248], rax
mov rax, qword [rbp + 0x438]
add r13, 8
mov qword [rbp + 0x250], r13
add r12, 8
mov qword [rbp + 0x258], r12
add r15, 8
mov qword [rbp + 0x260], r15
add r14, 8
mov qword [rbp + 0x268], r14
add rbx, 8
mov qword [rbp + 0x270], rbx
add rdi, 8
mov qword [rbp + 0x278], rdi
add rsi, 8
mov qword [rbp + 0x280], rsi
add r11, 8
mov qword [rbp + 0x288], r11
add r10, 8
mov qword [rbp + 0x290], r10
add r9, 8
mov qword [rbp + 0x298], r9
add r8, 8
mov qword [rbp + 0x2a0], r8
add rdx, 8
mov qword [rbp + 0x2a8], rdx
add rax, 8
mov qword [rbp + 0x2b0], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x2b8], rax
xor eax, eax
mov ecx, eax
xor eax, eax
mov qword [rbp + 0x2c0], rcx
mov byte [rbp + 0x2cf], al
mov rdx, qword [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2c0]
mov al, byte [rbp + 0x2cf]
mov byte [rbp + 0x1ef], al
mov qword [rbp + 0x1f0], rcx
cmp rcx, rdx
mov byte [rbp + 0x1ff], al
je 0x1401757b4
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [0x1402092f0]
mov rcx, qword [rcx]
mov rcx, qword [rcx + 0x20]
mov qword [rbp + 0x1d8], rcx
mov rcx, qword [rcx]
mov qword [rbp + 0x1e0], rcx
cmp rax, rcx
jl 0x1401734db
mov rcx, qword [rbp + 0x1f0]
mov rdx, qword [rbp + 0x1e0]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
sub rsp, 0x20
call fcn.140013c92
add rsp, 0x20
jmp 0x140175dbb
mov rcx, qword [rbp + 0x2d0]
mov rdx, qword [rbp + 0x1f0]
mov rax, qword [rbp + 0x1d8]
mov rax, qword [rax + 8]
add rax, 8
shl rdx, 3
add rax, rdx
mov qword [rbp + 0x1c0], rax
mov word [rcx], 0x729
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x20
mov rdx, rax
mov al, byte [rbp + 0x1ef]
mov qword [rbp + 0x1c8], rdx
cmp byte [rcx], 0
mov byte [rbp + 0x1d7], al
jne 0x1401756d9
mov rcx, qword [rbp + 0x318]
mov r8, qword [rbp + 0x328]
mov rdx, qword [rbp + 0x320]
mov rax, qword [rbp + 0x1c8]
mov r9, qword [rbp + 0x510]
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.14016f768
mov r8, qword [rbp + 0x318]
mov rdx, qword [rbp + 0x200]
mov rcx, qword [rbp + 0x4d8]
mov al, byte [rbp + 0x1ef]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x1b0], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x1b8], rdx
mov cl, byte [rcx]
mov dl, 0x6e
xor dl, 0x6e
cmp cl, dl
mov byte [rbp + 0x1d7], al
jne 0x1401756d9
mov rcx, qword [rbp + 0x330]
mov r8, qword [rbp + 0x340]
mov rdx, qword [rbp + 0x338]
mov r9, qword [rbp + 0x208]
mov r10, qword [rbp + 0x1b8]
mov r11, qword [rbp + 0x1b0]
mov rax, qword [rbp + 0x1c0]
mov rax, qword [rax]
mov qword [rdx], r11
mov qword [r9], r10
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14016f768
mov r8, qword [rbp + 0x330]
mov rcx, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x4d8]
mov al, byte [rbp + 0x1ef]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x190], r8
mov rcx, qword [rcx]
mov qword [rbp + 0x198], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov eax, dword [0x1401fd1f0]
mov ecx, dword [0x1401fd1f4]
xor ecx, 0x94527311
xor eax, ecx
or eax, 0x41ef9769
mov ecx, eax
and ecx, 0x80c15d9e
shl ecx, 1
add eax, 0x80c15d9e
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xc1838d54
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x3d47f893
xor r8d, 0xfcc475c7
mov edx, eax
and edx, r8d
or eax, 0xc1838d54
imul eax, edx
add eax, ecx
cmp eax, 0x732f9c29
jbe 0x140175dd8
mov rcx, qword [rbp + 0x348]
mov rdx, qword [rbp + 0x350]
mov rax, qword [rbp + 0x218]
mov r8, qword [rbp + 0x198]
mov r9, qword [rbp + 0x190]
mov r10d, dword [0x1401fd1f8]
xor r10d, 0x6911411c
mov r11d, dword [0x1401fd1fc]
sub r10d, r11d
add r10d, 0x7663f32a
and r10d, 0x70dfe57c
mov dword [rbp + 0x188], r10d
mov r10d, 0x5ae3b08a
mov dword [rbp + 0x184], r10d
mov qword [rdx], r9
mov qword [rax], r8
sub rsp, 0x20
call fcn.14001c672
mov r8, qword [rbp + 0x348]
mov rdx, qword [rbp + 0x220]
mov rax, qword [rbp + 0x228]
mov rcx, qword [rbp + 0x358]
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 rdx, qword [rbp + 0x4d8]
mov ecx, dword [rbp + 0x184]
add rsp, 0x20
mov r8b, al
mov eax, dword [rbp + 0x188]
mov dl, byte [rdx]
test dl, dl
setne dl
mov byte [rbp + 0x18e], dl
or dl, r8b
mov byte [rbp + 0x18f], dl
cmp eax, ecx
je 0x1401736d9
mov al, byte [rbp + 0x18f]
test al, 1
jne 0x140173a61
jmp 0x1401737c5
mov eax, dword [0x1401fd200]
mov r8d, dword [0x1401fd204]
mov ecx, 0xf7b21f7b
xor ecx, 0x84de084
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, 0xc87ee8bd
xor ecx, 0x7ff5fa1d
xor edx, edx
div ecx
add eax, 0x5555516d
mov ecx, 0x245ec75
xor ecx, 0xf5ccb475
sub eax, ecx
sub eax, 0x5555516d
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xc70d877a
xor edx, 0xf7588c29
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x30550b53
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x30550b53
mov r8d, 0x584fdddd
xor r8d, 0x681ad68e
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0xb4f20845
jb 0x140175de1
mov rcx, qword [rbp + 0x1b8]
mov edx, dword [0x1401fd208]
xor edx, 0x56231f94
mov r9d, dword [0x1401fd20c]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, edx
and r8d, r10d
mov eax, edx
or eax, r10d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
mov r8d, 0xffffffff
xor r8d, 0x597be956
mov eax, edx
xor eax, r8d
and eax, edx
mov r8d, 0xed108c20
xor r8d, 0x5fe3ac0
xor edx, edx
div r8d
mov r9d, eax
mov edx, r9d
xor edx, 0xffffffff
mov eax, 0x8642c594
xor eax, 0xe4cde38e
and eax, edx
mov r8d, 0xffffffff
xor r8d, 0x628f261a
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0x608ee11a
mov r10d, 0xad179f2a
xor r10d, 0xcf98b930
and edx, r10d
and r8d, 0x608ee11a
or eax, r9d
or edx, r8d
xor eax, edx
cmp rcx, 0
sete cl
mov byte [rbp + 0x183], cl
cmp eax, 0x9469a7e7
ja 0x140175de1
mov al, byte [rbp + 0x183]
test al, 1
jne 0x1401739f5
jmp 0x140173957
mov rax, qword [rbp + 0x1b8]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
movabs rcx, 0x961fa748c5d77eb8
movabs r8, 0xce03d17d005e34f6
xor rcx, r8
movabs r8, 0x66fc45876b6e7a56
movabs r9, 0x9903ba78949185a9
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0x581c7635c5894a4e
or rcx, rdx
movabs rdx, 0xddda0ca524d42043
movabs r8, 0x2225f35adb2bdfbc
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401739f5
mov rcx, qword [rbp + 0x1b8]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov al, byte [rbp + 0x1ef]
mov rcx, qword [rbp + 0x198]
cmp rcx, 0
mov byte [rbp + 0x182], al
je 0x140175778
mov al, byte [rbp + 0x1ef]
mov rdx, qword [rbp + 0x198]
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
mov byte [rbp + 0x182], al
jne 0x140175778
mov rcx, qword [rbp + 0x198]
sub rsp, 0x20
call fcn.14000f935
mov al, byte [rbp + 0x1ef]
add rsp, 0x20
mov byte [rbp + 0x182], al
jmp 0x140175778
mov al, byte [rbp + 0x1ef]
mov rcx, qword [rbp + 0x198]
mov dl, byte [rbp + 0x18e]
test dl, 1
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
jmp 0x140173a8f
mov ecx, 5
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140019910
add rsp, 0x20
mov qword [rbp + 0x168], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001c310
mov rcx, qword [rbp + 0x2d8]
add rsp, 0x20
mov qword [rbp + 0x170], rax
mov ax, 0xc3c6
xor ax, 0xc3a8
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r8, rax
mov al, byte [rbp + 0x1ef]
mov qword [rbp + 0x178], r8
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
mov rax, qword [rbp + 0x178]
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 rdx, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x230]
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x85d
sub rsp, 0x20
call fcn.140064060
mov r8, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r9d, eax
mov al, byte [rbp + 0x1ef]
mov dword [r8 + 0x10], r9d
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov ecx, 0x7ef
sub rsp, 0x20
call fcn.140064060
mov r8, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r9d, eax
mov al, byte [rbp + 0x1ef]
mov dword [r8 + 0x14], r9d
mov dl, byte [rdx]
mov r8b, 0xa4
xor r8b, 0xa4
cmp dl, r8b
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov eax, dword [0x1401fd210]
xor eax, 0xe2e43e2c
and eax, dword [0x1401fd214]
mov r8d, 0xffffffff
xor r8d, 0xe5fe2265
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x41676f79
xor r8d, 0xbe989086
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xe5fe2265
or eax, 0xe5fe2265
imul eax, edx
add eax, ecx
add eax, 0x4c724aba
mov ecx, eax
and ecx, 0x93be7f1a
shl ecx, 1
add eax, 0x93be7f1a
sub eax, ecx
cmp eax, 0x367e1d06
jbe 0x140175dea
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x170]
mov edx, dword [0x1401fd218]
mov r8d, dword [0x1401fd21c]
xor r8d, 0x3c3ae17f
mov r9d, 0x7b949e23
xor r9d, 0x846b61dc
xor r8d, r9d
mov r9d, 0x8b30be89
xor r9d, 0x8b30be89
mov r10d, 0xca2c4d91
xor r10d, 0xca2c4d90
sub r9d, r10d
sub r8d, r9d
sub edx, r8d
add edx, 0x47d6f3b8
mov r8d, 0x6e585535
xor r8d, 0x4be1877d
and edx, r8d
sub edx, 0x7c4138b1
mov dword [rbp + 0x154], edx
mov qword [rax + 8], rcx
movabs rcx, 0x2c54bfc4878c530f
movabs rax, 0x2c54bfc4878c5317
xor rcx, rax
movabs rdx, 0x36d5c510a6684c9f
movabs rax, 0x36d5c510a6684c97
xor rdx, rax
sub rsp, 0x20
call fcn.14001c310
mov rcx, qword [rbp + 0x2e0]
add rsp, 0x20
mov qword [rbp + 0x148], rax
mov ax, 0xb441
xor ax, 0xbcf6
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x154]
mov qword [rbp + 0x158], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x167], cl
cmp eax, 0x2390ea88
jb 0x140175dea
mov al, byte [rbp + 0x1ef]
mov rcx, qword [rbp + 0x198]
mov dl, byte [rbp + 0x167]
test dl, 1
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140173db8
jmp 0x140175477
mov rcx, qword [rbp + 0x370]
mov rdx, qword [rbp + 0x378]
mov rax, qword [rbp + 0x158]
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 rdx, qword [rbp + 0x370]
mov rcx, qword [rbp + 0x238]
mov rax, qword [rbp + 0x148]
add rsp, 0x20
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0xa43
sub rsp, 0x20
call fcn.140064060
mov r8, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r9d, eax
mov al, byte [rbp + 0x1ef]
mov dword [r8 + 0x10], r9d
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov ecx, 0xb69
sub rsp, 0x20
call fcn.140064060
mov r8, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r9d, eax
mov al, byte [rbp + 0x1ef]
mov dword [r8 + 0x14], r9d
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x148]
mov qword [rax + 0x10], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001c310
mov rcx, qword [rbp + 0x2e8]
add rsp, 0x20
mov qword [rbp + 0x138], rax
mov word [rcx], 0x82e
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r8, rax
mov al, byte [rbp + 0x1ef]
mov qword [rbp + 0x140], r8
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov rcx, qword [rbp + 0x380]
mov rdx, qword [rbp + 0x388]
mov rax, qword [rbp + 0x140]
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 rdx, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x138]
add rsp, 0x20
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x8bf
sub rsp, 0x20
call fcn.140064060
mov r8, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r9d, eax
mov al, byte [rbp + 0x1ef]
mov dword [r8 + 0x10], r9d
mov dl, byte [rdx]
mov r8b, 0xa6
xor r8b, 0xa6
cmp dl, r8b
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov ecx, 6
sub rsp, 0x20
call fcn.140064060
mov r8, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r9d, eax
mov al, byte [rbp + 0x1ef]
mov dword [r8 + 0x14], r9d
mov dl, byte [rdx]
mov r8b, 0x9f
xor r8b, 0x9f
cmp dl, r8b
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x138]
mov qword [rax + 0x18], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001c310
mov rcx, qword [rbp + 0x2f0]
add rsp, 0x20
mov qword [rbp + 0x128], rax
mov word [rcx], 0x10
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r8, rax
mov al, byte [rbp + 0x1ef]
mov qword [rbp + 0x130], r8
mov dl, byte [rdx]
mov r8b, 0xff
xor r8b, 0xff
cmp dl, r8b
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov eax, dword [0x1401fd220]
xor edx, edx
div dword [0x1401fd224]
mov edx, eax
xor edx, 0xffffffff
and edx, 0xa2c4467a
mov r8d, 0xffffffff
xor r8d, 0xa2c4467a
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xbbecdc34
xor r8d, 0x19289a4e
mov edx, eax
and edx, r8d
or eax, 0xa2c4467a
imul eax, edx
add eax, ecx
mov ecx, 0x2c3d6b03
xor ecx, 0x27522241
sub eax, ecx
mov ecx, 0xae089759
xor ecx, 0x51f768a6
mov edx, eax
xor edx, ecx
and edx, 0x5e8d4362
mov r8d, 0xffffffff
xor r8d, 0x5e8d4362
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x5e8d4362
mov r8d, 0x9767ebbc
xor r8d, 0xc9eaa8de
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xf4105c38
xor ecx, 0xeaae1d4
cmp eax, ecx
ja 0x140175df3
mov rcx, qword [rbp + 0x390]
mov eax, dword [0x1401fd228]
mov r8d, dword [0x1401fd22c]
xor edx, edx
sub edx, eax
xor eax, eax
sub eax, r8d
add edx, eax
mov eax, 0xb0833e70
xor eax, 0xb0833e70
sub eax, edx
mov r8d, 0x1f846123
xor edx, edx
div r8d
mov r8d, 0x648e5454
xor r8d, 0xb86ee8b8
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x398]
mov r9d, eax
mov rax, qword [rbp + 0x130]
mov r10d, 0x648e97c9
xor r10d, 0x9b716836
mov r8d, r9d
xor r8d, r10d
xor r9d, 0xffffffff
and r8d, r9d
mov r9d, 0xef9ebe9a
xor r9d, 0x53f88417
mov r10d, 0x3d46e8c
xor r10d, 0xfc2b9173
xor r9d, r10d
mov r10d, 0xffffffff
xor r10d, 0xbc663a8d
and r9d, r10d
or r8d, r9d
xor r8d, 0xffffffff
mov dword [rbp + 0x120], r8d
mov r8d, 0xb8460ee4
xor r8d, 0x92d0baef
mov dword [rbp + 0x11c], 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 rdx, qword [rbp + 0x390]
mov rcx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x128]
add rsp, 0x20
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov cx, 0x4f59
xor cx, 0x4842
sub rsp, 0x20
call fcn.140064060
mov r8, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x4d8]
mov ecx, dword [rbp + 0x11c]
add rsp, 0x20
mov r9d, eax
mov eax, dword [rbp + 0x120]
mov dword [r8 + 0x10], r9d
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x127], dl
cmp eax, ecx
ja 0x140175df3
mov al, byte [rbp + 0x1ef]
mov rcx, qword [rbp + 0x198]
mov dl, byte [rbp + 0x127]
test dl, 1
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x1401742c2
jmp 0x140175477
mov cx, 0x9458
xor cx, 0x94fe
sub rsp, 0x20
call fcn.140064060
mov r8, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r9d, eax
mov al, byte [rbp + 0x1ef]
mov dword [r8 + 0x14], r9d
mov dl, byte [rdx]
mov r8b, 0x97
xor r8b, 0x97
cmp dl, r8b
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov ecx, dword [0x1401fd230]
add ecx, dword [0x1401fd234]
mov edx, ecx
and edx, 0xdd87d13e
mov eax, 0xf9651489
xor eax, 0xf965148b
imul eax, edx
add ecx, 0xdd87d13e
sub ecx, eax
mov eax, ecx
or eax, 0xf70d064e
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf70d064e
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x6ceddad8
xor edx, edx
div ecx
cmp eax, 0xa7d4933f
ja 0x140175dfc
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x128]
mov edi, dword [0x1401fd238]
mov edx, 0x717e78a0
xor edx, 0x2396a9f2
xor edi, edx
mov edx, dword [0x1401fd23c]
mov r8d, 0xd19753e7
xor r8d, 0xd2be788b
xor edx, r8d
add edi, edx
mov edx, edi
xor edx, 0xffffffff
mov r10d, 0x19726978
xor r10d, 0xfae662b8
mov r8d, 0x4ea7a367
xor r8d, 0xb1585c98
xor r10d, r8d
mov r9d, 0xffffffff
xor r9d, 0x969857ac
mov r8d, edx
and r8d, 0x969857ac
and edi, r9d
mov r11d, r10d
and r11d, 0x969857ac
mov esi, r9d
and esi, 0xe3940bc0
or r8d, edi
or r11d, esi
xor r8d, r11d
or edx, r10d
mov r10d, 0x641d3e9b
xor r10d, 0x9be2c164
xor edx, r10d
or r9d, 0x969857ac
and edx, r9d
or r8d, edx
or r8d, 0xb3d01c73
mov edx, r8d
and edx, 0xc3dc63f2
xor r8d, 0xc3dc63f2
or edx, r8d
mov dword [rbp + 0x10c], edx
mov qword [rax + 0x20], rcx
movabs rcx, 0x249242a5d9b6d973
movabs rax, 0x249242a5d9b6d96b
xor rcx, rax
movabs rdx, 0xa6dae660b4a6f2ae
movabs rax, 0xa6dae660b4a6f2a6
xor rdx, rax
sub rsp, 0x20
call fcn.14001c310
mov rcx, qword [rbp + 0x2f8]
add rsp, 0x20
mov qword [rbp + 0x100], rax
mov word [rcx], 0x699
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x10c]
mov qword [rbp + 0x110], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x11b], cl
cmp eax, 0x59fbae61
jb 0x140175dfc
mov al, byte [rbp + 0x1ef]
mov rcx, qword [rbp + 0x198]
mov dl, byte [rbp + 0x11b]
test dl, 1
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140174504
jmp 0x140175477
mov eax, dword [0x1401fd240]
xor eax, 0xe6e6e3cd
mov r8d, dword [0x1401fd244]
xor r8d, 0x8302c28b
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0xd243f339
xor ecx, 0x2dbc0cc6
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xe0185c8
xor ecx, 0x128b6dd
mov edx, 0x8ab7d882
xor edx, 0x7548277d
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x75c1f8d4
xor ecx, 0xbb8c83e6
xor edx, edx
div ecx
mov ecx, 0x322ebd95
xor ecx, 0x6d2967d0
and eax, ecx
mov ecx, 0x75fbc665
xor ecx, 0x5420d662
cmp eax, ecx
je 0x140175e05
mov rcx, qword [rbp + 0x3a0]
mov eax, dword [0x1401fd248]
xor edx, edx
div dword [0x1401fd24c]
mov rdx, qword [rbp + 0x3a8]
mov r8d, eax
mov rax, qword [rbp + 0x110]
sub r8d, 0x913d4d3c
and r8d, 0x7cd36de4
imul r8d, r8d, 0xe3b80a97
mov dword [rbp + 0xf8], 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 rdx, qword [rbp + 0x3a0]
mov rcx, qword [rbp + 0x250]
mov rax, qword [rbp + 0x100]
add rsp, 0x20
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0xac9
sub rsp, 0x20
call fcn.140064060
mov rdx, qword [rbp + 0x100]
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0xf8]
mov dword [rdx + 0x10], r8d
mov cl, byte [rcx]
mov dl, 0x40
xor dl, 0x40
cmp cl, dl
sete cl
mov byte [rbp + 0xff], cl
cmp eax, 0xa984e56b
jae 0x140175e05
mov al, byte [rbp + 0x1ef]
mov rcx, qword [rbp + 0x198]
mov dl, byte [rbp + 0xff]
test dl, 1
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140174694
jmp 0x140175477
mov ecx, dword [0x1401fd250]
mov edx, dword [0x1401fd254]
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
mov r9d, edx
xor r9d, 0xffffffff
and r8d, r9d
xor eax, 0xffffffff
xor r8d, 0xffffffff
and eax, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
sub eax, 0x85879f99
xor eax, 0x8515208e
mov ecx, 0xffffffff
xor ecx, 0x6bf2bff
add eax, ecx
add eax, 1
mov ecx, 0xa397a5fa
xor ecx, 0x43c03f2
cmp eax, ecx
jbe 0x140175e0e
mov eax, dword [0x1401fd258]
mov r8d, dword [0x1401fd25c]
mov r9d, r8d
xor r9d, 0xffffffff
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, 0x8db365e1
xor ecx, 0x96aadf66
sub eax, ecx
sub eax, 0x37fbb270
mov edx, 0xffffffff
xor edx, 0x6d4a53bf
mov ecx, eax
and ecx, edx
mov r8d, 0x5a9bb9ac
xor r8d, 0x37d1ea13
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov dword [rbp + 0xf0], eax
mov ecx, 0x795
sub rsp, 0x20
call fcn.140064060
mov rdx, qword [rbp + 0x100]
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0xf0]
mov dword [rdx + 0x14], r8d
mov cl, byte [rcx]
mov dl, 0xf
xor dl, 0xf
cmp cl, dl
sete cl
mov byte [rbp + 0xf7], cl
cmp eax, 0x2817a5c5
je 0x1401746fc
mov al, byte [rbp + 0x1ef]
mov rcx, qword [rbp + 0x198]
mov dl, byte [rbp + 0xf7]
test dl, 1
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x1401747e2
jmp 0x140175477
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x100]
mov qword [rax + 0x28], rcx
mov ecx, 0x99b
sub rsp, 0x20
call fcn.140064060
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r8d, eax
mov al, byte [rbp + 0x1ef]
mov dword [rbp + 0xec], r8d
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov r11, qword [rbp + 0x198]
mov r8d, dword [rbp + 0xec]
mov rdx, qword [rbp + 0x3b8]
mov rcx, qword [rbp + 0x3b0]
mov rax, qword [rbp + 0x260]
mov r9, qword [rbp + 0x168]
mov r10, qword [rbp + 0x258]
mov rsi, qword [rbp + 0x190]
mov qword [rcx], rsi
mov qword [r10], r11
mov qword [rdx], 5
mov qword [rax], r9
sub rsp, 0x20
call fcn.140154ae0
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r8, rax
mov al, byte [rbp + 0x1ef]
mov qword [rbp + 0xe0], r8
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov rcx, qword [rbp + 0x300]
mov word [rcx], 0x9b2
sub rsp, 0x20
call fcn.140063b00
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x198]
add rsp, 0x20
mov r8, rax
mov al, byte [rbp + 0x1ef]
mov qword [rbp + 0xd8], r8
cmp byte [rdx], 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov eax, dword [0x1401fd260]
xor edx, edx
div dword [0x1401fd264]
mov ecx, 0x8432e39a
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x775f2adb
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x180d92ba
or eax, edx
mov edx, 0x636fda89
xor edx, 0x7b624833
mov r8d, 0x6b2e6722
xor r8d, 0x94d198dd
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x180d92ba
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0xc269e9a8
jae 0x140175e17
mov rcx, qword [rbp + 0x3c0]
mov r8, qword [rbp + 0x3d0]
mov rdx, qword [rbp + 0x3c8]
mov rax, qword [rbp + 0x4f8]
mov r9, qword [rbp + 0xd8]
mov r10d, dword [0x1401fd268]
xor r10d, 0x3c0cfe81
mov r11d, dword [0x1401fd26c]
xor r11d, 0xd64bbb8b
xor r10d, r11d
mov esi, r10d
xor esi, 0xffffffff
mov r11d, 0xd5d66ab5
xor r11d, 0x2a29954a
xor r10d, r11d
and esi, r10d
mov r10d, 0x328571a
xor r10d, 0xfd4d1c8e
mov r11d, 0x3dcf8241
xor r11d, 0xc2307dbe
xor r10d, r11d
mov r11d, 0x56810cd7
xor r11d, 0xa8e44743
mov edi, 0x44309eea
xor edi, 0xbbcf6115
xor r11d, edi
and r10d, r11d
xor esi, 0xffffffff
xor r10d, 0xffffffff
and esi, r10d
mov r10d, 0x57333263
xor r10d, 0xa8b45303
mov r11d, esi
xor r11d, r10d
mov r10d, 0x121b7174
xor r10d, 0xed9c1014
mov edi, 0xdb5fc7bc
xor edi, 0x24a03843
xor r10d, edi
and esi, r10d
mov r10d, 0xcd0ea7e8
xor r10d, 0xcd0ea7ea
imul r10d, esi
sub r10d, r11d
mov esi, r10d
xor esi, 0xffffffff
and esi, 0x7666a654
mov edi, 0x91ced52a
xor edi, 0xe7a8737e
mov r11d, 0x212850c9
xor r11d, 0xded7af36
xor edi, r11d
mov r11d, r10d
and r11d, edi
imul r11d, esi
mov edi, 0x8c7bddb8
xor edi, 0xfa1d7bec
mov esi, r10d
and esi, edi
mov edi, 0x8591b38f
xor edi, 0xf3f715db
or r10d, edi
imul r10d, esi
add r10d, r11d
mov dword [rbp + 0xbc], 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.14016f768
mov r8, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x268]
mov rcx, qword [rbp + 0x4d8]
mov eax, dword [rbp + 0xbc]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0xc0], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xc8], rdx
mov cl, byte [rcx]
mov dl, 0xdd
xor dl, 0xdd
cmp cl, dl
sete cl
mov byte [rbp + 0xd7], cl
cmp eax, 0x1e2a4eb1
jae 0x140175e17
mov al, byte [rbp + 0x1ef]
mov rcx, qword [rbp + 0x198]
mov dl, byte [rbp + 0xd7]
test dl, 1
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140174b6e
jmp 0x140175477
mov rcx, qword [rbp + 0x308]
mov ax, 0x9c84
xor ax, 0x95d4
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x20
mov rdx, rax
mov al, byte [rbp + 0x1ef]
mov qword [rbp + 0xb0], rdx
cmp byte [rcx], 0
mov byte [rbp + 0xbb], al
jne 0x14017531b
mov rcx, qword [rbp + 0x3d8]
mov r8, qword [rbp + 0x3e8]
mov rdx, qword [rbp + 0x3e0]
mov rax, qword [rbp + 0xb0]
mov r9, qword [rbp + 0x270]
mov r10, qword [rbp + 0xc8]
mov r11, qword [rbp + 0xc0]
mov qword [rdx], r11
mov qword [r9], r10
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14016f768
mov r8, qword [rbp + 0x3d8]
mov rdx, qword [rbp + 0x278]
mov rcx, qword [rbp + 0x4d8]
mov al, byte [rbp + 0x1ef]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0xa0], r8
mov rdx, qword [rdx]
mov qword [rbp + 0xa8], rdx
cmp byte [rcx], 0
mov byte [rbp + 0xbb], al
jne 0x14017531b
mov rcx, qword [rbp + 0x3f0]
mov r8, qword [rbp + 0x400]
mov rdx, qword [rbp + 0x3f8]
mov rax, qword [rbp + 0x4f0]
mov r9, qword [rbp + 0x280]
mov r10, qword [rbp + 0xa8]
mov r11, qword [rbp + 0xa0]
mov qword [rdx], r11
mov qword [r9], r10
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14016f768
mov r8, qword [rbp + 0x3f0]
mov rdx, qword [rbp + 0x288]
mov rcx, qword [rbp + 0x4d8]
mov al, byte [rbp + 0x1ef]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x88], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x90], rdx
cmp byte [rcx], 0
mov byte [rbp + 0x9f], al
jne 0x1401752a6
mov rcx, qword [rbp + 0x310]
mov word [rcx], 0x5a1
sub rsp, 0x20
call fcn.140063b00
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x20
mov rdx, rax
mov al, byte [rbp + 0x1ef]
mov qword [rbp + 0x78], rdx
cmp byte [rcx], 0
mov byte [rbp + 0x87], al
jne 0x14017522c
mov eax, dword [0x1401fd270]
xor edx, edx
div dword [0x1401fd274]
mov ecx, 0x4b070191
xor ecx, 0xdd247b6
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x4b7a68d4
mov edx, 0xffffffff
xor edx, 0x4b7a68d4
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, eax
and ecx, 0xa2ae1712
mov edx, 0xefbd22b6
xor edx, 0x1042dd49
xor ecx, edx
add eax, 0xa2ae1712
add eax, 1
add eax, ecx
cmp eax, 0xafb2142a
je 0x140175e20
mov rcx, qword [rbp + 0x408]
mov r8, qword [rbp + 0x418]
mov r9, qword [rbp + 0x290]
mov r10, qword [rbp + 0x90]
mov r11, qword [rbp + 0x88]
mov eax, dword [0x1401fd278]
and eax, dword [0x1401fd27c]
imul eax, eax, 0x3e2fede9
mov esi, 0x698ae5af
xor esi, 0x164e0be0
xor edx, edx
div esi
mov rdx, qword [rbp + 0x410]
mov esi, eax
mov rax, qword [rbp + 0x78]
add esi, 0xd39c7ca8
sub esi, 0xc2956ebb
sub esi, 0xd39c7ca8
mov dword [rbp + 0x5c], esi
mov qword [rdx], r11
mov qword [r9], r10
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14016f768
mov r8, qword [rbp + 0x408]
mov rdx, qword [rbp + 0x298]
mov rcx, qword [rbp + 0x4d8]
mov eax, dword [rbp + 0x5c]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x60], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x68], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x77], cl
cmp eax, 0x3995eb6f
jbe 0x140175e20
mov al, byte [rbp + 0x1ef]
mov cl, byte [rbp + 0x77]
test cl, 1
mov byte [rbp + 0x87], al
jne 0x140174e4e
jmp 0x14017522c
mov rcx, qword [rbp + 0x420]
mov r8, qword [rbp + 0x430]
mov rdx, qword [rbp + 0x428]
mov r9, qword [rbp + 0x2a0]
mov r10, qword [rbp + 0x68]
mov r11, qword [rbp + 0x60]
mov rax, qword [rbp + 0x1c0]
mov rax, qword [rax]
mov qword [rdx], r11
mov qword [r9], r10
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14016f768
mov r8, qword [rbp + 0x420]
mov rdx, qword [rbp + 0x2a8]
mov rcx, qword [rbp + 0x4d8]
mov al, byte [rbp + 0x1ef]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x48], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x50], rdx
mov cl, byte [rcx]
mov dl, 0x94
xor dl, 0x94
cmp cl, dl
mov byte [rbp + 0x5b], al
jne 0x1401750b4
mov rcx, qword [rbp + 0x440]
mov r8, qword [rbp + 0x438]
mov rax, qword [rbp + 0x2b0]
mov rdx, qword [rbp + 0x50]
mov r9, qword [rbp + 0x48]
mov r10, qword [rbp + 0x508]
mov r10, qword [r10]
add r10, 0x18
mov qword [rbp + 0x38], r10
mov qword [r8], r9
mov qword [rax], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0x38]
mov rdx, qword [rbp + 0xe0]
mov r8, qword [rbp + 0x438]
mov rax, qword [rbp + 0x440]
add rsp, 0x20
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140154690
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x30
mov edx, eax
mov al, byte [rbp + 0x1ef]
mov dword [rbp + 0x44], edx
cmp byte [rcx], 0
mov byte [rbp + 0x5b], al
jne 0x1401750b4
mov eax, dword [0x1401fd280]
mov ecx, dword [0x1401fd284]
xor ecx, 0x95511d22
xor eax, ecx
imul eax, eax, 0xad0415c4
mov ecx, 0xd34e5883
xor ecx, 0xa6966d7c
or eax, ecx
mov ecx, eax
and ecx, 0x4d56236b
mov edx, 0x8425b067
xor edx, 0x8425b065
imul ecx, edx
mov edx, 0xa318b744
xor edx, 0xee4e942f
xor eax, edx
add eax, ecx
mov ecx, 0xdcef0ea5
xor ecx, 0x9968427
cmp eax, ecx
ja 0x140175e29
mov ecx, dword [rbp + 0x44]
mov eax, dword [0x1401fd288]
mov edx, dword [0x1401fd28c]
sub eax, edx
imul eax, eax, 0x819caead
mov edx, eax
and edx, 0xb1388e78
mov r8d, eax
xor r8d, 0x4ec77187
add eax, r8d
sub eax, edx
xor eax, 0x4e9bdf69
mov dword [rbp + 0x28], eax
mov eax, 0xd9b50003
mov dword [rbp + 0x2c], eax
sub rsp, 0x20
call fcn.1400988f0
mov rcx, qword [rbp + 0x4d8]
add rsp, 0x20
mov cl, byte [rcx]
xor edx, edx
test al, al
mov r8d, 0xa
cmovne r8d, edx
test cl, cl
sete cl
mov edx, 7
cmove edx, r8d
mov dword [rbp + 0x30], edx
and cl, al
mov byte [rbp + 0x36], cl
mov al, 1
test cl, 1
mov byte [rbp + 0x37], al
jne 0x14017505c
mov al, byte [rbp + 0x1ef]
mov byte [rbp + 0x37], al
mov eax, dword [rbp + 0x28]
mov ecx, dword [rbp + 0x2c]
mov dl, byte [rbp + 0x37]
mov byte [rbp + 0x27], dl
cmp eax, ecx
je 0x140174fcd
mov al, byte [rbp + 0x27]
mov ecx, dword [rbp + 0x30]
test ecx, ecx
mov byte [rbp + 0x5b], al
je 0x1401750b4
jmp 0x140175086
mov al, byte [rbp + 0x27]
mov ecx, dword [rbp + 0x30]
sub ecx, 7
mov byte [rbp + 0x5b], al
je 0x1401750b4
jmp 0x14017509d
mov al, byte [rbp + 0x27]
mov ecx, dword [rbp + 0x30]
sub ecx, 0xa
mov byte [rbp + 0x5b], al
jne 0x14017579b
jmp 0x1401750b4
mov rcx, qword [rbp + 0x68]
mov al, byte [rbp + 0x5b]
mov byte [rbp + 0x26], al
cmp rcx, 0
mov byte [rbp + 0x87], al
je 0x14017522c
mov eax, dword [0x1401fd290]
and eax, dword [0x1401fd294]
mov ecx, 0x999286a7
xor ecx, 0x3c79413
xor edx, edx
div ecx
xor eax, 0x7a1f8a93
mov ecx, 0x6b3a869e
xor edx, edx
div ecx
cmp eax, 0xbed108fb
jae 0x140175e32
mov rcx, qword [rbp + 0x68]
mov edx, dword [0x1401fd298]
mov eax, dword [0x1401fd29c]
mov r8d, 0x97f4875c
xor r8d, 0x2dacae0d
xor eax, r8d
xor edx, eax
mov r8d, 0xfaeb1750
xor r8d, 0x514e8af
mov eax, edx
xor eax, r8d
and eax, 0xd79adb58
mov r8d, 0xffffffff
xor r8d, 0xd79adb58
and edx, r8d
or eax, edx
mov edx, 0xf2c19cec
xor edx, 0x4d4a2fe1
xor eax, edx
sub eax, 0x9f66bc7d
mov edx, 0x41e8b9b9
xor edx, 0xf6ea461b
add eax, edx
add eax, 0x9f66bc7d
mov rcx, qword [rcx]
or rcx, rcx
movabs rdx, 0xf7f2488d442718fb
movabs r8, 0x80db772bbd8e704
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x4000000000000000
movabs r8, 0x4000000000000000
or rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x7317e2c2479ee611
movabs r9, 0x8ce81d3db86119ee
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0xb30cc2c9327ccb6a
movabs r8, 0xb30cc2c9327ccb6a
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0x25], cl
cmp eax, 0xe8c47a6d
ja 0x140175e32
mov al, byte [rbp + 0x26]
mov cl, byte [rbp + 0x25]
test cl, 1
mov byte [rbp + 0x87], al
jne 0x140175212
jmp 0x14017522c
mov rcx, qword [rbp + 0x68]
sub rsp, 0x20
call fcn.14000f935
mov al, byte [rbp + 0x26]
add rsp, 0x20
mov byte [rbp + 0x87], al
mov rcx, qword [rbp + 0x90]
mov al, byte [rbp + 0x87]
mov byte [rbp + 0x24], al
cmp rcx, 0
mov byte [rbp + 0x9f], al
je 0x1401752a6
mov al, byte [rbp + 0x24]
mov rdx, qword [rbp + 0x90]
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
movabs rdx, 0xf50d11950d37ba6d
movabs r8, 0xf50d11950d37ba6d
xor rdx, r8
cmp rcx, rdx
mov byte [rbp + 0x9f], al
jne 0x1401752a6
mov rcx, qword [rbp + 0x90]
sub rsp, 0x20
call fcn.14000f935
mov al, byte [rbp + 0x24]
add rsp, 0x20
mov byte [rbp + 0x9f], al
mov rcx, qword [rbp + 0xa8]
mov al, byte [rbp + 0x9f]
mov byte [rbp + 0x23], al
cmp rcx, 0
mov byte [rbp + 0xbb], al
je 0x14017531b
mov al, byte [rbp + 0x23]
mov rcx, qword [rbp + 0xa8]
mov rcx, qword [rcx]
mov rdx, rcx
add rdx, 1
xor rcx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
add rcx, rdx
cmp rcx, 0
mov byte [rbp + 0xbb], al
jne 0x14017531b
mov rcx, qword [rbp + 0xa8]
sub rsp, 0x20
call fcn.14000f935
mov al, byte [rbp + 0x23]
add rsp, 0x20
mov byte [rbp + 0xbb], al
mov rcx, qword [rbp + 0x198]
mov rdx, qword [rbp + 0xc8]
mov al, byte [rbp + 0xbb]
mov byte [rbp + 0x22], al
cmp rdx, 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
je 0x140175477
mov al, byte [rbp + 0x22]
mov rcx, qword [rbp + 0x198]
mov r8, qword [rbp + 0xc8]
movabs rdx, 0x4000000000000000
and rdx, qword [r8]
cmp rdx, 0
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jne 0x140175477
mov ecx, dword [0x1401fd2a0]
mov edx, dword [0x1401fd2a4]
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, 0x73240743
xor ecx, 0x8cdbf8bc
xor eax, ecx
xor eax, 0x7c65574b
or eax, 0x9ef957d3
add eax, 0x6902abcc
cmp eax, 0xea975a1
jb 0x140175e3b
mov rcx, qword [rbp + 0xc8]
mov eax, dword [0x1401fd2a8]
mov edx, dword [0x1401fd2ac]
xor edx, 0x11ab469f
and eax, edx
add eax, 0xd5f03ce8
add eax, 0xb3ed9b84
sub eax, 0xd5f03ce8
mov r8d, 0xe764be2c
xor r8d, 0xb20972c4
mov edx, eax
xor edx, r8d
mov r8d, 0xb12e2791
xor r8d, 0xe443eb79
mov r9d, 0xc65c2e99
xor r9d, 0x39a3d166
xor r8d, r9d
and eax, r8d
shl eax, 1
sub eax, edx
mov edx, 0x93f9a52a
xor edx, 0x2732cb94
sub eax, edx
mov dword [rbp + 0x1c], eax
mov eax, 0xc1570664
xor eax, 0xce384f11
mov dword [rbp + 0x18], eax
sub rsp, 0x20
call fcn.14000f935
mov ecx, dword [rbp + 0x18]
mov eax, dword [rbp + 0x1c]
add rsp, 0x20
cmp eax, ecx
je 0x1401753c2
mov al, byte [rbp + 0x22]
mov rcx, qword [rbp + 0x198]
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1af], al
jmp 0x140175477
mov rax, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x1a0]
mov dl, byte [rbp + 0x1af]
mov byte [rbp + 0xf], dl
mov qword [rbp + 0x10], rcx
cmp rax, 0
je 0x1401754df
mov rax, qword [rbp + 0x1b8]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1401754df
mov rcx, qword [rbp + 0x1b8]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp + 0x10]
cmp rax, 0
je 0x1401756b2
mov rax, qword [rbp + 0x10]
mov rax, qword [rax]
movabs rdx, 0xd954d4c5413175be
movabs rcx, 0xd954d4c5413175bf
xor rdx, rcx
mov rcx, rax
add rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1401756b2
mov r11d, dword [0x1401fd2b0]
mov eax, dword [0x1401fd2b4]
xor eax, 0x29c584e6
imul r11d, eax
xor r11d, 0xb2349a42
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xd9d2bd7
xor r8d, 0xd7c62d92
mov eax, 0xa9dc18a3
xor eax, 0x5623e75c
xor r8d, eax
mov edx, 0x1b085d4b
xor edx, 0xd6f91d36
mov eax, 0x1a564e19
xor eax, 0xe5a9b1e6
xor edx, eax
mov eax, ecx
and eax, 0xcdf1407d
and r11d, edx
mov r9d, r8d
and r9d, 0xcdf1407d
mov r10d, edx
and r10d, 0xda5b0645
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xcdf1407d
and ecx, edx
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xd7c61410
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x1db12ad9
xor r8d, 0xca773ec9
mov edx, eax
and edx, r8d
or eax, 0xd7c61410
imul eax, edx
add eax, ecx
mov ecx, 0x2541b598
xor ecx, 0x265bc7df
cmp eax, ecx
jbe 0x140175e44
mov rcx, qword [rbp + 0x10]
mov edx, dword [0x1401fd2b8]
mov r8d, dword [0x1401fd2bc]
mov r9d, edx
and r9d, r8d
mov eax, 0xdd22ded3
xor eax, 0xdd22ded1
imul eax, r9d
add edx, r8d
sub edx, eax
mov r9d, 0xf6a4f204
xor r9d, 0x3f5085ae
mov eax, 0x3dbb0af1
xor eax, 0xc244f50e
xor r9d, eax
mov r8d, edx
and r8d, r9d
mov eax, edx
or eax, r9d
xor eax, 0xffffffff
imul eax, r8d
mov r9d, 0x24279228
xor r9d, 0xedd3e582
mov r8d, edx
and r8d, r9d
or edx, 0xc9f477aa
imul edx, r8d
add edx, eax
mov eax, edx
and eax, 0xc154f13a
or edx, 0xc154f13a
add eax, edx
add eax, 0x5bc7f89d
mov dword [rbp + 8], eax
sub rsp, 0x20
call fcn.14000f935
mov eax, dword [rbp + 8]
add rsp, 0x20
cmp eax, 0xaa036ba8
je 0x140175e44
jmp 0x1401756b2
mov al, byte [rbp + 0xf]
mov rcx, qword [rbp + 0x4d8]
mov cl, byte [rcx]
mov dl, 0xf8
xor dl, 0xf8
cmp cl, dl
mov cl, al
mov byte [rbp + 0x1d7], cl
mov byte [rbp + 0x182], al
je 0x140175778
mov al, byte [rbp + 0x1d7]
mov byte [rbp - 1], al
sub rsp, 0x20
call fcn.140175e68
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp], rax
cmp word [rax + 0x12], 1
jle 0x14017575a
mov rax, qword [rbp]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x14017575a
mov rax, qword [rbp + 0x4d8]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140175e7a
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140093060
mov rax, qword [rbp + 0x4d8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140175773
sub rsp, 0x20
call fcn.140171c78
add rsp, 0x20
mov al, byte [rbp - 1]
mov rcx, qword [rbp + 0x4d8]
cmp byte [rcx], 0
mov byte [rbp + 0x182], al
je 0x140175778
jmp 0x140175dbb
mov rcx, qword [rbp + 0x1f0]
mov al, byte [rbp + 0x182]
add rcx, 1
mov qword [rbp + 0x2c0], rcx
mov byte [rbp + 0x2cf], al
jmp 0x14017344a
mov cl, byte [rbp + 0x36]
mov al, 1
test cl, 1
mov byte [rbp + 0x1ff], al
jne 0x1401757b4
jmp 0x140175dbb
mov al, byte [rbp + 0x1ff]
mov byte [rbp - 2], al
mov eax, dword [0x1401fd2c0]
xor eax, dword [0x1401fd2c4]
imul eax, eax, 0x42f02b85
mov ecx, 0x9838578a
xor edx, edx
div ecx
mov ecx, 0x391c98ca
xor ecx, 0xfb880d9f
or eax, ecx
cmp eax, 0x782edf1b
jb 0x140175e4d
mov eax, dword [0x1401fd2c8]
xor eax, 0xf5997c5f
xor edx, edx
div dword [0x1401fd2cc]
mov dl, byte [rbp - 2]
mov ecx, 0x6cbdc22
xor ecx, 0xf8e42335
xor eax, ecx
sub eax, 0x21a0365
mov r8d, 0x34c969a
xor r8d, 0xfcb36965
mov ecx, eax
xor ecx, r8d
mov r8d, 0x5e7633a2
xor r8d, 0x3ff3f4e6
and r8d, ecx
mov r9d, 0xffffffff
xor r9d, 0x6185c744
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r8d, eax
and r8d, 0x6185c744
or eax, 0x6185c744
imul eax, r8d
add eax, ecx
mov ecx, 0xa6fec58b
xor ecx, 0xc7f3030c
and dl, 1
cmp dl, 0
sete dl
mov byte [rbp - 3], dl
cmp eax, ecx
je 0x1401757f0
mov al, byte [rbp - 3]
test al, 1
jne 0x140175dbb
jmp 0x140175894
mov rcx, qword [rbp + 0x448]
mov word [rcx], 0x4d1
sub rsp, 0x20
call fcn.140063b00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x4d8]
mov qword [rbp - 0x10], rcx
cmp byte [rax], 0
jne 0x140175dbb
mov rcx, qword [rbp + 0x460]
mov r8, qword [rbp + 0x470]
mov rdx, qword [rbp + 0x468]
mov rax, qword [rbp + 0x4f8]
mov r9, qword [rbp - 0x10]
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.14016f768
mov rcx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x4d8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x20], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x18], rcx
cmp byte [rax], 0
jne 0x140175dbb
mov rcx, qword [rbp + 0x450]
mov word [rcx], 0x9fd
sub rsp, 0x20
call fcn.140063b00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x4d8]
mov qword [rbp - 0x28], rcx
cmp byte [rax], 0
jne 0x140175d62
mov eax, dword [0x1401fd2d0]
xor eax, 0x5c076a7f
mov ecx, dword [0x1401fd2d4]
xor ecx, 0x2c52c486
or eax, ecx
mov ecx, 0xd08a0b6b
xor ecx, 0x9530fed3
xor edx, edx
div ecx
mov ecx, 0xae25bfbe
xor edx, edx
div ecx
xor eax, 0xa963f5c1
cmp eax, 0xb95f6bb8
ja 0x140175e56
mov rcx, qword [rbp + 0x478]
mov r8, qword [rbp + 0x488]
mov r9, qword [rbp - 0x18]
mov r10, qword [rbp - 0x20]
mov eax, dword [0x1401fd2d8]
xor edx, edx
div dword [0x1401fd2dc]
mov rdx, qword [rbp + 0x480]
mov r11d, eax
mov rax, qword [rbp - 0x28]
mov esi, 0x6fe4b4d2
xor esi, 0x3c294979
and r11d, esi
mov edi, r11d
xor edi, 0xffffffff
and edi, 0x7ff182fa
mov ebx, 0xffffffff
xor ebx, 0x7ff182fa
mov esi, r11d
and esi, ebx
imul esi, edi
mov edi, r11d
and edi, 0x7ff182fa
mov ebx, 0xd214a4cb
xor ebx, 0xade52631
or r11d, ebx
imul r11d, edi
add r11d, esi
sub r11d, 0x32b13e23
mov dword [rbp - 0x44], r11d
mov qword [rdx], r10
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.14016f768
mov rdx, qword [rbp + 0x478]
mov rcx, qword [rbp + 0x4d8]
mov eax, dword [rbp - 0x44]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp - 0x40], r8
mov rdx, qword [rdx + 8]
mov qword [rbp - 0x38], rdx
mov cl, byte [rcx]
mov dl, 0x32
xor dl, 0x32
cmp cl, dl
sete cl
mov byte [rbp - 0x29], cl
cmp eax, 0x6db58fa6
jbe 0x1401759a4
mov al, byte [rbp - 0x29]
test al, 1
jne 0x140175a98
jmp 0x140175d62
mov rcx, qword [rbp + 0x490]
mov r8, qword [rbp + 0x4a0]
mov rdx, qword [rbp + 0x498]
mov rax, qword [rbp + 0x4f0]
mov r9, qword [rbp - 0x38]
mov r10, qword [rbp - 0x40]
mov qword [rdx], r10
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.14016f768
mov rcx, qword [rbp + 0x490]
mov rax, qword [rbp + 0x4d8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x58], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x50], rcx
cmp byte [rax], 0
jne 0x140175d0e
mov rcx, qword [rbp + 0x458]
mov ax, 0x44c6
xor ax, 0x436d
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063b00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x4d8]
mov qword [rbp - 0x60], rcx
cmp byte [rax], 0
jne 0x140175cc3
mov rcx, qword [rbp + 0x4a8]
mov r8, qword [rbp + 0x4c0]
mov rdx, qword [rbp + 0x4b0]
mov rax, qword [rbp - 0x60]
mov r9, qword [rbp - 0x50]
mov r10, qword [rbp - 0x58]
mov qword [rdx], r10
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.14016f768
mov rcx, qword [rbp + 0x4a8]
mov rax, qword [rbp + 0x4d8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x70], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x68], rcx
cmp byte [rax], 0
jne 0x140175cc3
mov ecx, dword [0x1401fd2e0]
xor ecx, 0x4ee99afd
mov eax, dword [0x1401fd2e4]
xor eax, 0x63fb1e55
xor ecx, eax
add ecx, 0x50710db6
add ecx, 0xd31b46b
sub ecx, 0x50710db6
sub ecx, 0x565ea091
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x91399a05
mov edx, 0xffffffff
xor edx, 0x91399a05
and ecx, edx
or eax, ecx
cmp eax, 0x36fcc33d
jbe 0x140175e5f
mov rdx, qword [rbp + 0x4c8]
mov rax, qword [rbp - 0x68]
mov r8, qword [rbp - 0x70]
mov rcx, qword [rbp + 0x500]
mov r9d, dword [0x1401fd2e8]
mov r10d, dword [0x1401fd2ec]
xor r10d, 0xffffffff
xor r11d, r11d
sub r11d, 1
sub r10d, r11d
sub r9d, r10d
or r9d, 0x755bde8c
mov r10d, r9d
xor r10d, 0xffffffff
mov r11d, 0x28da5a56
xor r11d, 0xe91f10a2
and r10d, r11d
mov r11d, 0x4a8217a7
xor r11d, 0x8b475d53
mov esi, 0x36753198
xor esi, 0xc98ace67
xor r11d, esi
and r9d, r11d
sub r9d, r10d
mov r10d, r9d
and r10d, 0x38c2dbde
mov r11d, 0x50f0ce92
xor r11d, 0x50f0ce90
imul r10d, r11d
xor r9d, 0x38c2dbde
add r9d, r10d
mov dword [rbp - 0x74], r9d
mov rcx, qword [rcx]
add rcx, 0x60
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140014ce0
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp eax, 0x18662733
je 0x140175bf8
jmp 0x140175cc3
mov rax, qword [rbp - 0x50]
cmp rax, 0
je 0x140175d0e
mov rax, qword [rbp - 0x50]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x140175d0e
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp - 0x38]
cmp rax, 0
je 0x140175d62
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140175d62
mov rcx, qword [rbp - 0x38]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
mov rax, qword [rbp - 0x18]
cmp rax, 0
je 0x140175dbb
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x140175dbb
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.14000f935
add rsp, 0x20
lea rsp, [rbp + 0x518]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov edi, 0xe914d29a
adc al, 0xe9
out 0xcd, eax
invalid
enter 0x5a54, 0x4d
jmp 0x1401736d9
movabs dword [0xffffda8be9bc1849], eax
leave
push rcx
imul cl
invalid
leave
jmp 0x140175dd2
invalid
test al, 0xb4
invalid
sub dword [rsi - 0x1a16c8f4], ebp
call 0xced35e18
cmp al, 9
jmp 0x140174989
mov ebx, 0xe9093c8e
imul ebp, ebx, 0x9192ffff
xchg edx, eax
xchg ecx, eax
in al, dx
jp 0x140175e0e
out dx, eax
invalid
sbb eax, 0xe9ee0353
wait
int1
invalid
or byte [rsi], cl
mov ecx, eax
jmp 0x140175102
sbb bh, ah
invalid
or dword [r13 + 0x1a], r13d
jmp 0x140175606
jge 0x140175e23
stosb byte [rdi], al
stosd dword [rdi], eax
jmp 0x1401757f0
and dword [rbx], edx
xchg esi, eax
xor ecx, ebp
sti
invalid
jle 0x140175e56
out dx, eax
invalid