Function at 0x1401c7620
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x398
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x180], rcx
mov eax, 0x10
mov qword [rbp + 0x1e8], rax
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x188], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x190], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x198], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1a0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1a8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1b0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1b8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1c0], rax
mov eax, 0x30
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1c8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1d0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1d8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1e0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x1e8]
mov rcx, rsp
mov qword [rbp + 0x1f0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1f8], rax
sub rsp, 0x20
call fcn.1401ca94e
add rsp, 0x20
mov qword [rbp + 0x210], rax
add rax, 0x60
mov qword [rbp + 0x200], rax
movabs rcx, 0xa97624d74fb2c33d
movabs rax, 0xa97624d74fb2c339
xor rcx, rax
movabs rdx, 0x1fb70d2c4d3cf354
movabs rax, 0x1fb70d2c4d3cf344
xor rdx, rax
movabs r8, 0xf0bda86f87a9667c
movabs rax, 0xf0bda86f87a96674
xor r8, rax
sub rsp, 0x20
call fcn.14000fb25
add rsp, 0x20
mov qword [rbp + 0x208], rax
mov word [rbp + 0x316], 0xae6
lea rcx, [rbp + 0x316]
sub rsp, 0x20
call fcn.140065650
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x210]
mov qword [rbp + 0x218], rcx
cmp byte [rax + 0x60], 0
jne 0x1401c8c81
mov r8, qword [rbp + 0x198]
mov rdx, qword [rbp + 0x190]
mov rax, qword [rbp + 0x218]
mov rcx, qword [0x1401eeb48]
mov r9, qword [rcx]
mov qword [rdx], r9
mov rcx, qword [rcx + 8]
mov qword [rdx + 8], rcx
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x300]
sub rsp, 0x20
call fcn.1401c35e7
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov rcx, qword [rbp + 0x300]
mov qword [rbp + 0x170], rcx
mov rcx, qword [rbp + 0x308]
mov qword [rbp + 0x178], rcx
cmp byte [rax], 0
jne 0x1401c8c81
mov rcx, qword [rbp + 0x188]
mov rax, qword [rbp + 0x208]
mov rdx, qword [rbp + 0x178]
mov r8, qword [rbp + 0x170]
mov qword [rax + 8], r8
mov qword [rax + 0x10], rdx
mov word [rcx], 0xb53
sub rsp, 0x20
call fcn.140065650
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x168], rcx
cmp byte [rax], 0
jne 0x1401c8c81
mov r8, qword [rbp + 0x1a0]
mov rax, qword [rbp + 0x168]
mov rcx, qword [0x1401eeb48]
mov rdx, qword [rcx]
mov qword [rbp + 0x2e0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x2e8], rcx
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x2f0]
lea rdx, [rbp + 0x2e0]
sub rsp, 0x20
call fcn.1401c35e7
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov rcx, qword [rbp + 0x2f0]
mov qword [rbp + 0x158], rcx
mov rcx, qword [rbp + 0x2f8]
mov qword [rbp + 0x160], rcx
cmp byte [rax], 0
jne 0x1401c8c81
mov rax, qword [rbp + 0x208]
mov rcx, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x158]
mov qword [rax + 0x18], rdx
mov qword [rax + 0x20], rcx
mov word [rbp + 0x314], 0x8eb
lea rcx, [rbp + 0x314]
sub rsp, 0x20
call fcn.140065650
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x150], rcx
mov al, byte [rax]
mov cl, 0x93
xor cl, 0x93
cmp al, cl
jne 0x1401c8c81
mov r8, qword [rbp + 0x1b0]
mov rdx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x150]
mov rcx, qword [0x1401eeb50]
mov r9, qword [rcx]
mov qword [rdx], r9
mov rcx, qword [rcx + 8]
mov qword [rdx + 8], rcx
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x2d0]
sub rsp, 0x20
call fcn.1401c35e7
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov rcx, qword [rbp + 0x2d0]
mov qword [rbp + 0x140], rcx
mov rcx, qword [rbp + 0x2d8]
mov qword [rbp + 0x148], rcx
cmp byte [rax], 0
jne 0x1401c8c81
mov rax, qword [rbp + 0x208]
mov rcx, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x140]
mov qword [rax + 0x28], rdx
mov qword [rax + 0x30], rcx
mov ax, 0x8933
xor ax, 0x882a
mov word [rbp + 0x312], ax
lea rcx, [rbp + 0x312]
sub rsp, 0x20
call fcn.140065650
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x138], rcx
cmp byte [rax], 0
jne 0x1401c8c81
mov rcx, qword [rbp + 0x1b8]
mov r8, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x138]
mov rdx, qword [0x1401eeb50]
mov r9, qword [rdx]
mov qword [rbp + 0x2c0], r9
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x2c8], rdx
mov rdx, qword [rax]
mov qword [r8], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rdx, [rbp + 0x2c0]
sub rsp, 0x20
call fcn.1401c35e7
mov rcx, qword [rbp + 0x1b8]
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x128], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x130], rcx
mov al, byte [rax]
mov cl, 0x5d
xor cl, 0x5d
cmp al, cl
jne 0x1401c8c81
mov rax, qword [rbp + 0x208]
mov rcx, qword [rbp + 0x130]
mov rdx, qword [rbp + 0x128]
mov qword [rax + 0x38], rdx
mov qword [rax + 0x40], rcx
mov ecx, 0x165
sub rsp, 0x20
call fcn.1400654f7
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x120], rcx
cmp byte [rax], 0
jne 0x1401c8c81
mov ecx, 0x469
sub rsp, 0x20
call fcn.1400654f7
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x118], rcx
mov al, byte [rax]
mov cl, 0xc2
xor cl, 0xc2
cmp al, cl
jne 0x1401c8c81
mov rcx, qword [rbp + 0x118]
mov rdx, qword [rbp + 0x120]
mov rax, qword [rbp + 0x1d8]
mov r8, qword [rbp + 0x1e0]
lea r9, [rbp + 0x290]
add r9, 8
mov qword [rbp + 0xc0], r9
lea r9, [rbp + 0x270]
add r9, 8
mov qword [rbp + 0xc8], r9
add r8, 8
mov qword [rbp + 0xd0], r8
add rax, 8
mov qword [rbp + 0xd8], rax
lea rax, [rbp + 0x240]
add rax, 8
mov qword [rbp + 0xe0], rax
lea rax, [rbp + 0x250]
add rax, 8
mov qword [rbp + 0xe8], rax
lea rax, [rbp + 0x230]
add rax, 8
mov qword [rbp + 0xf0], rax
lea rax, [rbp + 0x220]
add rax, 8
mov qword [rbp + 0xf8], rax
xor eax, eax
mov qword [rbp + 0x100], rdx
mov qword [rbp + 0x108], rcx
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0x100]
mov rcx, qword [rbp + 0x108]
mov rdx, qword [rbp + 0x110]
mov qword [rbp + 0xa8], rdx
mov qword [rbp + 0xb0], rcx
mov qword [rbp + 0xb8], rax
mov eax, dword [0x1401e4030]
xor eax, 0xd1986587
add eax, dword [0x1401e4034]
mov ecx, 0xcc02ac13
xor ecx, 0x3f340994
xor edx, edx
div ecx
mov ecx, 0xd149a174
xor ecx, 0x5f0779a9
add eax, ecx
add eax, 0x425b5c7f
mov ecx, 0x3f6201f7
xor ecx, 0x1f5b162d
cmp eax, ecx
jbe 0x1401c8d3f
mov rcx, qword [rbp + 0xa8]
mov eax, dword [0x1401e4038]
mov edx, dword [0x1401e403c]
xor edx, 0x2ffec5bf
xor eax, edx
mov r9d, eax
and r9d, 0x54b37cb3
xor r9d, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x54b37cb3
or eax, edx
and r9d, eax
xor r9d, 0xffffffff
mov edx, r9d
xor edx, 0xffffffff
mov eax, 0x370d43de
xor eax, 0x4f469c7
and eax, edx
mov r8d, 0xe485df1a
xor r8d, 0xd77cf503
mov edx, 0x149d04b5
xor edx, 0xeb62fb4a
xor r8d, edx
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0x9a3d3d1c
and edx, 0x33f92a19
and r8d, 0x9a3d3d1c
or eax, r9d
or edx, r8d
xor eax, edx
mov r9d, 0x389cb850
xor r9d, 0xab463fd7
mov edx, 0x6f7cc598
xor edx, 0x90833a67
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r9d, 0x3c4110c2
xor r9d, 0xaf9b9745
mov r8d, eax
and r8d, r9d
or eax, 0x93da8787
imul eax, r8d
add eax, edx
cmp rcx, 4
sete cl
mov byte [rbp + 0xa7], cl
cmp eax, 0x6f913a8c
je 0x1401c8d3f
mov al, byte [rbp + 0xa7]
test al, 1
jne 0x1401c8aa1
jmp 0x1401c7de6
mov rcx, qword [rbp + 0x1c8]
mov rdx, qword [rbp + 0xa8]
mov rax, qword [rbp + 0x208]
add rax, 8
shl rdx, 4
add rax, rdx
mov qword [rbp + 0x98], rax
mov edx, 0x30
sub rsp, 0x20
call fcn.1401b8d10
mov rax, qword [rbp + 0x98]
mov rdx, qword [rbp + 0x1c8]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x2a0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2a8], rax
lea rcx, [rbp + 0x2a0]
sub rsp, 0x20
call fcn.1400c6940
mov rax, qword [rbp + 0x200]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c894d
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xb8]
mov rdx, qword [rbp + 0x1c8]
cmp byte [rdx], 0
mov qword [rbp + 0x88], rcx
mov qword [rbp + 0x90], rax
je 0x1401c8952
mov rax, qword [rbp + 0x98]
mov rcx, qword [rax]
mov qword [rbp + 0x280], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x288], rax
lea rcx, [rbp + 0x290]
lea rdx, [rbp + 0x280]
xor eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.1400bef60
mov rcx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov rdx, qword [rbp + 0x290]
mov qword [rbp + 0x78], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x80], rcx
cmp byte [rax], 0
jne 0x1401c894d
mov rdx, qword [rbp + 0xb0]
mov rax, rdx
and rax, 1
mov rcx, rdx
or rcx, 1
add rax, rcx
mov qword [rbp + 0x70], rax
mov rcx, rdx
and rcx, 0xffffffffffffffff
shl rcx, 1
add rdx, 0xffffffffffffffff
sub rdx, rcx
or rax, rax
movabs rcx, 0x117a509bff7ad096
movabs r8, 0xee85af6400852f69
xor rcx, r8
xor rax, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jge 0x1401c7f8c
sub rsp, 0x20
call fcn.140007bb8
mov rcx, qword [rbp + 0xb0]
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
jmp 0x1401c889b
mov rcx, qword [rbp + 0x1d0]
mov word [rcx], 0x78d
sub rsp, 0x20
call fcn.140065650
mov rdx, qword [rbp + 0x200]
mov rcx, qword [rbp + 0x70]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0xb8]
mov qword [rbp + 0x58], r8
mov dl, byte [rdx]
mov r8b, 0x37
xor r8b, 0x37
cmp dl, r8b
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
jne 0x1401c889b
mov ecx, dword [0x1401e4040]
mov edx, dword [0x1401e4044]
mov eax, ecx
and eax, edx
mov r8d, 0x930a8e27
xor r8d, 0x6cf571d8
xor eax, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
and eax, 0xe53886e8
imul eax, eax, 0x883432ea
xor ecx, ecx
sub ecx, 0x84d95335
add eax, ecx
cmp eax, 0xa2efdd96
je 0x1401c8d48
mov eax, dword [0x1401e4048]
xor edx, edx
div dword [0x1401e404c]
mov ecx, eax
and ecx, 0xe6cfb11e
mov edx, 0xa7349262
xor edx, 0xa7349260
imul ecx, edx
xor eax, 0xe6cfb11e
add eax, ecx
mov ecx, 0xf3e0ebf3
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x70]
sub eax, 0x213ed38b
mov dword [rbp + 0x3c], eax
lea rcx, [rbp + 0x270]
sub rsp, 0x20
call fcn.140004b70
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x200]
mov eax, dword [rbp + 0x3c]
add rsp, 0x20
mov r8, qword [rbp + 0x270]
mov qword [rbp + 0x40], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x48], rdx
mov cl, byte [rcx]
mov dl, 0xa6
xor dl, 0xa6
cmp cl, dl
sete cl
mov byte [rbp + 0x57], cl
cmp eax, 0xe4197ed3
je 0x1401c8d48
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rbp + 0x70]
mov dl, byte [rbp + 0x57]
test dl, 1
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
jne 0x1401c80d7
jmp 0x1401c889b
mov rcx, qword [rbp + 0x1d8]
mov r8, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0x48]
mov r9, qword [rbp + 0x40]
mov r10, qword [rbp + 0x58]
mov r11, qword [r10]
mov qword [rbp + 0x260], r11
mov r10, qword [r10 + 8]
mov qword [rbp + 0x268], r10
mov qword [r8], r9
mov qword [rax], rdx
lea rdx, [rbp + 0x260]
sub rsp, 0x20
call fcn.1401c35e7
mov r8, qword [rbp + 0x1d8]
mov rdx, qword [rbp + 0xd8]
mov rcx, qword [rbp + 0x200]
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp + 0x20], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x28], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x30], rax
jne 0x1401c867d
mov ax, 0xfcc8
xor ax, 0xf8fa
mov word [rbp + 0x2be], ax
lea rcx, [rbp + 0x2be]
sub rsp, 0x20
call fcn.140065650
mov rcx, qword [rbp + 0x200]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0xb8]
mov qword [rbp + 0x10], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x18], rax
jne 0x1401c853e
mov r8, qword [rbp + 0x1f0]
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0x28]
mov r9, qword [rbp + 0x20]
mov qword [rbp + 0x240], r9
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x250]
lea rdx, [rbp + 0x240]
sub rsp, 0x20
call fcn.1401c35e7
mov rdx, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0x200]
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov r8, qword [rbp + 0x250]
mov qword [rbp], r8
mov rdx, qword [rdx]
mov qword [rbp + 8], rdx
mov cl, byte [rcx]
mov dl, 0x39
xor dl, 0x39
cmp cl, dl
mov qword [rbp + 0x18], rax
jne 0x1401c853e
lea rcx, [rbp + 0x2b0]
mov edx, 8
sub rsp, 0x20
call fcn.1401b8d10
mov rcx, qword [rbp + 0x180]
mov r11, qword [rbp]
mov r10, qword [rbp + 8]
mov r9, qword [rbp + 0xf0]
mov r8, qword [rbp + 0x78]
mov rdx, qword [rbp + 0x80]
mov rax, qword [rbp + 0xf8]
add rsp, 0x20
mov rcx, qword [rcx]
add rcx, 0x18
mov qword [rbp + 0x230], r11
mov qword [r9], r10
mov qword [rbp + 0x220], r8
mov qword [rax], rdx
lea rdx, [rbp + 0x230]
lea r8, [rbp + 0x220]
sub rsp, 0x20
call fcn.14011e410
mov rcx, qword [rbp + 0x200]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0xb8]
mov qword [rbp - 0x10], rdx
mov qword [rbp + 0x2b0], rdx
cmp byte [rcx], 0
mov qword [rbp - 8], rax
jne 0x1401c83dc
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.140095b42
mov rcx, qword [rbp + 0x200]
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 8], rax
jne 0x1401c83dc
mov r9, qword [rbp + 0xb8]
mov rax, r9
and rax, 1
movabs rdx, 0x24b2f87099a33c5d
movabs rcx, 0x24b2f87099a33c5c
xor rdx, rcx
mov rcx, r9
or rcx, rdx
add rax, rcx
mov rdx, r9
xor rdx, 0xffffffffffffffff
movabs rcx, 0x1099b9140f98b91d
and rdx, rcx
mov r8, 0xffffffffffffffff
movabs rcx, 0x1099b9140f98b91d
xor r8, rcx
and r9, r8
movabs rcx, 0xed89d153734ccfb4
movabs r10, 0x12762eac8cb3304b
xor rcx, r10
movabs r10, 0xe9d9cd7d1da8e6aa
movabs r11, 0x16263282e2571955
xor r10, r11
xor rcx, r10
movabs r10, 0x1099b9140f98b91d
and rcx, r10
and r8, 0xffffffffffffffff
or rdx, r9
or rcx, r8
xor rdx, rcx
mov rcx, rax
and rcx, rdx
movabs rdx, 0x7403cbd274523b2f
movabs r8, 0x7403cbd274523b2f
xor rdx, r8
cmp rcx, rdx
mov qword [rbp - 8], rax
jge 0x1401c83dc
sub rsp, 0x20
call fcn.140007bb8
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov qword [rbp - 8], rax
mov rax, qword [rbp - 8]
mov qword [rbp - 0x18], rax
mov eax, dword [0x1401e4050]
xor edx, edx
div dword [0x1401e4054]
add eax, 0xbef4cc0
mov ecx, 0x19e11f58
xor ecx, 0x31591777
sub eax, ecx
mov ecx, 0xe8a6ae2b
xor ecx, 0xe349e2eb
sub eax, ecx
mov ecx, 0xf08a246e
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xd20c321c
xor ecx, 0xffffffff
and ecx, 0xd20c321c
shl ecx, 1
mov edx, 0xaf29fd6
xor edx, 0xd8feadca
sub ecx, edx
sub eax, ecx
mov ecx, 0x3a1ff81
xor ecx, 0x34c9b927
cmp eax, ecx
jb 0x1401c8d51
mov rdx, qword [rbp + 8]
mov eax, dword [0x1401e4058]
mov ecx, 0x3a1405ae
xor ecx, 0xb932b34c
xor eax, ecx
xor eax, dword [0x1401e405c]
xor eax, 0x77e9b741
mov ecx, eax
xor ecx, 0xb607f899
mov r8d, 0xffffffff
xor r8d, 0xb607f899
and eax, r8d
shl eax, 1
sub eax, ecx
mov ecx, 0x3fa07f0a
xor ecx, 0x5a5d7d7f
xor eax, ecx
mov ecx, 0xda7dbd78
xor ecx, 0x158e04d2
cmp rdx, 0
sete dl
mov byte [rbp - 0x19], dl
cmp eax, ecx
ja 0x1401c8450
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x19]
test cl, 1
mov qword [rbp + 0x18], rax
jne 0x1401c853e
jmp 0x1401c84d2
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp + 8]
mov rcx, qword [rcx]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
movabs r8, 0xddc51f983e977f2d
movabs r9, 0x223ae067c16880d2
xor r8, r9
xor rdx, r8
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x18], rax
jne 0x1401c853e
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.14000de03
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov qword [rbp + 0x18], rax
mov rax, qword [rbp + 0x18]
mov qword [rbp - 0x28], rax
mov eax, dword [0x1401e4060]
mov edx, dword [0x1401e4064]
or eax, eax
mov ecx, 0x1eafff8
xor ecx, 0xfe150007
xor eax, ecx
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edx, 0x5ffa2cd1
xor edx, 0xa0da3232
mov ecx, eax
xor ecx, edx
mov edx, 0x91f1fc4c
xor edx, 0x6e0e03b3
xor ecx, edx
mov edx, 0x5037c6b9
xor edx, 0xaf17d85a
or eax, edx
and eax, ecx
mov ecx, 0x2a3924c2
xor edx, edx
div ecx
sub eax, 0x9b02e53a
cmp eax, 0x1db76368
je 0x1401c8d5a
mov rdx, qword [rbp + 0x28]
mov eax, dword [0x1401e4068]
mov ecx, dword [0x1401e406c]
mov r8d, 0xa532a755
xor r8d, 0xa1001d5
xor ecx, r8d
and eax, ecx
mov ecx, 0x294cec61
xor ecx, 0xfed5a0b1
or eax, ecx
add eax, 0xf9f734ab
mov ecx, eax
and ecx, 0xec7e775
mov r8d, 0x237e816d
xor r8d, 0x237e816f
imul ecx, r8d
xor eax, 0xec7e775
add eax, ecx
mov ecx, 0xc8908148
xor ecx, 0x5b3d31bc
cmp rdx, 0
sete dl
mov byte [rbp - 0x29], dl
cmp eax, ecx
jbe 0x1401c8d5a
mov rax, qword [rbp - 0x28]
mov cl, byte [rbp - 0x29]
test cl, 1
mov qword [rbp + 0x30], rax
jne 0x1401c867d
jmp 0x1401c8641
mov rax, qword [rbp - 0x28]
mov rdx, qword [rbp + 0x28]
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
mov qword [rbp + 0x30], rax
jne 0x1401c867d
mov rcx, qword [rbp + 0x28]
sub rsp, 0x20
call fcn.14000de03
mov rax, qword [rbp - 0x28]
add rsp, 0x20
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x38], rax
mov r11d, dword [0x1401e4070]
mov r10d, dword [0x1401e4074]
mov eax, 0xdd4fdbc5
xor eax, 0x22b0243a
mov ecx, r11d
xor ecx, eax
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x912285db
mov eax, ecx
and eax, 0x912285db
and r11d, edx
mov r9d, r8d
and r9d, 0x912285db
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x912285db
and ecx, edx
or eax, ecx
mov ecx, 0x503282d3
xor ecx, 0xbfc1fb6
imul eax, ecx
add eax, 0x102c6a00
xor eax, 0xbdb58616
cmp eax, 0xfa101f75
je 0x1401c8d63
mov eax, dword [0x1401e4078]
and eax, dword [0x1401e407c]
mov ecx, 0x5e160f5
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x48]
mov r8d, 0x72158b42
xor r8d, 0x2402ca34
mov ecx, eax
xor ecx, r8d
xor ecx, 0xffffffff
mov r8d, 0x9625f5a6
xor r8d, 0xc032b4d0
or eax, r8d
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xffe49fe6
xor r8d, r8d
sub r8d, 1
sub ecx, r8d
sub eax, ecx
mov ecx, 0xfb2d945e
xor ecx, 0xb8397596
cmp rdx, 0
sete dl
mov byte [rbp - 0x39], dl
cmp eax, ecx
je 0x1401c8d63
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp + 0x70]
mov dl, byte [rbp - 0x39]
test dl, 1
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
jne 0x1401c889b
jmp 0x1401c879c
mov eax, dword [0x1401e4080]
xor edx, edx
div dword [0x1401e4084]
mov ecx, 0x55bfa4f3
xor ecx, 0xa3388fe2
xor edx, edx
div ecx
or eax, 0xad18e35d
sub eax, 0xb7ec6ba0
cmp eax, 0x61822f88
je 0x1401c8d6c
mov eax, dword [0x1401e4088]
xor eax, 0x3a5cdb57
and eax, dword [0x1401e408c]
mov ecx, 0x17608740
xor ecx, 0x7791a2d7
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x48]
mov ecx, 0x5ab0e760
xor ecx, 0x1a07d1cc
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x76e7daaf
mov r8d, 0xffffffff
xor r8d, 0x76e7daaf
and eax, r8d
sub eax, ecx
mov ecx, 0x3f6f0e93
xor ecx, 0x5f22b4c3
mov r8, qword [rdx]
mov r9, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor r9, rdx
mov rdx, r8
xor rdx, r9
and rdx, r8
cmp rdx, 0
sete dl
mov byte [rbp - 0x3a], dl
cmp eax, ecx
je 0x1401c8d6c
mov rax, qword [rbp - 0x38]
mov rcx, qword [rbp + 0x70]
mov dl, byte [rbp - 0x3a]
test dl, 1
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
jne 0x1401c887a
jmp 0x1401c889b
mov rcx, qword [rbp + 0x48]
sub rsp, 0x20
call fcn.14000de03
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x68]
mov qword [rbp - 0x50], rdx
mov qword [rbp - 0x48], rcx
cmp rax, 0
je 0x1401c891e
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xbc00f157e24f968c
movabs r8, 0x43ff0ea81db06973
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401c891e
mov rcx, qword [rbp + 0x80]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp + 0x200]
mov dl, byte [rdx]
mov r8b, 0xf3
xor r8b, 0xf3
cmp dl, r8b
mov qword [rbp + 0x88], rcx
mov qword [rbp + 0x90], rax
je 0x1401c8952
jmp 0x1401c8c81
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x90]
mov qword [rbp - 0x60], rcx
mov qword [rbp - 0x58], rax
mov eax, dword [0x1401e4090]
add eax, dword [0x1401e4094]
mov ecx, 0xea13a1d
xor edx, edx
div ecx
add eax, 0x7f4455
sub eax, 0xaf33cd79
mov ecx, 0xcb1dd8f0
xor ecx, 0xcb629ca5
sub eax, ecx
sub eax, 0xa60fa41f
cmp eax, 0xad9946d4
jae 0x1401c8d75
mov rcx, qword [rbp + 0xa8]
mov eax, dword [0x1401e4098]
or eax, dword [0x1401e409c]
mov edx, 0x3ad84f90
xor edx, 0x88c504a7
imul eax, edx
mov edx, 0xffffffff
xor edx, 0xeb3ef899
mov esi, eax
xor esi, edx
and esi, eax
mov edx, esi
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xe6f096c7
mov r9d, 0xffffffff
xor r9d, 0xe664e429
mov eax, edx
and eax, 0xe664e429
and esi, r9d
mov r11d, 0x4be61f6d
xor r11d, 0xad82fb44
mov r10d, r8d
and r10d, r11d
mov r11d, 0xfaa027bc
xor r11d, 0x1c50b17b
and r11d, r9d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r8d
mov r8d, 0x1812b682
xor r8d, 0xe7ed497d
xor edx, r8d
mov r8d, 0xb1177012
xor r8d, 0x5773943b
or r8d, r9d
and edx, r8d
or eax, edx
movabs rdx, 0x6417009aea7f36d2
movabs r8, 0x6417009aea7f36d3
xor rdx, r8
add rcx, rdx
mov qword [rbp - 0x68], rcx
cmp eax, 0x24e5b105
jbe 0x1401c89a4
mov rax, qword [rbp - 0x68]
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x58]
mov qword [rbp + 0x100], rdx
mov qword [rbp + 0x108], rcx
mov qword [rbp + 0x110], rax
jmp 0x1401c7c71
mov eax, dword [0x1401e40a0]
mov edx, dword [0x1401e40a4]
mov ecx, eax
xor ecx, edx
mov r8d, 0xfe1add4
xor r8d, 0xf01e522b
xor ecx, r8d
or eax, edx
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0x5c542d22
and eax, 0x5c542d22
xor eax, 0xffffffff
mov edx, 0xa6d8694d
xor edx, 0x592796b2
xor ecx, edx
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
and eax, 0xe27d72c6
xor ecx, 0xe27d72c6
or eax, ecx
mov ecx, 0x458e24ca
xor ecx, 0x3f1d8630
xor edx, edx
div ecx
cmp eax, 0xaa83e9df
ja 0x1401c8d7e
mov eax, dword [0x1401e40a8]
mov ecx, dword [0x1401e40ac]
xor eax, ecx
or eax, 0x73454dc3
add eax, 0xb42a36c2
imul rax, rax, 0x60248653
shr rax, 0x3e
mov dword [rbp - 0x70], eax
mov eax, 0xe234fd7f
mov dword [rbp - 0x74], eax
sub rsp, 0x20
mov cx, 0x4cd
call fcn.1400654f7
mov rdx, qword [rbp + 0x200]
mov r9, qword [rbp + 0xb8]
mov ecx, dword [rbp - 0x74]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x70]
mov dl, byte [rdx]
test dl, dl
sete dl
sub r8, r9
setl r8b
and dl, r8b
mov byte [rbp - 0x69], dl
cmp eax, ecx
je 0x1401c8d7e
mov al, byte [rbp - 0x69]
test al, 1
jne 0x1401c8b99
jmp 0x1401c8c81
mov eax, dword [0x1401e40b0]
mov ecx, dword [0x1401e40b4]
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
and eax, 0x491f0e85
or eax, 0x806df1a3
imul eax, eax, 0xdf357133
mov ecx, 0x59cd00bf
xor ecx, 0x5f2d285b
cmp eax, ecx
jbe 0x1401c8d87
mov rcx, qword [rbp + 0x180]
mov edx, dword [str.C2v]
xor edx, 0xde515cef
mov r8d, dword [0x1401e40bc]
mov eax, 0xe80d6af0
xor eax, 0xd1eb7606
xor r8d, eax
mov r9d, 0x1b39bfa5
xor r9d, 0xe4c6405a
mov eax, edx
xor eax, r9d
mov r10d, 0xcd9735e3
xor r10d, 0x3268ca1c
mov r9d, r8d
xor r9d, r10d
and eax, r9d
xor edx, 0xffffffff
mov r9d, 0xf639a075
xor r9d, 0x9c65f8a
xor r8d, r9d
and edx, r8d
or eax, edx
mov edx, 0xf530398c
xor edx, 0xacfc673
xor eax, edx
imul eax, eax, 0x4f40ddd2
mov edx, 0x67f9b192
xor edx, 0xc1922916
imul eax, edx
add eax, 0x7d58e513
add eax, 0x5b6951cd
sub eax, 0x7d58e513
mov rcx, qword [rcx]
mov rcx, qword [rcx + 0x38]
mov byte [rcx], 1
cmp eax, 0x27a4e990
je 0x1401c8bd0
jmp 0x1401c8c81
mov rcx, qword [rbp + 0x1f8]
mov rax, qword [rbp + 0x208]
mov qword [rcx], 4
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140017970
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xfc
xor cl, 0xfc
cmp al, cl
je 0x1401c8d35
sub rsp, 0x20
call fcn.1401b93b9
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp word [rax + 0x12], 1
jle 0x1401c8d35
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401c8d35
mov rax, qword [rbp + 0x200]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401b93cb
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14009428e
mov rax, qword [rbp + 0x200]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c8d35
sub rsp, 0x20
call fcn.1401b9402
add rsp, 0x20
lea rsp, [rbp + 0x318]
pop rsi
pop rbp
ret
shr dl, cl
sub edx, eax
jmp 0x1401c7ce0
stosd dword [rdi], eax
scasb al, byte [rdi]
xor ebp, edx
jmp 0x1401c8022
add eax, dword [rbx - 0x91627e0]
idiv bh
call rax
invalid
rol byte [rdi], 1
ror byte [rdi - 0x17], cl
push rsp
clc
invalid
pop rax
insb byte [rdi], dx
sahf
fsubr st(1)
wait
stc
invalid
pop rbx
xor ebx, dword [rsp + riz*8]
jmp 0x1401c87ce
xchg dword [0x167059e67], eax
cld
invalid
and al, 0xc0
jg 0x1401c8d6c
nop
std
invalid
movsb byte [rdi], byte [rsi]
movabs dword [0x4855fffffe40e979], eax
push rbp
sub rsp, 0x1b0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x128], rcx
mov r8d, dword [0x1401e40c0]
mov eax, dword [0x1401e40c4]
xor eax, 0xd8f82403
mov ecx, 0xa82a7326
xor ecx, 0x436bdd07
sub r8d, ecx
sub r8d, eax
mov eax, 0x971c2bf9
xor eax, 0x7c5d85d8
add r8d, eax
mov eax, r8d
add eax, 1
xor r8d, 0xffffffff
or r8d, 0x71d6c0f4
add r8d, eax
or r8d, 0xa099a0
mov ecx, 0x945ac19
xor ecx, 0xf6ba53e6
mov eax, r8d
xor eax, ecx
and eax, 0xb608d575
mov r9d, 0xffffffff
xor r9d, 0xb608d575
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0x9ee6271c
and ecx, 0xb608d575
mov edx, 0x58e0a3d3
xor edx, 0xc60684cf
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0xe6fdcec
jb 0x1401c9ccd
mov ecx, dword [0x1401e40c8]
xor ecx, 0xd9e3898
mov eax, dword [0x1401e40cc]
sub ecx, eax
or ecx, 0xf77fbfa5
mov edx, ecx
and edx, 0x4a172708
add edx, edx
mov eax, ecx
neg edx
mov ecx, edx
lea eax, [rax + rcx + 0x4a172708]
mov dword [rbp + 0x114], eax
mov eax, 0x10
mov qword [rbp + 0xe0], rax
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xf8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x38], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x40], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x48], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x50], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x58], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x60], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x68], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x70], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x78], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x80], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x88], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x90], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0x98], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xa0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xa8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xb0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xb8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xc0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xc8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xd0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xd8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xe0]
mov rcx, rsp
mov qword [rbp + 0xe8], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf0], rax
sub rsp, 0x20
call fcn.1401ca94e
mov rcx, qword [rbp + 0xf8]
add rsp, 0x20
mov qword [rbp + 0x108], rax
add rax, 0x60
mov qword [rbp + 0x100], rax
mov ax, 0x837f
xor ax, 0x81db
mov word [rcx], ax
sub rsp, 0x20
call fcn.140065650
mov rcx, qword [rbp + 0x108]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x114]
mov qword [rbp + 0x118], rdx
mov cl, byte [rcx + 0x60]
mov dl, 0xae
xor dl, 0xae
cmp cl, dl
sete cl
mov byte [rbp + 0x127], cl
cmp eax, 0x3d105cef
jb 0x1401c9ccd
mov al, byte [rbp + 0x127]
test al, 1
jne 0x1401c9147
jmp 0x1401c95d5
mov rcx, qword [rbp + 0x48]
mov r8, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x118]
mov r9, qword [0x1401eea38]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1401c35e7
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x100]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x28], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x30], rcx
cmp byte [rax], 0
jne 0x1401c95d5
movabs rcx, 0xc44049349444e525
movabs rax, 0xc44049349444e524
xor rcx, rax
movabs rdx, 0xe91b18848cec5dab
movabs rax, 0xe91b18848cec5da3
xor rdx, rax
movabs r8, 0x888c2563386407c4
movabs rax, 0x888c2563386407cc
xor r8, rax
sub rsp, 0x20
call fcn.14000fb25
add rsp, 0x20
mov qword [rbp + 0x10], rax
movabs rcx, 0x239d00c9336b2653
movabs rax, 0x239d00c9336b264b
xor rcx, rax
movabs rdx, 0x9427804fe9c96a33
movabs rax, 0x9427804fe9c96a3b
xor rdx, rax
sub rsp, 0x20
call fcn.14001b340
mov rcx, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rbp + 0x18], rax
mov word [rcx], 0xae7
sub rsp, 0x20
call fcn.140065650
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x100]
mov qword [rbp + 0x20], rcx
cmp byte [rax], 0
jne 0x1401c94bf
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x68]
mov rax, qword [rbp + 0x20]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001b4f8
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbp + 0x18]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0xa27
sub rsp, 0x20
call fcn.140065c5f
mov rcx, qword [rbp + 0x18]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x100]
mov dword [rcx + 0x10], edx
cmp byte [rax], 0
jne 0x1401c94bf
mov cx, 0x264b
xor cx, 0x2753
sub rsp, 0x20
call fcn.140065c5f
mov rcx, qword [rbp + 0x18]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x100]
mov dword [rcx + 0x14], edx
mov al, byte [rax]
mov cl, 0x54
xor cl, 0x54
cmp al, cl
jne 0x1401c94bf
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x18]
mov qword [rax + 8], rcx
mov ecx, 0x9a0
sub rsp, 0x20
call fcn.140065c5f
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x100]
mov dword [rbp + 0xc], ecx
cmp byte [rax], 0
jne 0x1401c94bf
mov r8d, dword [rbp + 0xc]
mov rdx, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x10]
mov r9, qword [rbp + 0x30]
mov r10, qword [rbp + 0x28]
mov qword [rcx], r10
mov qword [rcx + 8], r9
mov qword [rdx], 1
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401397f0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x100]
mov qword [rbp], rcx
cmp byte [rax], 0
jne 0x1401c94bf
mov rcx, qword [rbp + 0x40]
mov word [rcx], 0x298
sub rsp, 0x20
call fcn.140065650
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x100]
mov qword [rbp - 8], rcx
cmp byte [rax], 0
jne 0x1401c94bf
mov rcx, qword [rbp + 0x80]
mov rdx, qword [rbp + 0x88]
mov rax, qword [rbp - 8]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001b4f8
mov rdx, qword [rbp + 0x80]
mov r9, qword [rbp + 0x128]
mov rax, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x98]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rdx + 8]
mov r9, qword [r9]
add r9, 0x18
mov qword [rbp - 0x18], r9
mov qword [rax], r8
mov qword [rax + 8], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rbp]
mov r8, qword [rbp + 0x90]
mov rax, qword [rbp + 0x98]
add rsp, 0x20
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140139430
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 0x100]
mov dword [rbp - 0xc], ecx
cmp byte [rax], 0
jne 0x1401c94bf
sub rsp, 0x20
mov cx, 0x6b1
call fcn.1400654f7
mov edx, dword [rbp - 0xc]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x100]
mov al, byte [rax]
test al, al
sete al
movsxd rdx, edx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1401c94ae
jmp 0x1401c94bf
mov rax, qword [rbp + 0x128]
mov rax, qword [rax]
mov rax, qword [rax + 0x38]
mov byte [rax], 1
mov rax, qword [rbp + 0x30]
cmp rax, 0
je 0x1401c95da
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
movabs rcx, 0x8d23855ee651f87f
movabs rdx, 0xcd23855ee651f87f
xor rcx, rdx
and rax, rcx
movabs rcx, 0xbf45ce7579bef4e3
movabs rdx, 0xbf45ce7579bef4e3
xor rcx, rdx
cmp rax, rcx
jne 0x1401c95da
mov ecx, dword [0x1401e40d0]
mov eax, dword [0x1401e40d4]
mov edx, 0xeb621273
xor edx, 0x1b2b3407
sub ecx, edx
add ecx, eax
add ecx, 0xf0492674
and ecx, 0x851ecf03
and ecx, 0xecb7a542
mov edx, 0x6ce0f26b
xor edx, 0x2189f493
mov eax, ecx
and eax, edx
or ecx, 0x4d6906f8
add eax, ecx
cmp eax, 0x95519d7f
jbe 0x1401c9cd6
mov rcx, qword [rbp + 0x30]
mov r8d, dword [0x1401e40d8]
imul r8d, dword [0x1401e40dc]
mov edx, r8d
xor edx, 0xd0dae8c
mov eax, 0xffffffff
xor eax, 0xd0dae8c
and r8d, eax
mov eax, 0x224c3cac
xor eax, 0x224c3cae
imul eax, r8d
sub eax, edx
mov edx, 0x6bd1861e
xor edx, 0x70f8c13d
add eax, edx
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x799386d7
add eax, edx
mov dword [rbp - 0x1c], eax
sub rsp, 0x20
call fcn.14000de03
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
cmp eax, 0x1b72367a
je 0x1401c9cd6
jmp 0x1401c95da
jmp 0x1401c9b0e
mov rax, qword [rbp + 0x100]
mov al, byte [rax]
cmp al, 0
jne 0x1401c9b0e
mov eax, dword [0x1401e40e0]
xor eax, 0xa16f19e1
xor edx, edx
div dword [0x1401e40e4]
mov r11d, eax
add r11d, 0x14e2a7d4
sub r11d, 0x3ed6aba9
sub r11d, 0x14e2a7d4
mov eax, 0x6048232d
xor eax, 0x9fb7dcd2
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x32c2a15
mov edx, 0xffffffff
xor edx, 0x132c6db8
mov eax, ecx
and eax, 0x132c6db8
and r11d, edx
mov r9d, r8d
and r9d, 0x132c6db8
mov r10d, edx
and r10d, 0x32c2a15
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x132c6db8
and ecx, edx
or eax, ecx
mov ecx, 0x7e44abb1
xor ecx, 0xbd776054
add eax, ecx
mov ecx, 0x642bf4e1
xor ecx, 0x23b5dfbd
cmp eax, ecx
jb 0x1401c9cdf
mov eax, dword [0x1401e40e8]
mov ecx, dword [0x1401e40ec]
mov edx, 0x46e2bdd7
xor edx, 0xb411fbc6
xor ecx, edx
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0x5de3356a
xor edx, 0x11799094
or eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x4a5c3ed0
mov edx, 0x4f82efc5
xor edx, 0x4f82efc5
mov r8d, 0xeabbf30c
xor r8d, 0xeabbf30d
sub edx, r8d
sub ecx, edx
sub eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xb4da718
mov edx, 0x193f2863
xor edx, 0x12728f7b
mov r8d, 0x41c0bb4b
xor r8d, 0xbe3f44b4
xor edx, r8d
or ecx, edx
mov edx, 0x90affe46
xor edx, 0x6f5001b9
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov dword [rbp - 0x2c], eax
mov ecx, 1
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.14000fb25
add rsp, 0x20
mov qword [rbp - 0x40], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001b340
mov rcx, qword [rbp + 0xa0]
add rsp, 0x20
mov qword [rbp - 0x38], rax
mov word [rcx], 0x699
sub rsp, 0x20
call fcn.140065650
mov rcx, qword [rbp + 0x100]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x2c]
mov qword [rbp - 0x28], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x1d], cl
cmp eax, 0x3a611b4c
jbe 0x1401c9cdf
mov al, byte [rbp - 0x1d]
test al, 1
jne 0x1401c97bc
jmp 0x1401c9ae7
mov rcx, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0xb8]
mov rax, qword [rbp - 0x28]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001b4f8
mov rcx, qword [rbp + 0xb0]
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov cx, 0x2261
xor cx, 0x28fb
sub rsp, 0x20
call fcn.140065c5f
mov rcx, qword [rbp - 0x38]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x100]
mov dword [rcx + 0x10], edx
cmp byte [rax], 0
jne 0x1401c9ae7
mov ecx, 0xc0
sub rsp, 0x20
call fcn.140065c5f
mov rcx, qword [rbp - 0x38]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x100]
mov dword [rcx + 0x14], edx
cmp byte [rax], 0
jne 0x1401c9ae7
mov rax, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x38]
mov qword [rax + 8], rcx
mov ecx, 0xb41
sub rsp, 0x20
call fcn.140065c5f
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x100]
mov dword [rbp - 0x44], ecx
cmp byte [rax], 0
jne 0x1401c9ae7
mov r8d, dword [rbp - 0x44]
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0xc0]
mov rax, qword [rbp - 0x40]
mov r9, qword [0x1401eeae8]
mov r10, qword [r9]
mov qword [rcx], r10
mov r9, qword [r9 + 8]
mov qword [rcx + 8], r9
mov qword [rdx], 1
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401397f0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x100]
mov qword [rbp - 0x50], rcx
cmp byte [rax], 0
jne 0x1401c9ae7
mov rcx, qword [rbp + 0xa8]
mov ax, 0x16a4
xor ax, 0x16a3
mov word [rcx], ax
sub rsp, 0x20
call fcn.140065650
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x100]
mov qword [rbp - 0x58], rcx
cmp byte [rax], 0
jne 0x1401c9ae7
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xd8]
mov rax, qword [rbp - 0x58]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001b4f8
mov rdx, qword [rbp + 0xd0]
mov r9, qword [rbp + 0x128]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0xf0]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rdx + 8]
mov r9, qword [r9]
add r9, 0x18
mov qword [rbp - 0x68], r9
mov qword [rax], r8
mov qword [rax + 8], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rbp - 0x50]
mov r8, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
add rsp, 0x20
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140139430
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 0x100]
mov dword [rbp - 0x5c], ecx
mov al, byte [rax]
mov cl, 0x96
xor cl, 0x96
cmp al, cl
jne 0x1401c9ae7
mov ecx, 0x148
sub rsp, 0x20
call fcn.1400654f7
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x100]
mov qword [rbp - 0x70], rcx
mov al, byte [rax]
mov cl, 0x66
xor cl, 0x66
cmp al, cl
jne 0x1401c9ae7
mov rax, qword [rbp - 0x70]
mov ecx, dword [rbp - 0x5c]
movsxd rcx, ecx
cmp rax, rcx
jl 0x1401c9aec
mov eax, dword [0x1401e40f0]
add eax, dword [0x1401e40f4]
sub eax, 0x1ba01c6a
add eax, 0xd3284c99
mov ecx, 0x5f3796f8
xor ecx, 0x44978a92
add eax, ecx
mov ecx, 0xb0a5906b
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xef44c6b1
mov edx, 0xffffffff
xor edx, 0xef44c6b1
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0xf7661f0c
ja 0x1401c9ce8
mov eax, dword [0x1401e40f8]
xor eax, dword [0x1401e40fc]
mov ecx, 0x2d707a92
xor ecx, 0x488028fc
xor edx, edx
div ecx
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x7943ad1c
mov r9d, 0xffffffff
xor r9d, 0x7943ad1c
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0x834a66b6
and ecx, 0x7943ad1c
mov edx, 0x85205dd8
xor edx, 0x66a3b6e
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x94c1f29a
xor edx, edx
div ecx
cmp eax, 0xd13e668e
je 0x1401c9a6f
jmp 0x1401c9cc4
jmp 0x1401c9b0e
mov rax, qword [rbp + 0x100]
mov rcx, qword [rbp + 0x128]
mov rcx, qword [rcx]
mov rcx, qword [rcx + 0x38]
mov byte [rcx], 1
mov al, byte [rax]
cmp al, 0
je 0x1401c9cc4
sub rsp, 0x20
call fcn.1401b93b9
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp word [rax + 0x12], 1
jle 0x1401c9cc4
mov eax, dword [0x1401e4100]
mov ecx, dword [0x1401e4104]
xor ecx, 0xd6a6c27
xor edx, edx
div ecx
mov ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x28dba828
xor ecx, 0x28dba828
mov edx, 0x9c367183
xor edx, 0x3d03eb2f
sub ecx, edx
add eax, ecx
mov edx, 0x1e1f622e
xor edx, 0x1e1f622e
sub edx, eax
mov ecx, 0xc95f7a57
xor ecx, 0x36a085a8
mov eax, edx
xor eax, ecx
mov ecx, 0x723e7964
xor ecx, 0x417db098
and eax, ecx
mov ecx, 0x723f6c9d
xor ecx, 0x417ca561
mov r8d, 0xb47a7c46
xor r8d, 0x4b8583b9
xor ecx, r8d
and edx, ecx
sub edx, eax
mov eax, 0x68ef2b52
xor eax, 0xc2388a71
mov ecx, edx
xor ecx, eax
mov eax, 0xb59eeb11
xor eax, 0x1f494a32
mov r8d, 0x8b83cd39
xor r8d, 0x747c32c6
xor eax, r8d
and edx, eax
mov eax, 0x6252dfcb
xor eax, 0x6252dfc9
imul eax, edx
sub eax, ecx
cmp eax, 0x46ffe93c
jbe 0x1401c9cf1
mov eax, dword [0x1401e4108]
mov ecx, 0x9ce31614
xor ecx, 0x154e5c53
xor eax, ecx
xor eax, dword [0x1401e410c]
mov edx, 0x4663c16b
xor edx, 0xf5c02cf2
mov ecx, 0xa3e16668
xor ecx, 0x5c1e9997
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xb3a3ed99
add eax, edx
sub eax, ecx
sub eax, 0x34a64538
mov ecx, 0x513e1443
xor ecx, 0x9ead7de9
xor edx, edx
div ecx
mov rdx, qword [rbp - 0x78]
mov ecx, 0x391e94a8
xor ecx, 0xb0fae4de
mov rdx, qword [rdx + 0x18]
cmp dword [rdx + 8], 0xd4054986
sete dl
mov byte [rbp - 0x79], dl
cmp eax, ecx
je 0x1401c9bef
mov al, byte [rbp - 0x79]
test al, 1
jne 0x1401c9c7c
jmp 0x1401c9cc4
mov rax, qword [rbp + 0x100]
mov cl, 0xa
xor cl, 0xa
add byte [rcx + 0xaf1800a], dh
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401b93cb
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14009428e
mov rax, qword [rbp + 0x100]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c9cc4
sub rsp, 0x20
call fcn.1401b9402
add rsp, 0x20
lea rsp, [rbp + 0x130]
pop rbp
ret
movabs eax, dword [0xfffff172e9781752]
ja 0x1401c9c82
invalid
jo 0xed05e98b
stc
invalid
imul eax, dword [rbp + 0x7ee9bed0], 0xfffffffd
invalid
invalid