Function at 0x1401eaaa0
Capabilities:
Accept command line arguments
Encode data using xor
Query or enumerate registry value

Disassembly:
push rbp
sub rsp, 0x330
lea rbp, [rsp + 0x80]
mov eax, 0x10
mov qword [rbp + 0x140], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x140]
mov rcx, rsp
mov qword [rbp + 0x168], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x140]
mov rcx, rsp
mov qword [rbp + 0x170], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x178], rax
mov eax, 0x20
mov qword [rbp + 0x130], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x140]
mov rcx, rsp
mov qword [rbp + 0x118], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x140]
mov rcx, rsp
mov qword [rbp + 0x120], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x140]
mov rcx, rsp
mov qword [rbp + 0x128], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x130]
mov rcx, rsp
mov qword [rbp + 0x138], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x140]
mov rcx, rsp
mov qword [rbp + 0x148], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x150], rax
sub rsp, 0x20
call fcn.1401ee30b
add rsp, 0x20
add rax, 0x60
mov qword [rbp + 0x158], rax
sub rsp, 0x20
call fcn.1401ee30b
add rsp, 0x20
mov qword [rbp + 0x180], rax
add rax, 0x60
mov qword [rbp + 0x160], rax
movabs rdx, 0x3bc5931e7ad85e8f
movabs rax, 0x3bc5931e7ad85e9f
xor rdx, rax
lea rcx, [rbp + 0x260]
sub rsp, 0x20
call fcn.1401ee319
add rsp, 0x20
lea rcx, [rbp + 0x250]
mov edx, 0x10
sub rsp, 0x20
call fcn.1401ee319
mov rdx, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x170]
mov rax, qword [rbp + 0x178]
add rsp, 0x20
mov qword [rbp + 0x248], 0
mov qword [rbp + 0x240], 0
mov qword [rbp + 0x238], 0
mov qword [rbp + 0x230], 0
mov qword [rdx], 0
mov qword [rbp + 0x228], 0
mov qword [rbp + 0x220], 0
mov qword [rbp + 0x218], 0
mov qword [rbp + 0x210], 0
mov qword [rcx], 0
mov qword [rax], 0
xor eax, eax
mov edx, eax
mov r8d, 0x604
mov r9d, 0x2541
sub rsp, 0x30
mov rcx, rdx
mov qword [rsp + 0x20], 0
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
add rsp, 0x30
xor eax, eax
mov r9d, eax
mov r8d, 0x1159
sub rsp, 0x30
mov rcx, r9
mov rdx, r9
mov qword [rsp + 0x20], 0
call qword [sym.imp.ADVAPI32.dll_RegQueryMultipleValuesA]
add rsp, 0x30
xor eax, eax
mov r9d, eax
sub rsp, 0x20
mov rcx, r9
mov rdx, r9
mov r8, r9
call qword [sym.imp.ADVAPI32.dll_RegQueryValueA]
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
add rsp, 0x20
mov r8d, 0xcf0246ea
xor r8d, 0xcf02603a
mov r9d, 0x7c359d9c
xor r9d, 0x7c3590ae
xor eax, eax
mov edx, eax
sub rsp, 0x30
mov rcx, rdx
mov qword [rsp + 0x20], 0
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
add rsp, 0x10
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
call fcn.1401e93c4
mov rdx, qword [rbp + 0x180]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx + 0x60], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov ecx, 0x566d578e
xor ecx, 0x566d578b
sub rsp, 0x20
call fcn.1401ea842
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.140069f90
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0x30
xor r8b, 0x30
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.140069ff0
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov ecx, 5
sub rsp, 0x20
call fcn.1401ea842
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0x73
xor r8b, 0x73
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov ecx, dword [0x1401fecd0]
xor ecx, 0xf55899e5
xor ecx, dword [0x1401fecd4]
sub ecx, 0xd5d666d
sub ecx, 0x9f2eb3b1
mov eax, 0xc4093d0c
xor eax, 0xc9545b61
add ecx, eax
or ecx, 0x2e418de7
mov eax, ecx
and eax, 0x5bdfe8df
or ecx, 0x5bdfe8df
add eax, ecx
cmp eax, 0xe8e73e73
ja 0x1401ee220
mov eax, dword [0x1401fecd8]
mov ecx, dword [0x1401fecdc]
or eax, ecx
imul rax, rax, 0x75479ee9
shr rax, 0x3e
imul eax, eax, 0xec62ba27
xor eax, 0x9719f801
mov dword [rbp + 0x110], eax
sub rsp, 0x20
call fcn.1401e8bc0
mov rcx, qword [rbp + 0x160]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x110]
mov cl, byte [rcx]
test cl, cl
sete cl
mov byte [rbp + 0x116], cl
and cl, dl
mov byte [rbp + 0x117], cl
cmp eax, 0xd2c806cd
ja 0x1401ee220
mov al, byte [rbp + 0x117]
test al, 1
jne 0x1401eaf12
jmp 0x1401eb1c4
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401c2820
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401d2c00
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xe3
xor cl, 0xe3
cmp al, cl
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.14018c2f0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.14019f700
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401d11a0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x49
xor cl, 0x49
cmp al, cl
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401bafc0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.140169090
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.14017ab60
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401a5be0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xb8
xor cl, 0xb8
cmp al, cl
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.14018a720
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov eax, dword [0x1401fece0]
mov edx, dword [0x1401fece4]
mov ecx, eax
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb537be51
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xfeb32049
xor ecx, 0x55cdfb88
mov edx, 0x24f0f074
xor edx, 0x8f8e2bb5
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xa4e66dcc
xor ecx, 0x5b199233
xor eax, ecx
sub eax, 0x91a8f356
cmp eax, 0x588b4af2
je 0x1401ee229
mov eax, dword [0x1401fece8]
mov edx, dword [0x1401fecec]
xor edx, 0xffffffff
mov ecx, eax
xor ecx, edx
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8feafc3a
or eax, edx
mov edx, 0x40b97eda
xor edx, 0xbf468125
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x8feafc3a
or ecx, edx
mov edx, 0xd5a3d52b
xor edx, 0x2a5c2ad4
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xf448f4cd
xor ecx, 0xfa071e0a
imul eax, ecx
xor eax, 0x68c00794
mov dword [rbp + 0x108], eax
mov eax, 0x37726a07
xor eax, 0x6f07fc02
mov dword [rbp + 0x104], eax
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401aeb20
mov rdx, qword [rbp + 0x160]
mov ecx, dword [rbp + 0x104]
mov eax, dword [rbp + 0x108]
add rsp, 0x20
mov dl, byte [rdx]
mov r8b, 0xa9
xor r8b, 0xa9
cmp dl, r8b
sete dl
mov byte [rbp + 0x10f], dl
cmp eax, ecx
jae 0x1401ee229
mov al, byte [rbp + 0x10f]
test al, 1
jne 0x1401eb1ae
jmp 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.140135070
add rsp, 0x20
jmp 0x1401ee1ae
mov dl, byte [rbp + 0x116]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401eb1e9
jmp 0x1401edfce
mov eax, dword [0x1401fecf0]
mov edx, dword [0x1401fecf4]
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and edx, edx
xor edx, 0xffffffff
and eax, edx
xor eax, 0xffffffff
and ecx, eax
xor ecx, 0xffffffff
mov edx, 0x6c2b9d92
xor edx, 0x115ee38c
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
or ecx, 0x7d757e1e
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x4cff4279
xor ecx, 0xb300bd86
xor eax, ecx
mov edx, 0xffffffff
xor edx, 0x5035d3c0
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x5035d3c0
add eax, edx
sub eax, ecx
mov ecx, 0xf4a403f6
xor ecx, 0xf4a403f6
mov edx, 0x2406934e
xor edx, 0x22820c6e
sub ecx, edx
sub eax, ecx
mov ecx, 0x49401303
xor ecx, 0xfb5d4f23
cmp eax, ecx
je 0x1401ee232
mov ecx, dword [0x1401fecf8]
mov r8d, dword [0x1401fecfc]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov edx, 0xcb8ec07
xor edx, 0xe89f6120
mov eax, 0x6cf0da93
xor eax, 0x930f256c
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
and eax, 0x33ab2128
add eax, 0xaa962711
mov dword [rbp + 0xfc], eax
sub rsp, 0x20
call fcn.1400a6940
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp + 0xfc]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x103], cl
cmp eax, 0xeef38582
je 0x1401ee232
mov dl, byte [rbp + 0x103]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401eb336
jmp 0x1401edfce
sub rsp, 0x20
call fcn.1400b4b90
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0xdf
xor r8b, 0xdf
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400b4c00
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov eax, dword [0x1401fed00]
mov ecx, 0xd3abf858
xor ecx, 0x9a0114ec
xor eax, ecx
mov r8d, dword [0x1401fed04]
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
sub eax, 0x85c43e97
sub eax, 0xdc212f00
add eax, 0xfd7f5790
cmp eax, 0x227f518c
je 0x1401ee23b
mov eax, dword [0x1401fed08]
xor eax, 0xf76265b3
xor edx, edx
div dword [0x1401fed0c]
mov ecx, 0xfecbecef
xor ecx, 0xbbe02344
xor eax, ecx
mov ecx, 0x5e9c0fd
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x44be8889
mov eax, ecx
xor eax, edx
and eax, ecx
mov dword [rbp + 0xf4], eax
lea rcx, [rbp + 0x1f8]
sub rsp, 0x20
call fcn.1400b4fa0
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp + 0xf4]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xfb], cl
cmp eax, 0x9a12a830
je 0x1401eb3f3
mov dl, byte [rbp + 0xfb]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401eb492
jmp 0x1401edfce
mov rcx, qword [rbp + 0x118]
mov rax, qword [rbp + 0x1f8]
mov qword [rcx], rax
mov rax, qword [rbp + 0x200]
mov qword [rcx + 8], rax
mov eax, dword [rbp + 0x208]
mov dword [rcx + 0x10], eax
sub rsp, 0x20
call fcn.1400acc9c
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0x7b
xor r8b, 0x7b
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400ae0a1
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0x1b
xor r8b, 0x1b
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
movabs rdx, 0x125d6a11eba95d27
movabs rax, 0x125d6a11eba95d37
xor rdx, rax
lea rcx, [rbp + 0x1e8]
sub rsp, 0x20
call fcn.1401ee319
mov rcx, qword [rbp + 0x120]
add rsp, 0x20
mov word [rcx], 0x175
sub rsp, 0x20
call fcn.14006aba0
mov rcx, qword [rbp + 0x160]
add rsp, 0x20
mov qword [rbp + 0xe8], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xf3], al
jne 0x1401eb886
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
add rdx, 8
lea rax, [0x14020840e]
cmp rcx, 0
cmove rdx, rax
lea rcx, [rbp + 0x1e8]
sub rsp, 0x20
call fcn.140007a20
mov rcx, qword [rbp + 0x160]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xf3], al
jne 0x1401eb886
mov rcx, qword [rbp + 0x1f0]
xor edx, edx
sub rsp, 0x20
call fcn.1400ade2d
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x160]
mov qword [rbp + 0xe0], rcx
mov cl, byte [rax]
mov dl, 0x3a
xor dl, 0x3a
mov al, 1
cmp cl, dl
mov byte [rbp + 0xf3], al
jne 0x1401eb886
lea rcx, [rbp + 0x1d8]
mov edx, 0x10
sub rsp, 0x20
call fcn.1401ee319
mov rcx, qword [rbp + 0xe0]
mov r8, qword [rbp + 0x138]
add rsp, 0x20
lea rax, [fcn.14006ee00]
mov qword [rbp + 0x1d8], rax
mov qword [rbp + 0x1e0], 0
mov rax, qword [rbp + 0x1d8]
mov qword [r8], rax
mov rax, qword [rbp + 0x1e0]
mov qword [r8 + 8], rax
mov edx, 0x3222d8b4
xor eax, eax
mov r9d, eax
xor eax, eax
sub rsp, 0x30
mov dword [rsp + 0x20], 0
call fcn.1400acec4
mov rcx, qword [rbp + 0x160]
add rsp, 0x30
mov qword [rbp + 0xd8], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xf3], al
jne 0x1401eb886
mov ecx, dword [0x1401fed10]
mov edx, dword [0x1401fed14]
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, edx
add ecx, eax
add ecx, 0xcc38e03d
mov eax, 0x9653b966
xor eax, 0x69ac4699
xor ecx, eax
mov edx, 0xffffffff
xor edx, 0x60c13c79
mov eax, 0xffffffff
xor eax, 0x3283029d
or ecx, edx
or eax, 0x3283029d
xor ecx, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x3eaa3fcf
or eax, edx
mov edx, 0x62546c94
xor edx, 0x5cfe535b
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xe9a9dfd
xor ecx, 0xf1656202
xor eax, ecx
mov ecx, 0xbd05f73e
xor ecx, 0xc80bca98
cmp eax, ecx
ja 0x1401ee244
mov rcx, qword [rbp + 0x128]
mov eax, dword [0x1401fed18]
and eax, dword [0x1401fed1c]
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0x713d557
xor r8d, 0xc5a3060e
and edx, r8d
mov r8d, 0xffffffff
xor r8d, 0xc2b0d359
and eax, r8d
sub eax, edx
mov r8d, eax
xor r8d, 0xeba78657
xor r8d, 0xffffffff
mov edx, 0x8fc25745
xor edx, 0x6465d112
and edx, r8d
shl edx, 1
sub edx, 0xeba78657
sub eax, edx
sub eax, 0x32ade2ae
mov dword [rbp + 0xc4], eax
mov edx, 0x10
sub rsp, 0x20
call fcn.1401ee319
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
lea rdx, [fcn.14006ee00]
mov qword [rax], rdx
mov qword [rax + 8], 0
mov rdx, qword [rax]
mov qword [rbp + 0x1c8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1d0], rax
mov edx, 0x4b8558c4
lea r8, [rbp + 0x1c8]
xor eax, eax
mov r9d, eax
xor eax, eax
sub rsp, 0x30
mov dword [rsp + 0x20], 0
call fcn.1400acec4
mov rcx, qword [rbp + 0x160]
add rsp, 0x30
mov rdx, rax
mov eax, dword [rbp + 0xc4]
mov qword [rbp + 0xc8], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xd7], cl
cmp eax, 0x48cc6e43
je 0x1401eb737
mov cl, byte [rbp + 0xd7]
mov al, 1
test cl, 1
mov byte [rbp + 0xf3], al
jne 0x1401eb85c
jmp 0x1401eb886
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0xd8]
sub rsp, 0x20
call fcn.1400a6d68
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0xf3], al
mov al, byte [rbp + 0xf3]
mov byte [rbp + 0xc3], al
mov eax, dword [0x1401fed20]
xor edx, edx
div dword [0x1401fed24]
mov ecx, eax
xor ecx, 0xffffffff
mov eax, 0xfa94222e
xor eax, 0x752b44fe
mov edx, 0xbbeebcc8
xor edx, 0x44114337
xor eax, edx
mov edx, 0xffffffff
xor edx, 0xb9f221a4
or ecx, eax
mov eax, 0xba5f51b
xor eax, 0xb257d4bf
or eax, edx
xor ecx, 0xffffffff
and ecx, eax
mov edx, 0xffffffff
xor edx, 0x29580770
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, eax
and ecx, 0x593799ae
xor ecx, 0xffffffff
mov edx, 0x3014c31d
xor edx, 0x69235ab3
add eax, edx
mov edx, 0x3eae3d65
xor edx, 0x3eae3d64
add eax, edx
add eax, ecx
cmp eax, 0x3966bfeb
je 0x1401ee24d
mov eax, dword [0x1401fed28]
mov ecx, 0xdb19c4cd
xor ecx, 0xd40841b
xor eax, ecx
mov edx, dword [0x1401fed2c]
xor edx, 0xd5d8bf82
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xec741fd2
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x14a4a677
xor r8d, 0xf8d0b9a5
mov edx, eax
and edx, r8d
or eax, 0xec741fd2
imul eax, edx
add eax, ecx
mov ecx, 0xe40079a9
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x160]
imul ecx, ecx, 0xc7daaa6e
mov dword [rbp + 0xbc], ecx
mov byte [rax], 0
mov rax, qword [rbp + 0x1e8]
mov qword [rbp + 0x1b8], rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1c0], rax
lea rcx, [rbp + 0x1b8]
sub rsp, 0x20
call fcn.140007ca0
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp + 0xbc]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xfe
xor dl, 0xfe
cmp cl, dl
sete cl
mov byte [rbp + 0xc2], cl
cmp eax, 0x7917a739
je 0x1401ee24d
mov cl, byte [rbp + 0xc2]
mov al, 1
test cl, 1
mov byte [rbp + 0xbb], al
jne 0x1401eba18
jmp 0x1401eba35
mov al, byte [rbp + 0xc3]
mov rcx, qword [rbp + 0x160]
mov byte [rcx], al
cmp al, 0
mov byte [rbp + 0xbb], al
je 0x1401eba4f
mov cl, byte [rbp + 0xbb]
xor eax, eax
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jmp 0x1401edfce
sub rsp, 0x20
call fcn.1400b5660
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400ae620
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1401ee30b
lea rcx, [rbp + 0x270]
mov qword [rbp + 0xb0], rcx
mov edx, 0x40
call fcn.1401ee319
mov rcx, qword [rbp + 0xb0]
add rsp, 0x20
mov dword [rbp + 0x270], 0x40
sub rsp, 0x20
call fcn.1400b212d
add rsp, 0x20
mov rax, qword [rbp + 0x160]
cvtsi2sd xmm0, qword [rbp + 0x278]
movsd xmm1, qword [0x1402083d0]
mulsd xmm0, xmm1
movsd xmm1, qword [0x1402083d8]
ucomisd xmm0, xmm1
setae cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0xba], al
or al, cl
test al, 1
jne 0x1401ebcf0
mov rax, qword [rbp + 0x178]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401c2820
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rax, qword [rbp + 0x170]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401d2c00
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x210]
sub rsp, 0x20
call fcn.14018c2f0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x218]
sub rsp, 0x20
call fcn.14019f700
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401d11a0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x220]
sub rsp, 0x20
call fcn.1401bafc0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x228]
sub rsp, 0x20
call fcn.140169090
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rax, qword [rbp + 0x168]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14017ab60
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 6
xor cl, 6
cmp al, cl
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401a5be0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x56
xor cl, 0x56
cmp al, cl
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x238]
sub rsp, 0x20
call fcn.14018a720
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x8b
xor cl, 0x8b
cmp al, cl
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x240]
sub rsp, 0x20
call fcn.1401aeb20
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xdb
xor cl, 0xdb
cmp al, cl
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.140135070
add rsp, 0x20
jmp 0x1401ee1ae
mov dl, byte [rbp + 0xba]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
jmp 0x1401ebd15
sub rsp, 0x20
call fcn.1400b6b20
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400b64c0
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400a9d00
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400b2db0
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400b6090
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0xbc
xor r8b, 0xbc
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400ae380
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov ecx, dword [0x1401fed30]
mov eax, dword [0x1401fed34]
xor eax, 0xbffe5693
imul ecx, eax
mov eax, 0x448cbcc0
xor eax, 0x9f011010
sub ecx, eax
mov edx, 0x35c34d57
xor edx, 0xca3cb2a8
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x641e743
or ecx, 0x641e743
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x41096824
xor ecx, 0xbef697db
xor eax, ecx
sub eax, 0x5e242e8b
cmp eax, 0x4903d79f
je 0x1401ee256
mov eax, dword [0x1401fed38]
mov ecx, dword [0x1401fed3c]
mov edx, 0x5981c811
xor edx, 0xeb1d7441
xor ecx, edx
imul eax, ecx
imul ecx, eax, 0xa29d62df
mov edx, 0xffffffff
xor edx, 0xa30c178e
mov eax, ecx
xor eax, edx
and eax, ecx
mov r8d, 0x2d1c9de4
xor r8d, 0x5f8afccf
mov ecx, 0x6403c352
xor ecx, 0x9bfc3cad
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xb5a3489c
xor r8d, 0xc73529b7
mov edx, eax
and edx, r8d
mov r8d, 0x770f88ac
xor r8d, 0x599e987
or eax, r8d
imul eax, edx
add eax, ecx
mov dword [rbp + 0xa8], eax
sub rsp, 0x20
call fcn.1400b7960
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp + 0xa8]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xaf], cl
cmp eax, 0xc7275286
ja 0x1401ebe93
mov dl, byte [rbp + 0xaf]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401ebf74
jmp 0x1401edfce
sub rsp, 0x20
call fcn.1400b8fe0
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1401e86f0
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400bb0d0
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1401e5d40
add rsp, 0x20
mov rax, qword [rbp + 0x160]
mov dl, byte [rax]
mov r8b, 0xa9
xor r8b, 0xa9
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400da420
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0xda
xor r8b, 0xda
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400c2250
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov ecx, 0x505ea9cb
xor ecx, 0x505ea9df
sub rsp, 0x20
call fcn.1401ea842
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400fe870
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0xca
xor r8b, 0xca
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x148]
sub rsp, 0x20
call fcn.140135340
mov rcx, qword [rbp + 0x148]
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x1a8], rdx
mov rdx, qword [rcx + 8]
mov qword [rbp + 0x1b0], rdx
mov cl, byte [rcx + 0x10]
mov byte [rbp + 0xa7], cl
cmp byte [rax], 0
jne 0x1401ec1b1
mov al, byte [rbp + 0xa7]
mov cl, 0x81
xor cl, 0x81
cmp al, cl
je 0x1401ec187
mov rax, qword [rbp + 0x1a8]
mov qword [rbp + 0x260], rax
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x268], rax
jmp 0x1401ec1c7
lea rcx, [rbp + 0x250]
sub rsp, 0x20
call fcn.14008cc46
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x36
xor cl, 0x36
cmp al, cl
je 0x1401ec1c7
mov cl, 1
xor eax, eax
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jmp 0x1401edfce
lea rcx, [rbp + 0x198]
sub rsp, 0x20
call fcn.140136080
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov rcx, qword [rbp + 0x198]
mov qword [rbp + 0x90], rcx
mov rcx, qword [rbp + 0x1a0]
mov qword [rbp + 0x98], rcx
cmp byte [rax], 0
jne 0x1401ec7c7
mov rax, qword [rbp + 0x90]
movabs rcx, 0x2b9e41a70ed7b753
movabs rdx, 0x2b9e41a70ed7b753
xor rcx, rdx
cmp rax, rcx
je 0x1401ec2f8
mov eax, dword [0x1401fed40]
xor edx, edx
div dword [0x1401fed44]
or eax, 0x529f53cf
mov ecx, 0x7bf99930
xor ecx, 0xc3fde6f9
xor eax, ecx
mov ecx, 0x4067f665
xor edx, edx
div ecx
mov ecx, 0x9a1c62ac
xor ecx, 0x856c814b
cmp eax, ecx
jae 0x1401ee25f
mov rcx, qword [rbp + 0x150]
mov eax, dword [0x1401fed48]
mov r8d, dword [0x1401fed4c]
mov edx, r8d
and edx, eax
xor edx, 0xffffffff
add eax, r8d
mov r8d, 0xd680040e
xor r8d, 0xd680040f
add eax, r8d
add eax, edx
and eax, 0x1b07415b
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x11fe0379
add eax, edx
mov edx, eax
and edx, 0x313068bc
mov r8d, 0x837a5b37
xor r8d, 0x7c85a4c8
xor edx, r8d
add eax, 0x313068bc
add eax, 1
add eax, edx
add rcx, 8
mov qword [rbp + 0x88], rcx
cmp eax, 0xbfde34fc
je 0x1401ee25f
mov eax, 1
mov qword [rbp + 0x80], rax
jmp 0x1401ec3ac
movabs rcx, 0x826d231d74f69b08
movabs rax, 0x826d231d74f69b48
xor rcx, rax
movabs rdx, 0xe805002b869c4976
movabs rax, 0xe805002b869c497e
xor rdx, rax
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402085d0]
mov qword [rcx], rax
lea rax, [0x1402083e0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1402083f0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1402083f8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x77688f7f4b4373fe
movabs rdx, 0x88977080e2c8e577
xor rax, rdx
lea rdx, [0x1402083e0]
lea r8, [0x140208400]
lea r9, [0x140208404]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140016090
add rsp, 0x30
jmp 0x1401ec7c7
mov rcx, qword [rbp + 0x150]
mov rax, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x98]
mov r8, qword [rbp + 0x90]
mov r9, qword [rbp + 0x80]
mov qword [rbp + 0x78], r9
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.1401392e0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401ec7c7
sub rsp, 0x20
call fcn.1401ee30b
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x78]
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [rbp + 0x68], rcx
mov cx, word [rcx + 0x12]
mov dx, 0x3e2
xor dx, 0x3e3
cmp cx, dx
mov qword [rbp + 0x70], rax
jle 0x1401ec7ac
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x68]
mov rcx, qword [rcx + 0x18]
cmp dword [rcx + 8], 0xd4054986
mov qword [rbp + 0x70], rax
jne 0x1401ec7ac
mov rax, qword [rbp + 0x160]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401ee2b0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x60], rcx
cmp rax, 9
jle 0x1401ec6af
mov rcx, qword [rbp + 0x60]
sub rsp, 0x20
call fcn.14009f0c0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x52
xor cl, 0x52
cmp al, cl
jne 0x1401ec7c7
mov rax, qword [rbp + 0x98]
cmp rax, 0
je 0x1401ec4fc
mov rax, qword [rbp + 0x98]
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 0x1401ec4fc
mov rcx, qword [rbp + 0x98]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov rax, qword [rbp + 0x178]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401c2820
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x62
xor cl, 0x62
cmp al, cl
jne 0x1401ee1ae
mov rax, qword [rbp + 0x170]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401d2c00
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x210]
sub rsp, 0x20
call fcn.14018c2f0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x218]
sub rsp, 0x20
call fcn.14019f700
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401d11a0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x220]
sub rsp, 0x20
call fcn.1401bafc0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x228]
sub rsp, 0x20
call fcn.140169090
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rax, qword [rbp + 0x168]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14017ab60
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1401a5be0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x238]
sub rsp, 0x20
call fcn.14018a720
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x240]
sub rsp, 0x20
call fcn.1401aeb20
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.140135070
call fcn.1401ee2e5
add rsp, 0x20
jmp 0x1401ee1ae
mov rdx, qword [rbp + 0x78]
mov rcx, rdx
add rcx, 1
mov qword [rbp + 0x58], rcx
xor rdx, 0xffffffffffffffff
movabs rax, 0xdc530a25383a2c90
movabs r8, 0x23acf5dac7c5d36f
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x972048dcddc571ea
movabs rdx, 0x972048dcddc571ea
xor rcx, rdx
cmp rax, rcx
jge 0x1401ec71f
sub rsp, 0x20
call fcn.1400091c0
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov qword [rbp + 0x50], rax
jmp 0x1401ec74b
movabs rcx, 0x71ad745f519c93d
movabs rax, 0x71ad745f519dad8
xor rcx, rax
sub rsp, 0x20
call fcn.1401e8da0
mov rax, qword [rbp + 0x58]
add rsp, 0x20
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x160]
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x50]
mov qword [rbp + 0x40], rdx
mov dl, byte [rax]
mov byte [rbp + 0x4f], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14009f0c0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ec7c7
mov al, byte [rbp + 0x4f]
mov rcx, qword [rbp + 0x160]
mov byte [rcx], al
cmp al, 0
jne 0x1401ec7c7
sub rsp, 0x20
call fcn.1401ee2e5
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov qword [rbp + 0x70], rax
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp + 0x70]
cmp byte [rcx], 0
mov qword [rbp + 0x80], rax
je 0x1401ec3ac
mov rax, qword [rbp + 0x98]
cmp rax, 0
je 0x1401ec8e5
mov rcx, qword [rbp + 0x98]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401ec8e5
mov ecx, dword [0x1401fed50]
mov eax, 0x7f593640
xor eax, 0x88c6069
xor ecx, eax
mov eax, dword [0x1401fed54]
sub ecx, 0x3cb994be
add ecx, eax
mov eax, 0xf990095
xor eax, 0x3320942b
add ecx, eax
mov eax, ecx
and eax, 0x3dc31c9
xor ecx, 0x3dc31c9
or eax, ecx
xor eax, 0x24d1d521
xor eax, 0xaa5d3b2b
cmp eax, 0x4381cc58
je 0x1401ee268
mov rcx, qword [rbp + 0x98]
mov edx, dword [0x1401fed58]
imul edx, dword [0x1401fed5c]
mov r8d, edx
xor r8d, 0xffffffff
and r8d, 0x43da8665
mov r9d, 0x420925d7
xor r9d, 0x1d3a3b2
mov eax, 0x568c4e18
xor eax, 0xa973b1e7
xor r9d, eax
mov eax, edx
and eax, r9d
imul eax, r8d
mov r8d, edx
and r8d, 0x43da8665
or edx, 0x43da8665
imul edx, r8d
add edx, eax
xor eax, eax
sub eax, 0xce647a6d
sub edx, eax
mov eax, edx
or eax, 0x260a56e7
xor eax, 0xffffffff
or edx, 0x260a56e7
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov dword [rbp + 0x3c], eax
sub rsp, 0x20
call fcn.140011305
mov eax, dword [rbp + 0x3c]
add rsp, 0x20
cmp eax, 0xbe85afe1
jae 0x1401ee268
jmp 0x1401ec8e5
mov rax, qword [rbp + 0x160]
mov dl, byte [rax]
mov r8b, 0xa4
xor r8b, 0xa4
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400a0c40
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov dl, byte [rax]
mov r8b, 0xbf
xor r8b, 0xbf
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [0x1402088d0]
mov rax, qword [rax]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x30], rax
cmp rax, 0
je 0x1401ec994
mov rcx, qword [rbp + 0x30]
sub rsp, 0x20
call fcn.14013b4b0
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov edx, 4
sub rsp, 0x20
mov rcx, rdx
call fcn.140016330
add rsp, 0x20
mov qword [rbp + 0x248], rax
movabs rcx, 0x949fa44205ac62ae
movabs rax, 0x949fa44205ac6286
xor rcx, rax
movabs rdx, 0xd85cb31c1ce3d8b6
movabs rax, 0xd85cb31c1ce3d8be
xor rdx, rax
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp + 0x28], rax
mov rcx, qword [0x1402085c8]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x28]
mov qword [rax + 0x10], rcx
mov ecx, 0xa00000
sub rsp, 0x20
call fcn.14012c649
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x28]
mov qword [rax + 0x18], rcx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 0x28]
mov qword [rbp + 0x240], rax
movabs rcx, 0xc6e5f62e57909b70
movabs rax, 0xc6e5f62e57909b58
xor rcx, rax
movabs rdx, 0x4ca4903285a0f250
movabs rax, 0x4ca4903285a0f258
xor rdx, rax
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp + 0x20], rax
mov rcx, qword [0x140208588]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x20]
mov qword [rax + 0x10], rcx
mov ecx, 0x6400000
sub rsp, 0x20
call fcn.14012c649
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x20]
mov qword [rax + 0x18], rcx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x238], rax
mov ecx, 0x28
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp + 0x18], rax
mov rcx, qword [0x1402085d8]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x18]
mov qword [rax + 0x10], rcx
mov ecx, 0x500000
sub rsp, 0x20
call fcn.14012c649
mov rcx, qword [rbp + 0x18]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x160]
mov qword [rcx + 0x18], rdx
mov dl, byte [rax]
mov r8b, 0xe0
xor r8b, 0xe0
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 0x18]
mov qword [rbp + 0x230], rax
mov ecx, 0x28
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp + 0x10], rax
mov rcx, qword [0x140208600]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x10]
mov qword [rax + 0x10], rcx
mov ecx, 0x6400000
sub rsp, 0x20
call fcn.14012c649
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x10]
mov qword [rax + 0x18], rcx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x10]
mov qword [rax], rcx
mov ecx, 0x28
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp + 8], rax
mov rcx, qword [0x140208648]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 8]
mov qword [rax + 0x10], rcx
mov ecx, 0x6400000
sub rsp, 0x20
call fcn.14012c649
mov rcx, qword [rbp + 8]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x160]
mov qword [rcx + 0x18], rdx
mov dl, byte [rax]
mov r8b, 0x4e
xor r8b, 0x4e
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 8]
mov qword [rbp + 0x228], rax
mov ecx, 0x28
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp], rax
mov rcx, qword [0x140208628]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp]
mov qword [rax + 0x10], rcx
movabs rcx, 0xe83d581bea8afac8
movabs rax, 0xe83d581beadafac8
xor rcx, rax
sub rsp, 0x20
call fcn.14012c649
mov rcx, qword [rbp]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x160]
mov qword [rcx + 0x18], rdx
mov dl, byte [rax]
mov r8b, 0xcc
xor r8b, 0xcc
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp]
mov qword [rbp + 0x220], rax
movabs rcx, 0xccb548f05cabd016
movabs rax, 0xccb548f05cabd03e
xor rcx, rax
movabs rdx, 0xf0cf764a0c5cb19a
movabs rax, 0xf0cf764a0c5cb192
xor rdx, rax
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp - 8], rax
mov rcx, qword [0x1402085e0]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 8]
mov qword [rax + 0x10], rcx
mov ecx, 0x500000
sub rsp, 0x20
call fcn.14012c649
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 8]
mov qword [rax + 0x18], rcx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov ecx, 0x28
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp - 0x10], rax
mov rcx, qword [0x1402085b8]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x10]
mov qword [rax + 0x10], rcx
mov ecx, 0xa00000
sub rsp, 0x20
call fcn.14012c649
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x160]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp - 8]
mov qword [rdx + 0x18], r8
mov dl, byte [rcx]
mov r8b, 0x17
xor r8b, 0x17
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov ecx, dword [0x1401fed60]
or ecx, dword [0x1401fed64]
mov edx, 0x85831aa7
xor edx, 0x7a7ce558
mov eax, ecx
xor eax, edx
and eax, 0x799bf9c4
mov edx, 0x183cee73
xor edx, 0x61a717b7
mov r8d, 0x929d7dd
xor r8d, 0xf6d62822
xor edx, r8d
and ecx, edx
or eax, ecx
sub eax, 0xa170692f
mov edx, eax
xor edx, 0xffffffff
and edx, 0x474ab789
mov r8d, 0xffffffff
xor r8d, 0x474ab789
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x2921690
xor r8d, 0x45d8a119
mov edx, eax
and edx, r8d
or eax, 0x474ab789
imul eax, edx
add eax, ecx
cmp eax, 0x46953545
jbe 0x1401ee271
mov eax, dword [0x1401fed68]
imul eax, dword [0x1401fed6c]
mov ecx, 0xab70d9b7
xor edx, edx
div ecx
mov r9d, eax
mov rax, qword [rbp - 0x10]
mov edx, r9d
xor edx, 0xffffffff
mov ecx, 0x8bfae58a
xor ecx, 0x9e78507a
and ecx, edx
mov r8d, 0xad96857a
xor r8d, 0xb814308a
mov edx, 0x8a6357a0
xor edx, 0x759ca85f
xor r8d, edx
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0xcf48962e
and edx, 0x1582b5f0
and r8d, 0xcf48962e
or ecx, r9d
or edx, r8d
xor ecx, edx
mov edx, 0xd00e5802
xor edx, 0x474fbe98
add ecx, edx
mov dword [rbp - 0x18], ecx
mov ecx, 0x9957213b
xor ecx, 0x2c8b3f73
mov dword [rbp - 0x1c], ecx
mov qword [rbp + 0x218], rax
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp - 0x28], rax
mov rcx, qword [0x140208550]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x28]
mov qword [rax + 0x10], rcx
mov ecx, 0x200000
sub rsp, 0x20
call fcn.14012c649
mov r8, qword [rbp - 0x28]
mov rdx, qword [rbp + 0x160]
mov ecx, dword [rbp - 0x1c]
add rsp, 0x20
mov r9, rax
mov eax, dword [rbp - 0x18]
mov qword [r8 + 0x18], r9
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x11], dl
cmp eax, ecx
ja 0x1401ee271
mov rax, qword [rbp - 8]
mov dl, byte [rbp - 0x11]
mov cl, 1
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401ed06a
jmp 0x1401edfce
mov rax, qword [rbp - 0x28]
mov qword [rbp + 0x210], rax
movabs rcx, 0xb021334e122e69b0
movabs rax, 0xb021334e122e69f8
xor rcx, rax
movabs rdx, 0x874f27822209a486
movabs rax, 0x874f27822209a48e
xor rdx, rax
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp - 0x30], rax
mov rcx, qword [0x140208568]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b590
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x30]
mov qword [rax + 0x10], rcx
mov ecx, 0x1400000
sub rsp, 0x20
call fcn.14012c649
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp - 8]
mov qword [rcx + 0x18], r8
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 0x170]
mov rcx, qword [rbp - 0x30]
mov qword [rax], rcx
mov ecx, 0x28
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov qword [rbp - 0x38], rax
mov rcx, qword [0x140208638]
mov qword [rax], rcx
mov rax, qword [rbp + 0x248]
mov qword [rbp - 0x40], rax
lea rcx, [rbp + 0x248]
sub rsp, 0x20
call fcn.14013b826
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov qword [rax + 0x10], rcx
movabs rcx, 0x71d494469c645a52
movabs rax, 0x71d494469a245a52
xor rcx, rax
sub rsp, 0x20
call fcn.14012c649
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp - 8]
mov qword [rcx + 0x18], r8
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x178]
mov rax, qword [rbp - 0x38]
mov qword [rcx], rax
sub rsp, 0x20
call fcn.1401d0920
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x19
xor r8b, 0x19
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 0x178]
mov rcx, qword [rax]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.14014f8b0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400a0c40
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
lea rcx, [rbp + 0x228]
sub rsp, 0x20
call fcn.140178bf0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x228]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x168]
sub rsp, 0x20
call fcn.140189810
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 0x168]
mov rcx, qword [rax]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0xce
xor r8b, 0xce
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.14014f8b0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400a0c40
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0xc5
xor r8b, 0xc5
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
lea rcx, [rbp + 0x210]
sub rsp, 0x20
call fcn.14019ec90
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x210]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
lea rcx, [rbp + 0x220]
sub rsp, 0x20
call fcn.1401c1d90
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x220]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x4d
xor r8b, 0x4d
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
lea rcx, [rbp + 0x218]
sub rsp, 0x20
call fcn.1401a2c40
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x218]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x82
xor r8b, 0x82
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x170]
sub rsp, 0x20
call fcn.1401e5750
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rax, qword [rbp + 0x170]
mov rcx, qword [rax]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.14014f8b0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400a0c40
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x36
xor r8b, 0x36
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
lea rcx, [rbp + 0x240]
sub rsp, 0x20
call fcn.1401ba1a0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov eax, dword [0x1401fed70]
sub eax, dword [0x1401fed74]
or eax, 0xa9e30f0b
imul eax, eax, 0x30c349f4
mov ecx, 0xb1cf43fc
xor ecx, 0x48b5ee4b
sub eax, ecx
cmp eax, 0x6283208d
je 0x1401ee27a
mov eax, dword [0x1401fed78]
xor eax, 0x43938948
imul eax, dword [0x1401fed7c]
xor ecx, ecx
sub ecx, 0x1c2fb001
sub eax, ecx
sub eax, 0xeb288fa0
add eax, 0xd7ce92f4
mov dword [rbp - 0x48], eax
mov rcx, qword [rbp + 0x240]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp - 0x48]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x41], cl
cmp eax, 0x35ec4265
je 0x1401ee27a
mov rax, qword [rbp - 8]
mov dl, byte [rbp - 0x41]
mov cl, 1
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401ed73a
jmp 0x1401edfce
mov eax, dword [0x1401fed80]
mov edx, dword [0x1401fed84]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
imul ecx, eax, 0x4cbbe056
mov eax, 0x61d72909
xor eax, 0x9e28d6f6
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0x7932c13e
mov edx, 0x5fccbdf4
xor edx, 0x741279e4
mov r8d, 0x85f71c0b
xor r8d, 0x7a08e3f4
xor edx, r8d
or ecx, eax
mov eax, 0xcaedda0d
xor eax, 0xe1331e1d
or eax, edx
xor ecx, 0xffffffff
and ecx, eax
mov edx, 0xd39e1a4e
xor edx, 0xcf052590
mov eax, 0x556947ef
xor eax, 0xaa96b810
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0x7a2edd52
jae 0x1401ee283
mov ecx, dword [0x1401fed88]
mov eax, dword [0x1401fed8c]
sub ecx, 0xe538f1a1
sub ecx, eax
add ecx, 0xe538f1a1
mov eax, ecx
and eax, 0xef9676de
mov edx, 0x35463ffc
xor edx, 0xdad04922
xor ecx, edx
or eax, ecx
and eax, 0x539cafd8
mov ecx, 0x7ec278c
xor ecx, 0xcbe540df
mov edx, 0xb1e7acba
xor edx, 0x4e185345
xor ecx, edx
mov edx, 0xde904363
xor edx, 0xde904363
mov r8d, 0x68609972
xor r8d, 0x68609973
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov dword [rbp - 0x50], eax
sub rsp, 0x20
call fcn.14014f8b0
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp - 0x50]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x49], cl
cmp eax, 0x6df72c6c
ja 0x1401ed7c6
mov rax, qword [rbp - 8]
mov dl, byte [rbp - 0x49]
mov cl, 1
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401ed884
jmp 0x1401edfce
sub rsp, 0x20
call fcn.1400a0c40
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
lea rcx, [rbp + 0x238]
sub rsp, 0x20
call fcn.14018ae30
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x42
xor r8b, 0x42
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov rcx, qword [rbp + 0x238]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.14014f8b0
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400a0c40
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
lea rcx, [rbp + 0x230]
sub rsp, 0x20
call fcn.1401ab320
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov r11d, dword [0x1401fed90]
mov r10d, dword [0x1401fed94]
mov ecx, r11d
xor ecx, 0xffffffff
mov eax, 0x6cc83f99
xor eax, 0x9337c066
mov r8d, r10d
xor r8d, eax
mov edx, 0xffffffff
xor edx, 0xc51a410c
mov eax, ecx
and eax, 0xc51a410c
and r11d, edx
mov r9d, r8d
and r9d, 0xc51a410c
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xc51a410c
and ecx, edx
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x192eecda
mov edx, 0xffffffff
xor edx, 0x192eecda
and eax, edx
sub eax, ecx
mov edx, 0xed8bd4c5
xor edx, 0x12742b3a
mov ecx, eax
xor ecx, edx
mov edx, 0x6e372ab4
xor edx, 0x5aab8d60
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x349ca7d4
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x349ca7d4
or eax, 0x349ca7d4
imul eax, edx
add eax, ecx
sub eax, 0xf3b78b5b
cmp eax, 0x7913f889
je 0x1401ee28c
mov ecx, dword [0x1401fed98]
xor ecx, 0xee701839
mov edx, dword [0x1401fed9c]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, edx
xor ecx, 0xffffffff
mov r8d, 0xd48d9168
xor r8d, 0x2b726e97
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x2b324e63
xor edx, edx
div ecx
mov ecx, 0x8de34b70
xor edx, edx
div ecx
imul eax, eax, 0x4a2f43ce
mov dword [rbp - 0x58], eax
mov rcx, qword [rbp + 0x230]
add rcx, 0x18
sub rsp, 0x20
call fcn.140132ef0
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp - 0x58]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x51], cl
cmp eax, 0xc291fe34
je 0x1401ee28c
mov rax, qword [rbp - 8]
mov dl, byte [rbp - 0x51]
mov cl, 1
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edb42
jmp 0x1401edfce
sub rsp, 0x20
call fcn.14014f8b0
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x73
xor r8b, 0x73
mov cl, 1
cmp dl, r8b
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
sub rsp, 0x20
call fcn.1400a0c40
mov rdx, qword [rbp + 0x160]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edfce
mov eax, dword [0x1401feda0]
sub eax, dword [0x1401feda4]
mov ecx, 0xc4bc7e7b
xor edx, edx
div ecx
mov ecx, 0x4efff749
xor ecx, 0xff237dcf
and ecx, eax
xor ecx, 0xffffffff
add eax, 0xb1dc8a86
add eax, 1
add eax, ecx
imul eax, eax, 0xba754bf9
mov ecx, 0xb7fdd15a
xor ecx, 0xa47e9d37
cmp eax, ecx
jbe 0x1401ee295
mov eax, dword [0x1401feda8]
xor edx, edx
div dword [0x1401fedac]
mov ecx, 0xa7f4d7c0
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x855b631e
xor edx, 0x718740ea
mov r8d, 0x4f5d96e6
xor r8d, 0xbb81b512
or edx, r8d
xor edx, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0x7c828621
xor r8d, 0x837d79de
xor edx, r8d
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf4dc23f4
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
and eax, 0xd6585b79
mov dword [rbp - 0x60], eax
sub rsp, 0x20
call fcn.140166160
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp - 0x60]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0xf6ab7ad9
jae 0x1401edbf3
mov rax, qword [rbp - 8]
mov dl, byte [rbp - 0x59]
mov cl, 1
test dl, 1
mov byte [rbp + 0x18f], cl
mov qword [rbp + 0x190], rax
jne 0x1401edcb5
jmp 0x1401edfce
mov rax, qword [rbp + 0x178]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401c2820
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xd7
xor cl, 0xd7
cmp al, cl
jne 0x1401ee1ae
mov rax, qword [rbp + 0x170]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401d2c00
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x210]
sub rsp, 0x20
call fcn.14018c2f0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x218]
sub rsp, 0x20
call fcn.14019f700
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x83
xor cl, 0x83
cmp al, cl
jne 0x1401ee1ae
mov rcx, qword [rbp - 8]
sub rsp, 0x20
call fcn.1401d11a0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x220]
sub rsp, 0x20
call fcn.1401bafc0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov eax, dword [0x1401fedb0]
xor eax, 0x89202513
mov ecx, dword [0x1401fedb4]
mov edx, 0x330db07f
xor edx, 0xab9a5b92
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x556d5aa1
or eax, ecx
mov ecx, 0xe141de5f
xor ecx, 0xb42c84fe
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xbb74bfe3
xor ecx, 0xc17f306e
mov edx, 0x56b29f65
xor edx, 0xa94d609a
xor ecx, edx
add eax, ecx
add eax, 1
mov ecx, eax
xor ecx, 0x2ab33a2f
mov edx, 0xbe995e7e
xor edx, 0x4166a181
xor ecx, edx
or eax, 0x2ab33a2f
and eax, ecx
and eax, 0x3ee102e5
cmp eax, 0x2fe692b
je 0x1401ee29e
mov eax, dword [0x1401fedb8]
xor edx, edx
div dword [0x1401fedbc]
mov ecx, 0xbeb3229
xor edx, edx
div ecx
mov ecx, 0x16023d98
xor edx, edx
div ecx
xor eax, 0x13617f28
mov dword [rbp - 0x68], eax
mov rcx, qword [rbp + 0x228]
sub rsp, 0x20
call fcn.140169090
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0x51454b8a
je 0x1401ee29e
mov al, byte [rbp - 0x61]
test al, 1
jne 0x1401ede92
jmp 0x1401ee1ae
mov rax, qword [rbp + 0x168]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14017ab60
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x230]
sub rsp, 0x20
call fcn.1401a5be0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x4a
xor cl, 0x4a
cmp al, cl
jne 0x1401ee1ae
mov eax, dword [0x1401fedc0]
xor eax, 0xb5c18cd6
sub eax, dword [0x1401fedc4]
or eax, 0x1bc0ae7c
add eax, 0x903dac0b
sub eax, 0xb8a644e9
mov ecx, 0x34c8db7
xor ecx, 0xa6c21edc
cmp eax, ecx
je 0x1401ee2a7
mov eax, dword [0x1401fedc8]
mov edx, dword [0x1401fedcc]
xor ecx, ecx
sub ecx, edx
add eax, ecx
and eax, 0x596fbe18
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x6d63fef
mov edx, 0xffffffff
xor edx, 0x6d63fef
and eax, edx
sub eax, ecx
or eax, 0x7b0c05d
mov dword [rbp - 0x70], eax
mov rcx, qword [rbp + 0x238]
sub rsp, 0x20
call fcn.14018a720
mov rcx, qword [rbp + 0x160]
mov eax, dword [rbp - 0x70]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0x338d68a4
ja 0x1401edf16
mov al, byte [rbp - 0x69]
test al, 1
jne 0x1401edf91
jmp 0x1401ee1ae
mov rcx, qword [rbp + 0x240]
sub rsp, 0x20
call fcn.1401aeb20
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.140135070
add rsp, 0x20
jmp 0x1401ee1ae
mov rcx, qword [rbp + 0x160]
mov rax, qword [rbp + 0x178]
mov dl, byte [rbp + 0x18f]
mov r8, qword [rbp + 0x190]
mov qword [rbp - 0x80], r8
mov byte [rbp - 0x71], dl
mov dl, 0x29
xor dl, 0x29
mov byte [rcx], dl
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401c2820
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rax, qword [rbp + 0x170]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401d2c00
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x210]
sub rsp, 0x20
call fcn.14018c2f0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x218]
sub rsp, 0x20
call fcn.14019f700
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x11
xor cl, 0x11
cmp al, cl
jne 0x1401ee1ae
mov rcx, qword [rbp - 0x80]
sub rsp, 0x20
call fcn.1401d11a0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x220]
sub rsp, 0x20
call fcn.1401bafc0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x79
xor cl, 0x79
cmp al, cl
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x228]
sub rsp, 0x20
call fcn.140169090
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rax, qword [rbp + 0x168]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14017ab60
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x230]
sub rsp, 0x20
call fcn.1401a5be0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x238]
sub rsp, 0x20
call fcn.14018a720
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x240]
sub rsp, 0x20
call fcn.1401aeb20
mov rax, qword [rbp + 0x160]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401ee1ae
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.140135070
mov cl, byte [rbp - 0x71]
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov byte [rax], cl
mov rax, qword [rbp + 0x158]
cmp byte [rax], 0
je 0x1401ee204
mov rax, qword [rbp + 0x158]
mov cl, 0xee
xor cl, 0xee
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401ee2b0
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140036a5b
call fcn.1401ee2e5
mov rax, qword [rbp + 0x158]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xe6
xor cl, 0xe6
cmp al, cl
jne 0x1401ee217
invalid
xor ecx, ecx
mov rax, qword [0x1402084f0]
sub rsp, 0x20
call qword [rax]
add rsp, 0x20
lea rsp, [rbp + 0x2b0]
pop rbp
ret
mov esp, 0xe960a9d7
jo 0x1401ee1f3
invalid
mov byte [rcx - 0x53164237], dl
invalid
mov eax, 0xe9352e8b
sar r15b, 1
call [rsi - 0x1685194b]
sahf
mov ch, 0xe6
jp 0x1401ee229
scasd eax, dword [rdi]
sar edi, 1
jmp [rbp + 0x21]
insd dword [rdi], dx
and dword [rax], esp
nop
jmp 0x1401eb737
xor bl, byte [rax - 0x3816e91b]
invalid
stc
adc edi, ebx
imul ecx
xor al, 0xdc
invalid
scasb al, byte [rdi]
adc al, 0x2e
ret 0x2e9
jp 0x1401ee2c3
cld
invalid
mov esi, 0xe9544777
mov edx, 0x44ffffec
rcr byte [rdi - 0x3b], 1
rcr byte [rdi - 0x3b], 1
jmp 0x1401ed6b7
mov ebp, ss
and dword [rsi - 0xac517], edi
inc dword [rcx - 0x16e32efb]
std
idiv edi
invalid
add dword [0x13e07ff67], 0x78fffff7
invalid
js 0x1401ee2c5
invalid
shr dword [rbp - 0x7e162b0a], cl
sti
invalid
movabs dword [0xfffffc66e95416a4], eax
mov edx, dword [rax + 0x10]
adc byte [rcx - 0x50], al
add dword [rcx - 0x80], eax
lock add dword [rcx - 0x80], eax
loopne 0x1401ee2d2
lea ecx, [rsp + 0x20]