Function at 0x1401c2280
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x438
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x160], r8
mov qword [rbp + 0x168], rdx
mov qword [rbp + 0x170], rcx
mov eax, 0x10
mov qword [rbp + 0x1d0], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x178], rax
mov eax, 0x20
mov qword [rbp + 0x1b8], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x180], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x188], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x190], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x198], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1a0], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1a8], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1b0], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1b8]
mov rcx, rsp
mov qword [rbp + 0x1c0], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1c8], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x1d0]
mov rcx, rsp
mov qword [rbp + 0x1d8], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1e0], rax
sub rsp, 0x20
call fcn.1401cfb6b
add rsp, 0x20
mov qword [rbp + 0x1f0], rax
add rax, 0x60
mov qword [rbp + 0x1e8], rax
mov word [rbp + 0x3b6], 0x26c
lea rcx, [rbp + 0x3b6]
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1f8], rcx
cmp byte [rax + 0x60], 0
jne 0x1401c43d9
mov rcx, qword [rbp + 0x178]
mov edx, 0x10
sub rsp, 0x20
call fcn.1401beec5
mov rax, qword [rbp + 0x1f8]
mov rcx, qword [rbp + 0x178]
mov rdx, qword [rbp + 0x160]
add rsp, 0x20
mov r8, qword [rax]
mov qword [rbp + 0x358], r8
mov rax, qword [rax + 8]
mov qword [rbp + 0x360], rax
mov r9d, 0x4d21ee32
xor r9d, 0x4d23ee2b
lea r8, [rbp + 0x358]
sub rsp, 0x20
call fcn.1400d01e0
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c43d9
mov rax, qword [rbp + 0x178]
mov rcx, qword [rax]
mov qword [rbp + 0x158], rcx
cmp byte [rax + 8], 0
jne 0x1401c24e4
sub rsp, 0x20
call fcn.1400860e4
add rsp, 0x20
mov rax, qword [rbp + 0x1e8]
cmp byte [rax], 0
je 0x1401c4527
jmp 0x1401c43d9
mov eax, dword [0x1401e6480]
xor edx, edx
div dword [0x1401e6484]
sub eax, 0x3bb70b39
mov edx, eax
xor edx, 0xffffffff
and edx, 0xb75d6ad9
mov r8d, 0xa622d18e
xor r8d, 0x117fbb57
mov ecx, 0x5d9cb790
xor ecx, 0xa263486f
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xb75d6ad9
or eax, 0xb75d6ad9
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xabacd99
shl ecx, 1
add eax, 0xabacd99
sub eax, ecx
cmp eax, 0x28394998
jbe 0x1401c4531
mov eax, dword [str.q_9_]
xor eax, 0x7b10e542
mov edx, dword [0x1401e648c]
xor ecx, ecx
sub ecx, edx
add eax, ecx
sub eax, 0xeef134d2
or eax, 0x59c86d1a
sub eax, 0xac095691
add eax, 0xd5299def
add eax, 0xac095691
mov dword [rbp + 0x150], eax
lea rcx, [rbp + 0x398]
mov edx, 0x18
sub rsp, 0x20
call fcn.1401beec5
add rsp, 0x20
mov byte [rbp + 0x398], 0
lea rax, [rbp + 0x398]
add rax, 8
mov qword [rbp + 0x148], rax
lea rcx, [rbp + 0x348]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.14003379c
mov rdx, qword [rbp + 0x158]
add rsp, 0x20
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x3a0], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x3a8], rax
lea rcx, [rbp + 0x398]
mov r8d, 7
sub rsp, 0x20
call fcn.1401bfaf0
mov rcx, qword [rbp + 0x1e8]
mov eax, dword [rbp + 0x150]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x157], cl
cmp eax, 0xa0622481
je 0x1401c2554
mov al, byte [rbp + 0x157]
test al, 1
jne 0x1401c2676
jmp 0x1401c2648
mov rax, qword [rbp + 0x1e8]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bf6d5
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
mov byte [rbp + 0x147], al
jne 0x1401c4266
mov ecx, 0x54d
sub rsp, 0x20
call fcn.1400676f0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1e8]
mov qword [rbp + 0x138], rcx
cmp byte [rax], 0
jne 0x1401c2753
mov rax, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x148]
cmp rax, qword [rcx]
jge 0x1401c28b8
mov rax, qword [rbp + 0x180]
mov rcx, qword [rbp + 0x170]
mov rcx, qword [rcx]
mov rcx, qword [rcx + 0x28]
mov byte [rcx], 1
mov rcx, qword [rbp + 0x398]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x3a0]
mov qword [rax + 8], rcx
mov rcx, qword [rbp + 0x3a8]
mov qword [rax + 0x10], rcx
lea rcx, [rbp + 0x398]
sub rsp, 0x20
call fcn.1401bc2ed
mov rcx, qword [rbp + 0x168]
mov rax, qword [rbp + 0x180]
add rsp, 0x20
mov rcx, qword [rcx]
add rcx, 0x10
mov rdx, qword [rax]
mov qword [rbp + 0x330], rdx
mov rdx, qword [rax + 8]
mov qword [rbp + 0x338], rdx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x340], rax
lea rdx, [rbp + 0x330]
sub rsp, 0x20
call fcn.140034280
add rsp, 0x20
jmp 0x1401c28b8
mov ecx, dword [0x1401e6490]
xor ecx, 0x3dc1f4bc
imul ecx, dword [0x1401e6494]
mov eax, 0x7164a184
xor eax, 0x50560e74
add ecx, eax
add ecx, 0xd5f6f4d5
sub ecx, 0x2132aff0
mov eax, ecx
and eax, 0x5186a9d2
or ecx, 0x5186a9d2
add eax, ecx
mov r8d, 0x97a18360
xor r8d, 0x38bda6a
mov ecx, 0x5de696f4
xor ecx, 0xa219690b
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x227e100d
xor r8d, 0xb6544907
mov edx, eax
and edx, r8d
or eax, 0x942a590a
imul eax, edx
add eax, ecx
cmp eax, 0x93ff28aa
jae 0x1401c453a
mov ecx, dword [0x1401e6498]
mov edx, dword [0x1401e649c]
mov r8d, 0x4c681ff
xor r8d, 0xfb397e00
mov eax, ecx
xor eax, r8d
mov r8d, ecx
xor r8d, 0xffffffff
and eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
mov r9d, edx
xor r9d, 0xffffffff
and r8d, r9d
or eax, r8d
xor eax, 0xffffffff
mov r8d, 0x602db83a
xor r8d, 0x9fd247c5
xor ecx, r8d
mov r8d, 0x40038506
xor r8d, 0xbffc7af9
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x5b80dda1
xor ecx, 0xa47f225e
xor eax, ecx
imul eax, eax, 0x76ba4de9
mov ecx, 0xffffffff
xor ecx, 0xf8218014
mov edx, 0xd724f973
xor edx, 0xd724f973
mov r8d, 0x86f95e88
xor r8d, 0x86f95e89
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0x116e2c0f
xor ecx, 0x7dc24a26
mov edx, 0x125684a1
xor edx, 0xeda97b5e
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
cmp eax, 0x86c65e6c
jae 0x1401c27df
mov al, 1
mov byte [rbp + 0x147], al
jmp 0x1401c4266
mov ecx, dword [0x1401e64a0]
mov r8d, dword [0x1401e64a4]
xor r8d, 0x29fb7c22
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 eax, ecx
or eax, 0x9f975ba8
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x9f975ba8
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x55f07ac6
xor edx, 0xaa0f8539
xor ecx, edx
and eax, ecx
mov ecx, 0xb0ce220b
xor ecx, 0xb0ce220b
mov edx, 0x4e63a5e5
xor edx, 0x41eedd3e
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, 0xe26d4351
sub eax, ecx
cmp eax, 0x335c24b2
jbe 0x1401c4543
mov eax, dword [0x1401e64a8]
mov ecx, dword [0x1401e64ac]
mov edx, 0x6a91758c
xor edx, 0xbb485714
add eax, edx
add eax, ecx
sub eax, 0xd1d92298
mov ecx, 0xa97f4880
xor ecx, 0xdbdafdd6
or eax, ecx
mov ecx, 0x2771ccb4
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x99f2161a
mov r8d, 0xffffffff
xor r8d, 0x99f2161a
and edx, r8d
or eax, edx
xor eax, 0xffffffff
mov edx, 0x582f5920
xor edx, 0xc1dd4f3a
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xbd277e26
xor edx, 0x42d881d9
xor ecx, edx
and eax, ecx
mov dword [rbp + 0x124], eax
mov ax, 0x4204
xor ax, 0x46dc
mov word [rbp + 0x396], ax
lea rcx, [rbp + 0x396]
sub rsp, 0x20
call fcn.140067990
mov rcx, qword [rbp + 0x1e8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x124]
mov qword [rbp + 0x128], rdx
mov cl, byte [rcx]
mov dl, 0xec
xor dl, 0xec
cmp cl, dl
sete cl
mov byte [rbp + 0x137], cl
cmp eax, 0x935fda62
jb 0x1401c4543
mov cl, byte [rbp + 0x137]
mov al, 1
test cl, 1
mov byte [rbp + 0x147], al
jne 0x1401c2a45
jmp 0x1401c4266
mov ecx, dword [0x1401e64b0]
mov r8d, dword [0x1401e64b4]
mov edx, r8d
xor edx, 0xffffffff
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, r8d
add ecx, edx
sub ecx, eax
mov edx, 0x68e0c488
xor edx, 0x971f3b77
mov eax, ecx
xor eax, edx
mov edx, 0x52c4b6c5
xor edx, 0xad6c7878
mov r8d, 0x4632e1b0
xor r8d, 0xb9cd1e4f
xor edx, r8d
and eax, edx
or ecx, 0xffa8cebd
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
and eax, 0xad65d238
add eax, 0x9d9c9ed5
cmp eax, 0xe6e606fc
jae 0x1401c454c
mov ecx, dword [0x1401e64b8]
mov edx, dword [0x1401e64bc]
xor edx, 0x6571da7e
mov eax, edx
and eax, ecx
xor eax, 0xffffffff
add ecx, edx
add ecx, 1
add ecx, eax
mov edx, 0xc81088b2
xor edx, 0xf9cac605
mov eax, 0x3fd3f226
xor eax, 0xc02c0dd9
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
imul eax, eax, 0xf714aee2
imul eax, eax, 0xb765353b
mov dword [rbp + 0x11c], eax
lea rcx, [rbp + 0x380]
mov edx, 0x10
sub rsp, 0x20
call fcn.1401beec5
mov rax, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x158]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x320], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x328], rax
lea rcx, [rbp + 0x380]
lea r8, [rbp + 0x320]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400d01e0
mov rcx, qword [rbp + 0x1e8]
mov eax, dword [rbp + 0x11c]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x123], cl
cmp eax, 0x8770ffa8
je 0x1401c454c
mov cl, byte [rbp + 0x123]
mov al, 1
test cl, 1
mov byte [rbp + 0x147], al
jne 0x1401c2ba0
jmp 0x1401c4266
mov rax, qword [rbp + 0x380]
mov qword [rbp + 0x110], rax
mov al, byte [rbp + 0x388]
mov cl, 0x2f
xor cl, 0x2f
cmp al, cl
jne 0x1401c2c3b
sub rsp, 0x20
call fcn.1400860e4
mov rcx, qword [rbp + 0x1e8]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x147], al
jne 0x1401c4266
lea rcx, [rbp + 0x398]
sub rsp, 0x20
call fcn.1401bc200
mov rcx, qword [rbp + 0x1e8]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x10f], al
jne 0x1401c438e
mov rcx, qword [rbp + 0x158]
sub rsp, 0x20
call fcn.1400d0b70
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401c4527
jmp 0x1401c43d9
mov eax, dword [0x1401e64c0]
mov edx, dword [0x1401e64c4]
mov ecx, 0xb8ecbf7f
xor ecx, 0xb8ecbf7f
sub ecx, edx
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x43b4dd3d
mov r8d, 0xffffffff
xor r8d, 0x43b4dd3d
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x77c760cf
xor r8d, 0x3473bdf2
mov edx, eax
and edx, r8d
or eax, 0x43b4dd3d
imul eax, edx
add eax, ecx
mov r8d, 0x870126c2
xor r8d, 0x10bfb94b
mov ecx, 0x964cfe50
xor ecx, 0x69b301af
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x23a33901
xor r8d, 0xdc5cc6fe
xor ecx, r8d
imul ecx, edx
mov r8d, 0x8155b92f
xor r8d, 0x16eb26a6
mov edx, eax
and edx, r8d
mov r8d, 0xc3fa010d
xor r8d, 0x54449e84
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x1ade1863
xor ecx, 0xafed63e3
or eax, ecx
cmp eax, 0xc2ef6ffd
jae 0x1401c4555
mov r8d, dword [0x1401e64c8]
mov edx, dword [0x1401e64cc]
mov ecx, 0xdb304c19
xor ecx, 0x24cfb3e6
mov eax, r8d
xor eax, ecx
and eax, 0xe2468d8e
mov r9d, 0xffffffff
xor r9d, 0xe2468d8e
and r8d, r9d
mov r10d, 0x26c6065a
xor r10d, 0xd939f9a5
mov ecx, edx
xor ecx, r10d
and ecx, 0xe2468d8e
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xb6f312b3
xor ecx, 0xbe516802
or eax, ecx
add eax, 0x1ddc7919
mov ecx, 0x72857989
xor ecx, 0x3c1a74e6
sub eax, ecx
sub eax, 0x1ddc7919
mov ecx, 0x61e31170
xor ecx, 0xd0472153
imul eax, ecx
mov dword [rbp + 0x108], eax
lea rcx, [rbp + 0x368]
mov edx, 0x18
sub rsp, 0x20
call fcn.1401beec5
mov rcx, qword [rbp + 0x188]
add rsp, 0x20
mov byte [rbp + 0x368], 1
lea rax, [rbp + 0x368]
add rax, 8
mov qword [rbp + 0x100], rax
movabs rdx, 0x9e670d6d1e3f5f1
movabs rax, 0x9e670d6d1e3f5f1
xor rdx, rax
sub rsp, 0x20
call fcn.14003379c
mov rax, qword [rbp + 0x188]
mov rdx, qword [rbp + 0x110]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x370], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x378], rax
lea rcx, [rbp + 0x368]
mov r8d, 7
sub rsp, 0x20
call fcn.1401bfaf0
mov rcx, qword [rbp + 0x1e8]
mov eax, dword [rbp + 0x108]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x10e], cl
cmp eax, 0x4d179671
je 0x1401c4555
mov al, byte [rbp + 0x10e]
test al, 1
jne 0x1401c2e98
jmp 0x1401c2e66
mov rax, qword [rbp + 0x1e8]
mov cl, 0x6f
xor cl, 0x6f
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401bf6d5
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
mov byte [rbp + 0xff], al
jne 0x1401c41e9
mov cx, 0xd9b9
xor cx, 0xdc8c
sub rsp, 0x20
call fcn.1400676f0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1e8]
mov qword [rbp + 0xf0], rcx
cmp byte [rax], 0
jne 0x1401c2f83
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0x100]
cmp rax, qword [rcx]
jge 0x1401c2f90
mov rax, qword [rbp + 0x170]
mov rax, qword [rax]
mov rax, qword [rax + 0x28]
mov cl, 0x3b
xor cl, 0x3a
mov byte [rax], cl
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x308], rax
mov rax, qword [rbp + 0x370]
mov qword [rbp + 0x310], rax
mov rax, qword [rbp + 0x378]
mov qword [rbp + 0x318], rax
lea rcx, [rbp + 0x368]
sub rsp, 0x20
call fcn.1401bc2ed
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov rcx, qword [rax]
add rcx, 0x10
mov rax, qword [rbp + 0x308]
mov qword [rbp + 0x2f0], rax
mov rax, qword [rbp + 0x310]
mov qword [rbp + 0x2f8], rax
mov rax, qword [rbp + 0x318]
mov qword [rbp + 0x300], rax
lea rdx, [rbp + 0x2f0]
sub rsp, 0x20
call fcn.140034280
add rsp, 0x20
jmp 0x1401c2f90
mov al, 1
mov byte [rbp + 0xff], al
jmp 0x1401c41e9
mov eax, dword [0x1401e64d0]
sub eax, dword [0x1401e64d4]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x1f36fb36
mov r8d, 0xffffffff
xor r8d, 0x1f36fb36
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xacfcbea4
xor r8d, 0xb3ca4592
mov edx, eax
and edx, r8d
or eax, 0x1f36fb36
imul eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x8906708d
add eax, ecx
mov ecx, 0xc724523b
xor ecx, 0xc724523a
add eax, ecx
xor eax, 0xf97b3e09
cmp eax, 0x6496a08e
ja 0x1401c455e
mov rcx, qword [rbp + 0x110]
mov eax, dword [0x1401e64d8]
xor eax, 0x215d0a6a
mov r8d, dword [0x1401e64dc]
xor r8d, 0xaf0f07d6
xor edx, edx
div r8d
mov edx, 0x97ffdb8d
xor edx, 0x6cd88709
imul eax, edx
mov r8d, 0xffffffff
xor r8d, 0xd95777c9
mov edx, eax
xor edx, r8d
and edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0xb9644b83
mov r8d, 0xffffffff
xor r8d, 0xb9644b83
and edx, r8d
or eax, edx
mov dword [rbp + 0xe4], eax
mov qword [rbp + 0x2e0], 0
lea rax, [rbp + 0x2e0]
add rax, 8
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0x2e8], 0
mov qword [rbp + 0x2d0], 0
lea rax, [rbp + 0x2d0]
add rax, 8
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0x2d8], 0
sub rsp, 0x20
call fcn.1400d2a1a
mov rcx, qword [rbp + 0x1e8]
add rsp, 0x20
mov edx, eax
mov eax, dword [rbp + 0xe4]
mov dword [rbp + 0xe8], edx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xef], cl
cmp eax, 0xa6dce2e1
je 0x1401c455e
mov al, byte [rbp + 0xef]
test al, 1
jne 0x1401c3107
jmp 0x1401c3fb0
mov eax, dword [rbp + 0xe8]
movsxd rcx, eax
mov qword [rbp + 0xc0], rcx
mov rax, rcx
and rax, 1
movabs r8, 0xbcfb0ec6f55962a7
movabs rdx, 0xbcfb0ec6f55962a6
xor r8, rdx
mov rdx, rcx
or rdx, r8
add rax, rdx
mov qword [rbp + 0xc8], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xb3b825989111a417
movabs rdx, 0xb3b825989111a417
xor rcx, rdx
cmp rax, rcx
jge 0x1401c317e
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x1401c3fb0
mov rax, qword [rbp + 0xc0]
movabs rdx, 0xb046c65469a5677a
movabs rcx, 0x4fb939abe9a5677b
xor rdx, rcx
mov rcx, rax
and rcx, rdx
movabs rdx, 0xd7a2a17e71b75aa7
movabs r8, 0xd7a2a17e71b75aa5
xor rdx, r8
imul rcx, rdx
xor rax, 0xffffffff80000001
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401c31eb
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x1401c3fb0
mov eax, dword [rbp + 0xe8]
mov rcx, qword [rbp + 0xc8]
mov dword [rbp + 0xbc], ecx
cmp eax, 0xffffffff
jge 0x1401c324e
mov rcx, qword [rbp + 0xc8]
movabs rdx, 0x121cdfd8e2e88c06
movabs rax, 0x121cdfd8e2e88c06
xor rdx, rax
movabs r8, 0xda2403e18803cb11
movabs rax, 0xa5dbfc1e77fc34ee
xor r8, rax
sub rsp, 0x20
call fcn.14000c499
add rsp, 0x20
jmp 0x1401c3fb0
mov rdx, qword [rbp + 0xc8]
lea rcx, [rbp + 0x2c0]
sub rsp, 0x20
call fcn.14009d3b0
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov rcx, qword [rbp + 0x2c0]
mov qword [rbp + 0xa8], rcx
mov rcx, qword [rbp + 0x2c8]
mov qword [rbp + 0xb0], rcx
cmp byte [rax], 0
jne 0x1401c3fb0
mov rdx, qword [rbp + 0x190]
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xa8]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x2d0]
sub rsp, 0x20
call fcn.140014e50
mov r9, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x1a0]
mov rdx, qword [rbp + 0x1b0]
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x1c8]
add rsp, 0x20
lea r10, [rbp + 0x2a0]
add r10, 8
mov qword [rbp + 0x50], r10
add r9, 8
mov qword [rbp + 0x58], r9
add r8, 8
mov qword [rbp + 0x60], r8
add rdx, 8
mov qword [rbp + 0x68], rdx
add rcx, 8
mov qword [rbp + 0x70], rcx
add rax, 8
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x230]
add rax, 8
mov qword [rbp + 0x80], rax
lea rax, [rbp + 0x268]
add rax, 8
mov qword [rbp + 0x88], rax
lea rax, [rbp + 0x268]
add rax, 0x10
mov qword [rbp + 0x90], rax
lea rax, [rbp + 0x268]
add rax, 0x18
mov qword [rbp + 0x98], rax
xor eax, eax
mov dword [rbp + 0xa4], eax
mov rax, qword [rbp + 0x198]
mov ecx, dword [rbp + 0xbc]
mov edx, dword [rbp + 0xa4]
mov dword [rbp + 0x44], edx
mov dword [rax], ecx
mov rax, qword [rbp + 0x2d0]
mov qword [rbp + 0x2b0], rax
mov rax, qword [rbp + 0x2d8]
mov qword [rbp + 0x2b8], rax
lea rcx, [rbp + 0x2b0]
sub rsp, 0x20
call fcn.1401bee91
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1e8]
mov qword [rbp + 0x48], rcx
cmp byte [rax], 0
jne 0x1401c3f9d
mov ecx, dword [0x1401e64e0]
mov eax, dword [0x1401e64e4]
xor eax, 0x9cc3bc7f
add ecx, eax
mov edx, 0xe478772a
xor edx, 0xf2a54b7d
mov eax, ecx
and eax, edx
mov edx, 0xd0ab28bd
xor edx, 0xc67614ea
or ecx, edx
add eax, ecx
imul eax, eax, 0x663818ab
and eax, 0x220bb850
cmp eax, 0xfbf41832
jae 0x1401c4567
mov r9, qword [rbp + 0x198]
mov r8, qword [rbp + 0x48]
mov edx, dword [rbp + 0x44]
mov rcx, qword [rbp + 0x110]
mov eax, dword [0x1401e64e8]
xor eax, 0xcc3d624
mov r11d, dword [0x1401e64ec]
xor r11d, 0xffffffff
mov r10d, eax
xor r10d, r11d
and r10d, eax
mov r11d, 0x3ec2e001
xor r11d, 0xc13d1ffe
mov eax, r10d
xor eax, r11d
mov r11d, r10d
xor r11d, 0xffffffff
and eax, r11d
mov r11d, 0xffffffff
xor r11d, 0xc154a677
mov esi, 0xffffffff
xor esi, 0xc154a677
and r11d, esi
or eax, r11d
xor eax, 0xffffffff
mov r11d, 0xd21f1165
xor r11d, 0x2de0ee9a
xor r10d, r11d
mov r11d, 0xffffffff
xor r11d, 0xc154a677
and r10d, r11d
xor eax, 0xffffffff
xor r10d, 0xffffffff
and eax, r10d
or eax, 0x1277380a
mov r11d, 0x3cbf54b2
xor r11d, 0x124d28c9
mov r10d, eax
xor r10d, r11d
mov r11d, 0x9b586b8a
xor r11d, 0xb5aa17f1
mov esi, 0xa98a39b1
xor esi, 0x5675c64e
xor r11d, esi
and eax, r11d
shl eax, 1
sub eax, r10d
mov dword [rbp + 0x38], eax
xor eax, eax
sub rsp, 0x40
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
call fcn.1400a1655
mov rcx, qword [rbp + 0x1e8]
add rsp, 0x40
mov edx, eax
mov eax, dword [rbp + 0x38]
mov dword [rbp + 0x3c], edx
mov cl, byte [rcx]
mov dl, 0x4e
xor dl, 0x4e
cmp cl, dl
sete cl
mov byte [rbp + 0x43], cl
cmp eax, 0x65df25bf
ja 0x1401c3415
mov al, byte [rbp + 0x43]
test al, 1
jne 0x1401c355c
jmp 0x1401c3f9d
mov eax, dword [rbp + 0x3c]
test eax, eax
je 0x1401c357f
jmp 0x1401c356c
mov eax, dword [rbp + 0x3c]
sub eax, 0x103
je 0x1401c3f9d
jmp 0x1401c3f8d
mov rax, qword [rbp + 0x2d0]
mov qword [rbp + 0x290], rax
mov rax, qword [rbp + 0x2d8]
mov qword [rbp + 0x298], rax
lea rcx, [rbp + 0x2a0]
lea rdx, [rbp + 0x290]
sub rsp, 0x20
call fcn.1401bef50
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov rdx, qword [rbp + 0x2a0]
mov qword [rbp + 0x28], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x30], rcx
cmp byte [rax], 0
jne 0x1401c3f9d
mov eax, dword [0x1401e64f0]
xor eax, 0xe2e74e33
mov r8d, dword [0x1401e64f4]
mov ecx, 0x5bd64697
xor ecx, 0x312f114b
xor r8d, ecx
mov edx, 0xbfdf19c6
xor edx, 0x4020e639
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0x59719ed6
sub eax, 0x5146f71d
sub eax, 0xeb75d1
cmp eax, 0xe82dd0e1
je 0x1401c4570
mov rcx, qword [rbp + 0x1a0]
mov r8, qword [rbp + 0x30]
mov r9, qword [rbp + 0x28]
mov eax, dword [0x1401e64f8]
mov r10d, dword [0x1401e64fc]
xor r10d, 0xa770b554
mov edx, eax
xor edx, r10d
xor r10d, 0xffffffff
and eax, r10d
shl eax, 1
sub eax, edx
mov r10d, 0x300ee7ac
xor edx, edx
div r10d
mov rdx, qword [rbp + 0x1a8]
mov r11d, eax
mov rax, qword [rbp + 0x58]
mov r10d, 0xdb3db655
xor r10d, 0xabc1f947
sub r11d, r10d
mov esi, 0x1a2c09ce
xor esi, 0x7034c8bc
mov r10d, 0xc8fa8c15
xor r10d, 0x370573ea
xor esi, r10d
mov r10d, r11d
xor r10d, esi
and r10d, r11d
mov dword [rbp + 0xc], r10d
mov qword [rdx], r9
mov qword [rax], r8
sub rsp, 0x20
call fcn.1401bf2dd
mov r8, qword [rbp + 0x1a0]
mov rdx, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x1e8]
mov eax, dword [rbp + 0xc]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x10], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x18], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x27], cl
cmp eax, 0xf45c9c01
ja 0x1401c4570
mov eax, dword [rbp + 0x44]
mov cl, byte [rbp + 0x27]
test cl, 1
mov dword [rbp + 8], eax
jne 0x1401c372c
jmp 0x1401c3dd7
mov rdx, qword [rbp + 0x1b0]
mov rax, qword [rbp + 0x68]
mov rcx, qword [rbp + 0x18]
mov r8, qword [rbp + 0x10]
mov qword [rdx], r8
mov qword [rax], rcx
lea rcx, [rbp + 0x2e0]
sub rsp, 0x20
call fcn.140014e50
mov rcx, qword [rbp + 0x1c0]
add rsp, 0x20
mov edx, 0x10
sub rsp, 0x20
call fcn.1401beec5
mov rcx, qword [rbp + 0x1c0]
mov rdx, qword [rbp + 0x110]
add rsp, 0x20
mov rax, qword [rbp + 0x2e0]
mov qword [rbp + 0x250], rax
mov rax, qword [rbp + 0x2e8]
mov qword [rbp + 0x258], rax
lea r8, [rbp + 0x250]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400d01e0
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c3b44
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x1c0]
mov rcx, qword [rcx]
mov qword [rbp], rcx
cmp byte [rax], 0
jne 0x1401c380b
sub rsp, 0x20
call fcn.1400860e4
mov rcx, qword [rbp + 0x1e8]
add rsp, 0x20
mov eax, dword [rbp + 0x44]
mov cl, byte [rcx]
cmp cl, 0
mov dword [rbp + 8], eax
je 0x1401c3c5e
jmp 0x1401c3dd7
mov rcx, qword [rbp + 0x1c8]
mov edx, 0x18
sub rsp, 0x20
call fcn.1401beec5
mov rax, qword [rbp + 0x1c8]
add rsp, 0x20
mov byte [rax], 2
movabs rdx, 0xc512428b10ca9224
movabs rax, 0xc512428b10ca9224
xor rdx, rax
lea rcx, [rbp + 0x240]
sub rsp, 0x20
call fcn.14003379c
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov rcx, qword [rbp + 0x240]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x248]
mov qword [rax + 8], rcx
mov byte [rbp + 0x268], 1
mov word [rbp + 0x266], 0x455
lea rcx, [rbp + 0x266]
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1e8]
mov qword [rbp - 0x10], rcx
mov cl, byte [rax]
mov dl, 0x24
xor dl, 0x24
mov al, 1
cmp cl, dl
mov byte [rbp - 1], al
jne 0x1401c3ab0
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp - 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x230]
sub rsp, 0x20
call fcn.14001e153
mov rdx, qword [rbp + 0x80]
mov r8, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x90]
mov rax, qword [rbp + 0x1d8]
add rsp, 0x20
mov r9, qword [rbp + 0x230]
mov rdx, qword [rdx]
mov qword [r8], r9
mov qword [rcx], rdx
mov rcx, qword [rbp + 0x2e0]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x2e8]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x2e0]
sub rsp, 0x20
call fcn.140010368
mov rdx, qword [rbp + 0x1d8]
mov rax, qword [rbp + 0x98]
mov rcx, qword [rbp + 0x78]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rax], r8
mov rdx, qword [rdx + 8]
mov qword [rax + 8], rdx
lea rdx, [rbp + 0x268]
sub rsp, 0x20
call fcn.140033a40
mov rcx, qword [rbp + 0x1c8]
mov rdx, qword [rbp]
add rsp, 0x20
mov r8d, 7
sub rsp, 0x20
call fcn.1401bfaf0
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401c39c7
mov rax, qword [rbp + 0x1e8]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bf6d5
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
mov byte [rbp - 1], al
jne 0x1401c3ab0
sub rsp, 0x20
mov cx, 0x32c
call fcn.1400676f0
mov r8, qword [rbp + 0x78]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x1e8]
mov al, byte [rax]
test al, al
sete cl
mov r8, qword [r8]
sub rdx, r8
setl dl
and cl, dl
test cl, 1
mov byte [rbp - 0x11], al
jne 0x1401c3a09
jmp 0x1401c3aaa
mov rcx, qword [rbp + 0x1c8]
mov rax, qword [rbp + 0x170]
mov rax, qword [rax]
mov rax, qword [rax + 0x28]
mov dl, 0x33
xor dl, 0x32
mov byte [rax], dl
mov rax, qword [rcx]
mov qword [rbp + 0x218], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x220], rax
mov rax, qword [rcx + 0x10]
mov qword [rbp + 0x228], rax
sub rsp, 0x20
call fcn.1401bc2ed
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov rcx, qword [rax]
add rcx, 0x10
mov rax, qword [rbp + 0x218]
mov qword [rbp + 0x200], rax
mov rax, qword [rbp + 0x220]
mov qword [rbp + 0x208], rax
mov rax, qword [rbp + 0x228]
mov qword [rbp + 0x210], rax
lea rdx, [rbp + 0x200]
sub rsp, 0x20
call fcn.140034280
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp - 0x11], al
mov al, byte [rbp - 0x11]
mov byte [rbp - 1], al
mov rax, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x1c8]
mov dl, byte [rbp - 1]
mov byte [rbp - 0x13], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bc200
mov rcx, qword [rbp]
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov dl, byte [rax]
mov byte [rbp - 0x12], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400d0b70
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c3b44
mov al, byte [rbp - 0x13]
mov cl, byte [rbp - 0x12]
mov dl, 0xf7
xor dl, 0xf7
mov r8b, 0xac
xor r8b, 0xad
mov byte [rbp - 0x15], r8b
cmp cl, dl
mov byte [rbp - 0x14], al
je 0x1401c3b2b
mov al, byte [rbp - 0x15]
mov byte [rbp - 0x14], al
mov rcx, qword [rbp + 0x1e8]
mov al, byte [rbp - 0x14]
mov byte [rcx], al
cmp al, 0
jne 0x1401c3b44
jmp 0x1401c3c5e
mov ecx, dword [0x1401e6500]
mov r8d, dword [0x1401e6504]
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 eax, 0xf462d31e
xor eax, 0xbecf0ad6
sub ecx, eax
mov eax, 0x72e4dce0
xor eax, 0x53870ad6
sub ecx, eax
add ecx, 0x4aadd9c8
mov eax, ecx
or eax, 0xd63a9d5d
mov edx, 0x1f607b1
xor edx, 0xfe09f84e
xor eax, edx
or ecx, 0xd63a9d5d
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xbe5ba970
xor ecx, 0x41a4568f
xor eax, ecx
mov edx, 0x75d05b1d
xor edx, 0x7b0664a1
mov ecx, eax
and ecx, edx
shl ecx, 1
mov edx, 0x23d1920a
xor edx, 0x2d07adb6
add eax, edx
sub eax, ecx
cmp eax, 0xd99d6107
jbe 0x1401c4579
mov eax, dword [0x1401e6508]
xor eax, 0x4e8a7f62
mov ecx, dword [0x1401e650c]
xor ecx, 0x816532fd
sub eax, ecx
mov ecx, 0x877604ed
xor edx, edx
div ecx
mov ecx, 0xb9e09d60
xor ecx, 0xb9e09d60
mov edx, 0x234b92cb
xor edx, 0x1f7d9f15
sub ecx, edx
add eax, ecx
mov ecx, eax
add ecx, 1
mov edx, 0xf208d919
xor edx, 0xdf726e6
xor eax, edx
or eax, 0x7774e45b
add eax, ecx
mov ecx, 0x1128b0ca
xor ecx, 0x8647f95b
cmp eax, ecx
je 0x1401c3beb
mov eax, dword [rbp + 0x44]
mov dword [rbp + 8], eax
jmp 0x1401c3dd7
mov eax, dword [rbp + 0x44]
movsxd rdx, eax
mov qword [rbp - 0x28], rdx
mov rax, 0xffffffffffffffff
xor rax, 1
xor ecx, ecx
sub rcx, 1
sub rax, rcx
mov rcx, rdx
sub rcx, rax
mov qword [rbp - 0x20], rcx
xor rdx, 0xffffffffffffffff
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xf4eeae6d7f148295
movabs r8, 0xb11519280eb7d6a
xor rdx, r8
xor rax, rdx
movabs rdx, 0xeb7cda4ab138bb73
movabs r8, 0x148325b54ec7448c
xor rdx, r8
xor rcx, rdx
or rax, rcx
cmp rax, 0
jge 0x1401c3cf4
sub rsp, 0x20
call fcn.1400067fe
mov eax, dword [rbp + 0x44]
add rsp, 0x20
mov dword [rbp + 8], eax
jmp 0x1401c3dd7
mov rax, qword [rbp - 0x28]
add rax, 0xffffffff80000001
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401c3dd0
mov edx, dword [0x1401e6510]
mov ecx, dword [0x1401e6514]
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, ecx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x87f6779e
xor edx, 0x78098861
xor ecx, edx
and eax, ecx
or eax, 0x4ce902d1
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xdcf7d3ea
mov edx, 0xffffffff
xor edx, 0xdcf7d3ea
and eax, edx
sub eax, ecx
mov ecx, 0x2255781f
xor edx, edx
div ecx
cmp eax, 0x7217292d
je 0x1401c4582
mov eax, dword [0x1401e6518]
xor eax, dword [0x1401e651c]
mov ecx, 0xc72a4244
xor ecx, 0x1a3444a1
imul eax, ecx
mov ecx, 0x89751344
xor ecx, 0xf037088d
and eax, ecx
sub eax, 0x7adfe11b
add eax, 0xd7b9114b
add eax, 0x7adfe11b
mov dword [rbp - 0x2c], eax
sub rsp, 0x20
call fcn.1400067fe
mov eax, dword [rbp - 0x2c]
add rsp, 0x20
cmp eax, 0x9406c2f4
je 0x1401c3d71
mov eax, dword [rbp + 0x44]
mov dword [rbp + 8], eax
jmp 0x1401c3dd7
mov rax, qword [rbp - 0x20]
mov dword [rbp + 8], eax
mov eax, dword [rbp + 8]
mov dword [rbp - 0x30], eax
mov eax, dword [0x1401e6520]
mov ecx, dword [0x1401e6524]
add eax, 0xd246a025
sub eax, ecx
mov ecx, 0xbd50a8eb
xor ecx, 0x6f1608ce
sub eax, ecx
mov ecx, 0x7da26dd
xor edx, edx
div ecx
mov ecx, 0xd2e34527
xor edx, edx
div ecx
add eax, 0xeafd3c67
sub eax, 0x875a2d60
sub eax, 0xeafd3c67
mov ecx, 0xe4eab10d
xor ecx, 0x5800186e
cmp eax, ecx
jae 0x1401c458b
mov rcx, qword [rbp + 0x30]
mov esi, dword [0x1401e6528]
mov r11d, dword [0x1401e652c]
xor r11d, 0x3cdb1ef4
mov edx, esi
xor edx, 0xffffffff
mov r9d, r11d
xor r9d, 0xffffffff
mov r8d, 0xfc73a662
xor r8d, 0xf4d0270d
mov eax, 0x8eceac82
xor eax, 0x7131537d
xor r8d, eax
mov eax, edx
and eax, 0x8a3816f
and esi, r8d
mov r10d, r9d
and r10d, 0x8a3816f
and r11d, r8d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x8a3816f
and edx, r8d
or eax, edx
mov r9d, 0xda610d23
xor r9d, 0x7e829c9e
mov edx, 0x279f884a
xor edx, 0xd86077b5
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r9d, 0x339fc7e1
xor r9d, 0x977c565c
mov r8d, eax
and r8d, r9d
or eax, 0xa4e391bd
imul eax, r8d
add eax, edx
or eax, 0xa887499b
mov r8d, 0xb14507c9
xor edx, edx
div r8d
cmp rcx, 0
sete cl
mov byte [rbp - 0x31], cl
cmp eax, 0x79ef295
je 0x1401c458b
mov al, byte [rbp - 0x31]
test al, 1
jne 0x1401c3f72
jmp 0x1401c3f20
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
movabs rcx, 0x7b95bc6a7d3f84dd
movabs rdx, 0x3b95bc6a7d3f84dd
xor rcx, rdx
and rax, rcx
movabs rcx, 0x9bbe45c72a23532c
movabs rdx, 0x9bbe45c72a23532c
xor rcx, rdx
cmp rax, rcx
jne 0x1401c3f72
mov rcx, qword [rbp + 0x30]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x1e8]
mov al, byte [rax]
mov cl, 0x18
xor cl, 0x18
cmp al, cl
je 0x1401c3fa2
jmp 0x1401c3f9d
mov ecx, dword [rbp + 0x3c]
sub rsp, 0x20
call fcn.1400d2982
add rsp, 0x20
jmp 0x1401c3fb0
mov eax, dword [rbp - 0x30]
mov dword [rbp + 0xa4], eax
jmp 0x1401c336f
mov rax, qword [rbp + 0xd8]
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
cmp rax, 0
je 0x1401c4004
mov rax, qword [rbp - 0x40]
mov rax, qword [rax]
movabs rcx, 0x685cba178b27c4c1
movabs rdx, 0x285cba178b27c4c1
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x1401c4004
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax]
mov qword [rbp - 0x48], rax
cmp rax, 0
je 0x1401c41da
mov eax, dword [0x1401e6530]
mov ecx, dword [0x1401e6534]
xor ecx, 0xfe573c78
add eax, ecx
mov ecx, 0x9290af6d
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x6250b1e7
sub eax, ecx
mov ecx, 0xa44b8298
xor ecx, 0x3d392921
xor edx, edx
div ecx
cmp eax, 0x18e53721
je 0x1401c4594
mov r8, qword [rbp - 0x48]
mov eax, dword [0x1401e6538]
xor eax, 0x8f7a940a
add eax, dword [0x1401e653c]
mov ecx, 0x7bcb3b8d
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0xe398ad17
shl ecx, 1
xor eax, 0xe398ad17
add eax, ecx
mov edx, 0x314a34b
xor edx, 0xfceb5cb4
mov ecx, eax
xor ecx, edx
and ecx, 0x18693c9
mov edx, 0x547cc02a
xor edx, 0x55fa53e3
mov r9d, 0x266ea880
xor r9d, 0xd991577f
xor edx, r9d
and eax, edx
sub eax, ecx
mov ecx, 0x33e980e7
xor ecx, 0xbd835fd5
movabs rdx, 0x4000000000000000
and rdx, qword [r8]
cmp rdx, 0
sete dl
mov byte [rbp - 0x49], dl
cmp eax, ecx
jb 0x1401c4594
mov al, byte [rbp - 0x49]
test al, 1
jne 0x1401c40fb
jmp 0x1401c41da
mov eax, dword [0x1401e6540]
xor eax, 0x5901ce70
mov ecx, dword [0x1401e6544]
mov edx, 0x13a30654
xor edx, 0x88e0939d
xor ecx, edx
mov edx, 0x8df05171
xor edx, 0x720fae8e
xor ecx, edx
add eax, ecx
mov ecx, 0x392425c9
xor ecx, 0x392425c8
add eax, ecx
or eax, 0x79e1679a
mov ecx, 0xc30317c5
xor ecx, 0x874723ab
xor edx, edx
div ecx
mov ecx, 0xdf95e0c5
xor edx, edx
div ecx
mov ecx, 0xc7084449
xor ecx, 0x53205ecd
cmp eax, ecx
ja 0x1401c459d
mov rcx, qword [rbp - 0x48]
mov edx, dword [0x1401e6548]
xor edx, 0xf3372959
mov r8d, dword [0x1401e654c]
xor r8d, 0xffffffff
mov eax, edx
xor eax, r8d
and eax, edx
mov edx, 0xd9dba0ff
xor edx, 0xf0345c8a
add eax, edx
mov r8d, 0xee3ab6d5
xor edx, edx
div r8d
mov r8d, 0x67c6f7e
xor edx, edx
div r8d
mov dword [rbp - 0x50], eax
mov eax, 0x89a6dcef
xor eax, 0x1fc9dc36
mov dword [rbp - 0x54], eax
sub rsp, 0x20
call fcn.14000e27f
mov ecx, dword [rbp - 0x54]
mov eax, dword [rbp - 0x50]
add rsp, 0x20
cmp eax, ecx
jae 0x1401c4165
jmp 0x1401c41da
mov rax, qword [rbp + 0x1e8]
mov al, byte [rax]
mov byte [rbp + 0xff], al
mov rax, qword [rbp + 0x1e8]
mov cl, byte [rbp + 0xff]
mov byte [rbp - 0x57], cl
mov byte [rax], 0
lea rcx, [rbp + 0x368]
sub rsp, 0x20
call fcn.1401bc200
mov rcx, qword [rbp + 0x110]
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov dl, byte [rax]
mov byte [rbp - 0x58], dl
mov dl, 0xaa
xor dl, 0xaa
mov byte [rax], dl
sub rsp, 0x20
call fcn.1400d0b70
mov cl, byte [rbp - 0x58]
mov rdx, qword [rbp + 0x1e8]
mov al, byte [rbp - 0x57]
add rsp, 0x20
or cl, byte [rdx]
mov dl, 1
mov byte [rbp - 0x56], dl
cmp cl, 0
mov byte [rbp - 0x55], al
je 0x1401c425d
mov al, byte [rbp - 0x56]
mov byte [rbp - 0x55], al
mov al, byte [rbp - 0x55]
mov byte [rbp + 0x147], al
mov al, byte [rbp + 0x147]
mov byte [rbp - 0x59], al
mov eax, dword [0x1401e6550]
mov edx, dword [0x1401e6554]
xor edx, 0xad736202
mov ecx, 0xbb205c5b
xor ecx, 0x44dfa3a4
xor eax, ecx
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xe3670c4a
or eax, edx
or ecx, 0xe3670c4a
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xebddd602
xor ecx, 0xa569a838
xor edx, edx
div ecx
imul eax, eax, 0x819a0e19
mov ecx, 0x58a9539e
xor edx, edx
div ecx
cmp eax, 0x6c470289
je 0x1401c45a6
mov rax, qword [rbp + 0x1e8]
mov ecx, dword [0x1401e6558]
xor ecx, 0xe426f12
sub ecx, dword [0x1401e655c]
mov edx, ecx
xor edx, 0xd9986b96
mov r8d, 0x4171de5
xor r8d, 0xfbe8e21a
xor edx, r8d
or ecx, 0xd9986b96
and ecx, edx
mov edx, 0x87a40aa8
xor edx, 0x8341daac
sub ecx, edx
mov edx, 0xd905e51e
xor edx, 0xa0839806
add ecx, edx
add ecx, 0x4e5d004
sub ecx, 0x81295559
mov dword [rbp - 0x60], ecx
mov byte [rax], 0
lea rcx, [rbp + 0x398]
sub rsp, 0x20
call fcn.1401bc200
mov rcx, qword [rbp + 0x1e8]
mov al, byte [rbp - 0x59]
add rsp, 0x20
mov dl, 1
mov byte [rbp - 0x5b], dl
cmp byte [rcx], 0
mov byte [rbp - 0x5a], al
je 0x1401c436c
mov al, byte [rbp - 0x5b]
mov byte [rbp - 0x5a], al
mov eax, dword [rbp - 0x60]
mov cl, byte [rbp - 0x5a]
mov byte [rbp - 0x61], cl
cmp eax, 0x51e8e240
ja 0x1401c45a6
mov al, byte [rbp - 0x61]
mov byte [rbp + 0x10f], al
jmp 0x1401c438e
mov rax, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x158]
mov dl, byte [rbp + 0x10f]
mov byte [rbp - 0x62], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400d0b70
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c43d9
mov al, byte [rbp - 0x62]
mov rcx, qword [rbp + 0x1e8]
mov byte [rcx], al
cmp al, 0
je 0x1401c4527
sub rsp, 0x20
call fcn.1401bf410
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x70], rax
cmp word [rax + 0x12], 1
jle 0x1401c4527
mov eax, dword [0x1401e6560]
mov r8d, dword [0x1401e6564]
mov ecx, 0xed33dd65
xor ecx, 0x12cc229a
mov edx, r8d
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
imul eax, eax, 0xe2a03c2
mov ecx, 0x6135b2f1
xor ecx, 0xf42b7527
add eax, ecx
mov ecx, 0x6f514a57
xor ecx, 0xb7d5d3d3
and eax, ecx
cmp eax, 0x1412d082
je 0x1401c45af
mov rdx, qword [rbp - 0x70]
mov ecx, dword [0x1401e6568]
mov r8d, dword [0x1401e656c]
xor r8d, 0x48825cd5
mov eax, ecx
and eax, r8d
xor ecx, r8d
or eax, ecx
mov ecx, eax
and ecx, 0x60f1ef97
shl ecx, 1
add eax, 0x60f1ef97
sub eax, ecx
mov ecx, eax
and ecx, 0x80ba76ee
xor ecx, 0xffffffff
add eax, 0x80ba76ee
add eax, 1
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x474c55fd
add eax, ecx
mov ecx, 0xd12755f5
xor ecx, 0x7436bd59
mov rdx, qword [rdx + 0x18]
cmp dword [rdx + 8], 0xd4054986
sete dl
mov byte [rbp - 0x71], dl
cmp eax, ecx
je 0x1401c45af
mov al, byte [rbp - 0x71]
test al, 1
jne 0x1401c44d9
jmp 0x1401c4527
mov rax, qword [rbp + 0x1e8]
mov cl, 0x55
xor cl, 0x55
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401bf530
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140095e90
mov rax, qword [rbp + 0x1e8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xc5
xor cl, 0xc5
cmp al, cl
jne 0x1401c4527
dec dword [rax - 0x75]
test eax, ebp
add dword [rax], eax
add byte [rax - 0x7d], cl
invalid
sub rsp, 0x20
call fcn.1401bf6d5
add rsp, 0x20
lea rsp, [rbp + 0x3b8]
pop rsi
pop rbp
ret
add dword [rbp + rbp - 0x1fe51630], edx
invalid
or dl, byte [rbp - 0x6316559b]
loop 0x1401c4541
invalid
call [rdi - 0x166a461d]
jmp rbx
lahf
jrcxz 0x1401c44ff
xchg ebp, eax
jmp 0x1401c294b
insd dword [rdi], dx
or dword [rsi*4 - 0x1aa017], edi
dec edx
push rdi
cmp eax, 0xe7abe9f9
invalid
retf 0x3d57
leave
pop rdi
jmp 0x1401c3002
jmp 0x1292de410
js 0x1401c4592
ficomp dword [rbp - 0xf3217]
inc ecx
rcl byte [rdi - 0x996165c]
invalid
rcl eax, 0x97
movsb byte [rdi], byte [rsi]
jmp 0x1401c3beb
in eax, dx
loope 0x1401c45d5
sbb al, 0xe9
out 0xf7, al
invalid
test dword [rbx + rdi*2 - 0x76216f7], edi
invalid
out 0x89, eax
test cl, ch
sar dl, 0xff
inc dword [rsi]
or dword [rbp - 0x4401612], eax
invalid
invalid
jbe 0x1401c45bd
jmp 0x1401c42d2
and bl, byte [rbx + 0x34]
out 0xe9, al
xchg ebp, eax
invalid
add byte [rax], al
add byte [rbp + 0x48], dl
push rbp
sub rsp, 0x190
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x20], rcx
mov eax, 0x10
adc byte [rax], al
add byte [rax], al
mov qword [rbp + 0x28], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp + 0x58], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp + 0x30], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x38], rax
sub rsp, 0x20
call fcn.1401cfb6b
add rsp, 0x20
mov qword [rbp + 0x60], rax
add rax, 0x60
mov qword [rbp + 0x40], rax
mov ecx, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.14001de30
add rsp, 0x20
mov qword [rbp + 0x50], rax
lea rcx, [rbp + 0xf8]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140031ea2
mov rax, qword [rbp + 0x50]
add rsp, 0x20
mov rcx, qword [rbp + 0xf8]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x100]
mov qword [rax + 8], rcx
add rax, 0x10
mov qword [rbp + 0x48], rax
lea rcx, [rbp + 0xe8]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140032f10
mov rax, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x58]
add rsp, 0x20
mov rdx, qword [rbp + 0xe8]
mov qword [rax + 0x10], rdx
mov rdx, qword [rbp + 0xf0]
mov qword [rax + 0x18], rdx
mov qword [rbp + 0x108], rax
mov word [rcx], 0x31d
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x68], rcx
mov al, byte [rax + 0x60]
mov cl, 0xcb
xor cl, 0xcb
cmp al, cl
jne 0x1401c4904
movabs rdx, 0x92d71dcd877ecce4
movabs rax, 0x92d71dcd877eccf4
xor rdx, rax
lea rcx, [rbp + 0xd8]
sub rsp, 0x20
call fcn.1401beec5
mov rax, qword [rbp + 0x68]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0xc8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xd0], rax
lea rcx, [rbp + 0xd8]
mov rdx, 0xffffffff80000001
lea r8, [rbp + 0xc8]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400d01e0
mov rax, qword [rbp + 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c4904
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0x18], rax
cmp byte [rbp + 0xe0], 0
jne 0x1401c4799
sub rsp, 0x20
call fcn.1400860e4
add rsp, 0x20
mov rax, qword [rbp + 0x40]
cmp byte [rax], 0
jne 0x1401c4904
jmp 0x1401c4998
mov ecx, dword [0x1401e6570]
mov edx, dword [0x1401e6574]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0x2d223e88
xor r8d, 0xd2ddc177
xor ecx, r8d
or eax, ecx
mov ecx, edx
xor ecx, 0xffffffff
mov r8d, 0x5c8e83a3
xor r8d, 0xa3717c5c
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
xor ecx, ecx
sub ecx, 0x1f74d4cf
sub eax, ecx
or eax, 0x1948c325
mov ecx, 0x7390d6da
xor ecx, 0xfdfc134a
xor edx, edx
div ecx
cmp eax, 0x9aeb94f0
je 0x1401c5235
mov r8, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
mov eax, dword [0x1401e6578]
xor eax, 0xef26f194
add eax, dword [0x1401e657c]
mov edx, 0xf15f008c
xor edx, 0xd2db2807
and eax, edx
add eax, 0x2cc6c2df
mov r9d, 0xfedfb533
xor r9d, 0x1204acc
mov edx, eax
xor edx, r9d
and edx, 0x5720fd12
mov r9d, 0xffffffff
xor r9d, 0x5720fd12
and eax, r9d
sub eax, edx
mov dword [rbp + 0x10], eax
lea rdx, [rbp + 0x108]
sub rsp, 0x20
call fcn.1401bf700
mov rcx, qword [rbp + 0x40]
mov eax, dword [rbp + 0x10]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x17], cl
cmp eax, 0x9fa6859d
jbe 0x1401c4801
mov cl, byte [rbp + 0x17]
mov al, 1
test cl, 1
mov byte [rbp + 0xf], al
jne 0x1401c489e
jmp 0x1401c48c3
mov r8, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
lea rdx, [rbp + 0x108]
sub rsp, 0x20
call fcn.1401c2280
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0xf], al
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x18]
mov dl, byte [rbp + 0xf]
mov byte [rbp + 0xe], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400d0b70
mov rax, qword [rbp + 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c4904
mov al, byte [rbp + 0xe]
mov rcx, qword [rbp + 0x40]
mov byte [rcx], al
cmp al, 0
jne 0x1401c4904
jmp 0x1401c4998
sub rsp, 0x20
call fcn.1401bf410
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp], rax
cmp word [rax + 0x12], 1
jle 0x1401c498a
mov rax, qword [rbp]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0x9b77cb2f
xor ecx, 0x4f7282a9
cmp eax, ecx
jne 0x1401c498a
mov rax, qword [rbp + 0x40]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bf530
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140095e90
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x4e
xor cl, 0x4e
cmp al, cl
je 0x1401c497d
jmp 0x1401c4d3c
sub rsp, 0x20
call fcn.1401bf6d5
add rsp, 0x20
mov rax, qword [rbp + 0x40]
mov al, byte [rax]
cmp al, 0
jne 0x1401c4d3c
mov word [rbp + 0xc6], 0x7a9
lea rcx, [rbp + 0xc6]
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp - 8], rcx
cmp byte [rax], 0
jne 0x1401c4b0b
mov rcx, qword [rbp + 0x30]
movabs rdx, 0x646267bfda44624
movabs rax, 0x646267bfda44634
xor rdx, rax
sub rsp, 0x20
call fcn.1401beec5
mov rax, qword [rbp - 8]
mov rcx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x38]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [r8], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
mov rdx, 0xffffffff80000002
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400d01e0
mov rax, qword [rbp + 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c4b0b
mov rax, qword [rbp + 0x30]
mov rcx, qword [rax]
mov qword [rbp - 0x10], rcx
cmp byte [rax + 8], 0
jne 0x1401c4a6c
sub rsp, 0x20
call fcn.1400860e4
add rsp, 0x20
mov rax, qword [rbp + 0x40]
mov al, byte [rax]
mov cl, 0xc9
xor cl, 0xc9
cmp al, cl
jne 0x1401c4b0b
jmp 0x1401c4b90
mov r8, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x20]
lea rdx, [rbp + 0x108]
sub rsp, 0x20
call fcn.1401bf700
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x3c
xor dl, 0x3c
mov al, 1
cmp cl, dl
mov byte [rbp - 0x11], al
jne 0x1401c4ac5
mov r8, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x20]
lea rdx, [rbp + 0x108]
sub rsp, 0x20
call fcn.1401c2280
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp - 0x11], al
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp - 0x10]
mov dl, byte [rbp - 0x11]
mov byte [rbp - 0x12], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400d0b70
mov rax, qword [rbp + 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c4b0b
mov al, byte [rbp - 0x12]
mov rdx, qword [rbp + 0x40]
mov cl, 0x43
xor cl, 0x43
mov byte [rdx], al
cmp al, cl
jne 0x1401c4b0b
jmp 0x1401c4b90
sub rsp, 0x20
call fcn.1401bf410
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
cmp word [rax + 0x12], 1
jle 0x1401c4b82
mov rax, qword [rbp - 0x20]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401c4b82
mov rax, qword [rbp + 0x40]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bf530
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140095e90
mov rax, qword [rbp + 0x40]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401c4b75
jmp 0x1401c4d3c
sub rsp, 0x20
call fcn.1401bf6d5
add rsp, 0x20
mov rax, qword [rbp + 0x40]
mov al, byte [rax]
cmp al, 0
jne 0x1401c4d3c
mov rax, qword [rbp + 0x20]
mov rax, qword [rax]
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x28], rax
cmp byte [rax], 0
je 0x1401c4d3c
mov rax, qword [rbp - 0x28]
mov byte [rax], 1
movabs rcx, 0xde10b05a301f39c5
movabs rax, 0xde10b05a301f39f5
xor rcx, rax
movabs rdx, 0xe104f25e510a30e1
movabs rax, 0xe104f25e510a30e9
xor rdx, rax
sub rsp, 0x20
call fcn.14001de30
add rsp, 0x20
mov qword [rbp - 0x38], rax
mov qword [rax], 0
mov dword [rax + 8], 0
mov ecx, 0x8c
sub rsp, 0x20
call fcn.1400676f0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x30], rcx
cmp byte [rax], 0
jne 0x1401c4d3c
mov rax, qword [rbp - 0x30]
xor ecx, ecx
sub rcx, rax
movabs rax, 0xe5aa0a8c364f1385
movabs rdx, 0xe5aa0a8c364f1385
xor rax, rdx
movabs rdx, 0xe54b2fb08fc377bb
movabs r8, 0x1ab4d04f0fc377bb
xor rdx, r8
sub rax, rdx
add rcx, rax
movabs rax, 0xfddb2653ec352050
movabs rdx, 0xfddb2653ec352050
xor rax, rdx
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401c4caf
mov rcx, qword [rbp - 0x30]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14000c499
add rsp, 0x20
jmp 0x1401c4d3c
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp + 0x20]
mov rdx, qword [rbp - 0x30]
mov dword [rcx + 0xc], edx
mov rax, qword [rax]
mov rdx, qword [rax + 0x28]
lea rcx, [rbp + 0xb0]
sub rsp, 0x20
call fcn.14007de20
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov rdx, qword [rbp + 0xb0]
mov qword [rcx + 0x10], rdx
mov rdx, qword [rbp + 0xb8]
mov qword [rcx + 0x18], rdx
mov al, byte [rax]
mov cl, 0x1c
xor cl, 0x1c
cmp al, cl
jne 0x1401c4d3c
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp + 0x20]
mov rcx, qword [0x1401f0648]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x1401f0650]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.14002b470
add rsp, 0x20
mov rax, qword [rbp + 0x40]
mov cl, byte [rax]
mov byte [rbp - 0x41], cl
mov cl, 0xd5
xor cl, 0xd5
mov byte [rax], cl
mov ecx, 0x30a
sub rsp, 0x20
call fcn.1400676f0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x40], rcx
cmp byte [rax], 0
jne 0x1401c5052
mov eax, dword [0x1401e6580]
mov edx, dword [0x1401e6584]
xor edx, 0x7aed7833
mov ecx, edx
and ecx, eax
mov r8d, 0x6350ceca
xor r8d, 0x9caf3135
xor ecx, r8d
add eax, edx
mov edx, 0x48cd10f0
xor edx, 0x48cd10f1
add eax, edx
add eax, ecx
mov ecx, 0x840b25b9
xor ecx, 0x535a4121
sub eax, ecx
mov ecx, 0x96dedc69
xor ecx, 0x2e81195f
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
or eax, 0xddf7c1fc
mov edx, 0xa84a0591
xor edx, 0x57b5fa6e
xor eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xddf7c1fc
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x728a47f
jb 0x1401c523e
mov rcx, qword [rbp - 0x40]
mov eax, dword [0x1401e6588]
mov r9d, dword [0x1401e658c]
mov r8d, 0x35ed2539
xor r8d, 0xca12dac6
mov edx, eax
xor edx, r8d
mov r8d, r9d
and r8d, edx
mov r10d, r9d
xor r10d, 0xffffffff
mov edx, eax
and edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, eax
xor edx, 0xf652b277
xor edx, 0xffffffff
mov r8d, 0x2f9e56c8
xor r8d, 0xd9cce4bf
or eax, r8d
and eax, edx
mov r8d, 0xae9fa13
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x50]
imul eax, eax, 0x378016e6
cmp rcx, qword [rdx]
setl cl
mov byte [rbp - 0x42], cl
cmp eax, 0x9ceb1f39
jae 0x1401c4dfb
mov al, byte [rbp - 0x42]
test al, 1
jne 0x1401c4ed9
jmp 0x1401c4e99
mov cx, 0x8891
xor cx, 0x8a61
sub rsp, 0x20
call fcn.1400676f0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x50], rcx
cmp byte [rax], 0
jne 0x1401c5052
mov rax, qword [rbp - 0x50]
mov rcx, qword [rbp + 0x48]
cmp rax, qword [rcx]
jl 0x1401c4ed9
jmp 0x1401c5173
mov word [rbp + 0xae], 0x3b0
lea rcx, [rbp + 0xae]
sub rsp, 0x20
call fcn.140067990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x58], rcx
mov al, byte [rax]
mov cl, 0x43
xor cl, 0x43
cmp al, cl
jne 0x1401c5153
mov rdx, qword [rbp + 0x50]
lea rcx, [rbp + 0x90]
sub rsp, 0x20
call fcn.1400e7cc0
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov rcx, qword [rbp + 0x90]
mov qword [rbp - 0x68], rcx
mov rcx, qword [rbp + 0x98]
mov qword [rbp - 0x60], rcx
cmp byte [rax], 0
jne 0x1401c5153
movabs rdx, 0x553bc5dc1fcccb48
movabs rax, 0x553bc5dc1fcccb40
xor rdx, rax
lea rcx, [rbp + 0xa0]
sub rsp, 0x20
call fcn.1401beec5
mov rcx, qword [rbp + 0x20]
mov r8, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x68]
mov rax, qword [rbp - 0x60]
add rsp, 0x20
mov rcx, qword [rcx]
add rcx, 0x18
mov r9, qword [r8]
mov qword [rbp + 0x80], r9
mov r8, qword [r8 + 8]
mov qword [rbp + 0x88], r8
mov qword [rbp + 0x70], rdx
mov qword [rbp + 0x78], rax
lea rdx, [rbp + 0x80]
lea r8, [rbp + 0x70]
sub rsp, 0x20
call fcn.140123a80
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x70], rcx
mov al, byte [rax]
mov cl, 0x26
xor cl, 0x26
cmp al, cl
jne 0x1401c4fed
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.140097f80
add rsp, 0x20
mov rax, qword [rbp - 0x60]
cmp rax, 0
je 0x1401c515d
mov rax, qword [rbp - 0x60]
mov rax, qword [rax]
movabs rcx, 0xedd9a01fd30ac407
movabs rdx, 0xadd9a01fd30ac407
xor rcx, rdx
and rax, rcx
movabs rcx, 0x7ef2be71471ab6b6
movabs rdx, 0x7ef2be71471ab6b6
xor rcx, rdx
cmp rax, rcx
jne 0x1401c515d
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
jmp 0x1401c515d
mov ecx, dword [0x1401e6590]
mov edx, dword [0x1401e6594]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov r8d, 0x7d676fc9
xor r8d, 0x282b62fb
mov ecx, 0xaca4f4c6
xor ecx, 0x535b0b39
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x554c0d32
mov r8d, 0x18558d
xor r8d, 0x555458bf
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xdc4d4310
xor ecx, 0x9bfbff8
and eax, ecx
mov ecx, 0xf0eb5bbd
xor edx, edx
div ecx
cmp eax, 0x61aeec29
ja 0x1401c5247
mov ecx, dword [0x1401e6598]
mov eax, dword [0x1401e659c]
xor eax, 0x9b04780
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xa676c868
mov edx, 0xffffffff
xor edx, 0xa676c868
and ecx, edx
or eax, ecx
mov edx, 0xffffffff
xor edx, 0x83678c9d
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x83678c9d
add eax, edx
sub eax, ecx
mov ecx, 0xb82cb04e
xor edx, edx
div ecx
mov ecx, 0x625badbe
xor ecx, 0x730f99fc
cmp eax, ecx
jae 0x1401c50e6
mov al, 1
mov byte [rbp - 0x71], al
jmp 0x1401c517e
mov al, 1
mov byte [rbp - 0x71], al
jmp 0x1401c517e
mov rax, qword [rbp + 0x40]
mov al, byte [rax]
mov cl, 0x7f
xor cl, 0x7f
cmp al, cl
mov byte [rbp - 0x71], al
jne 0x1401c517e
mov al, byte [rbp - 0x41]
mov byte [rbp - 0x71], al
jmp 0x1401c517e
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x50]
mov dl, byte [rbp - 0x71]
mov byte [rbp - 0x72], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bc936
mov rax, qword [rbp + 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c51ba
mov al, byte [rbp - 0x72]
mov rcx, qword [rbp + 0x40]
mov byte [rcx], al
cmp al, 0
je 0x1401c522c
sub rsp, 0x20
call fcn.1401bf410
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp word [rax + 0x12], 1
jle 0x1401c522c
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401c522c
mov rax, qword [rbp + 0x40]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401bf530
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140095e90
mov rax, qword [rbp + 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c522c
sub rsp, 0x20
call fcn.1401bf6d5
add rsp, 0x20
lea rsp, [rbp + 0x110]
pop rbp
ret
cdq
invalid
iretd
pop rsi
pop rax
leave
jmp 0x1401c50e6