Function at 0x1401c5840
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x360
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x100], rcx
mov eax, 0x10
mov qword [rbp + 0x148], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x160], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x108], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x110], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x118], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x120], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x128], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x130], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x138], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x140], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x148]
mov rcx, rsp
mov qword [rbp + 0x150], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x158], rax
sub rsp, 0x20
call fcn.1401d0e32
mov rcx, qword [rbp + 0x160]
add rsp, 0x20
mov qword [rbp + 0x170], rax
add rax, 0x60
mov qword [rbp + 0x168], rax
mov word [rcx], 0x1e3
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x170]
mov qword [rbp + 0x178], rcx
cmp byte [rax + 0x60], 0
jne 0x1401c7148
mov rax, qword [rbp + 0x178]
mov rcx, qword [0x140208958]
mov rdx, qword [rcx]
mov qword [rbp + 0x2b0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x2b8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x2a0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2a8], rax
lea rcx, [rbp + 0x2c0]
lea rdx, [rbp + 0x2b0]
lea r8, [rbp + 0x2a0]
sub rsp, 0x20
call fcn.1401c5754
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov rcx, qword [rbp + 0x2c0]
mov qword [rbp + 0xf0], rcx
mov rcx, qword [rbp + 0x2c8]
mov qword [rbp + 0xf8], rcx
cmp byte [rax], 0
jne 0x1401c7148
mov word [rbp + 0x2de], 0x17a
lea rcx, [rbp + 0x2de]
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0xe8], rcx
mov al, byte [rax]
mov cl, 0xea
xor cl, 0xea
cmp al, cl
jne 0x1401c70e2
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0xf0]
mov qword [rbp + 0x280], rdx
mov qword [rbp + 0x288], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x270], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x278], rax
lea rcx, [rbp + 0x290]
lea rdx, [rbp + 0x280]
lea r8, [rbp + 0x270]
sub rsp, 0x20
call fcn.1401c5754
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov rcx, qword [rbp + 0x290]
mov qword [rbp + 0xd8], rcx
mov rcx, qword [rbp + 0x298]
mov qword [rbp + 0xe0], rcx
mov al, byte [rax]
mov cl, 5
xor cl, 5
cmp al, cl
jne 0x1401c70e2
mov eax, dword [0x1401fdf70]
xor edx, edx
div dword [0x1401fdf74]
mov ecx, eax
or ecx, 0x8060e2d
mov eax, 0xfc57e92e
xor eax, 0xda2a3504
imul ecx, eax
mov edx, 0xffffffff
xor edx, 0x421c2abf
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0xc52b660a
je 0x1401c735c
mov r11d, dword [0x1401fdf78]
mov r10d, dword [0x1401fdf7c]
mov ecx, r11d
xor ecx, 0xffffffff
mov eax, 0xe2c17a13
xor eax, 0x1d3e85ec
mov r8d, r10d
xor r8d, eax
mov edx, 0xffffffff
xor edx, 0xf7b73e53
mov eax, ecx
and eax, 0xf7b73e53
and r11d, edx
mov r9d, r8d
and r9d, 0xf7b73e53
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x5453464b
xor r8d, 0xabacb9b4
xor ecx, r8d
or edx, 0xf7b73e53
and ecx, edx
or eax, ecx
sub eax, 0x8f0c1615
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xfa2b03ce
mov ecx, 0xffffffff
xor ecx, 0x74f7db5b
or eax, edx
or ecx, 0x74f7db5b
mov edx, 0x61c79791
xor edx, 0x9e38686e
xor eax, edx
and eax, ecx
xor ecx, ecx
sub ecx, 0x922ea6cc
add eax, ecx
mov dword [rbp + 0xc4], eax
mov ecx, 2
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140012e10
add rsp, 0x20
mov qword [rbp + 0xb0], rax
movabs rcx, 0xeb4cb8e933375c12
movabs rax, 0xeb4cb8e933375c0a
xor rcx, rax
movabs rdx, 0xfa77d0b1147fb7cf
movabs rax, 0xfa77d0b1147fb7c7
xor rdx, rax
sub rsp, 0x20
call fcn.14001fda0
add rsp, 0x20
mov qword [rbp + 0xb8], rax
mov word [rbp + 0x2dc], 0x3ef
lea rcx, [rbp + 0x2dc]
sub rsp, 0x20
call fcn.14006d720
mov rcx, qword [rbp + 0x168]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0xc4]
mov qword [rbp + 0xc8], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xd7], cl
cmp eax, 0x4df53e09
jb 0x1401c735c
mov al, byte [rbp + 0xd7]
test al, 1
jne 0x1401c5cc5
jmp 0x1401c708c
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rax]
mov qword [rbp + 0x250], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x258], rax
lea rcx, [rbp + 0x260]
lea rdx, [rbp + 0x250]
sub rsp, 0x20
call fcn.140020190
mov rax, qword [rbp + 0xb8]
add rsp, 0x20
mov rdx, qword [rbp + 0x260]
mov rcx, qword [rbp + 0x268]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x5c5
sub rsp, 0x20
call fcn.14006dfa0
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x168]
mov dword [rcx + 0x10], edx
cmp byte [rax], 0
jne 0x1401c708c
mov ecx, 0x7e8
sub rsp, 0x20
call fcn.14006dfa0
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x168]
mov dword [rcx + 0x14], edx
cmp byte [rax], 0
jne 0x1401c708c
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xb8]
mov qword [rax + 8], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001fda0
add rsp, 0x20
mov qword [rbp + 0xa0], rax
mov word [rbp + 0x2da], 0x6cb
lea rcx, [rbp + 0x2da]
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0xa8], rcx
cmp byte [rax], 0
jne 0x1401c708c
mov eax, dword [0x1401fdf80]
mov ecx, dword [0x1401fdf84]
xor ecx, 0x73217065
xor edx, edx
div ecx
mov ecx, 0xb596392d
xor edx, edx
div ecx
sub eax, 0xd46a3e71
mov ecx, 0x795fab08
xor ecx, 0x25ba4e30
xor edx, edx
div ecx
cmp eax, 0xb14ecd5c
jae 0x1401c7365
mov rax, qword [rbp + 0xa8]
mov ecx, dword [0x1401fdf88]
mov r9d, dword [0x1401fdf8c]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, ecx
and r8d, r10d
mov edx, ecx
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, ecx
and r8d, r9d
or ecx, r9d
imul ecx, r8d
add ecx, edx
imul edx, ecx, 0xa9a523b8
mov ecx, edx
and ecx, 0x4ebe8ca7
xor edx, 0x4ebe8ca7
or ecx, edx
mov r9d, 0x9500e01a
xor r9d, 0x4ec97b16
mov edx, 0x5cda8d31
xor edx, 0xa32572ce
xor r9d, edx
mov r8d, ecx
and r8d, r9d
mov edx, ecx
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r9d, 0xf5490f6b
xor r9d, 0x2e809467
mov r8d, ecx
and r8d, r9d
or ecx, 0xdbc99b0c
imul ecx, r8d
add ecx, edx
mov dword [rbp + 0x98], ecx
mov ecx, 0x4741fdb0
xor ecx, 0x7ce28a22
mov dword [rbp + 0x94], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x230], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x238], rax
lea rcx, [rbp + 0x240]
lea rdx, [rbp + 0x230]
sub rsp, 0x20
call fcn.140020190
mov rax, qword [rbp + 0xa0]
add rsp, 0x20
mov rdx, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x248]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0xb08
sub rsp, 0x20
call fcn.14006dfa0
mov r8, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x168]
mov ecx, dword [rbp + 0x94]
add rsp, 0x20
mov r9d, eax
mov eax, dword [rbp + 0x98]
mov dword [r8 + 0x10], r9d
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x9f], dl
cmp eax, ecx
je 0x1401c7365
mov al, byte [rbp + 0x9f]
test al, 1
jne 0x1401c5f74
jmp 0x1401c708c
mov cx, 0x3a3f
xor cx, 0x3871
sub rsp, 0x20
call fcn.14006dfa0
mov rcx, qword [rbp + 0xa0]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x168]
mov dword [rcx + 0x14], edx
cmp byte [rax], 0
jne 0x1401c708c
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0xd8]
mov r8, qword [rbp + 0xa0]
mov qword [rax + 0x10], r8
mov qword [rbp + 0x220], rdx
mov qword [rbp + 0x228], rcx
mov qword [rbp + 0x210], 2
mov qword [rbp + 0x218], rax
lea rcx, [rbp + 0x220]
lea rdx, [rbp + 0x210]
mov r8d, 1
sub rsp, 0x20
call fcn.14014f620
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x88], rcx
cmp byte [rax], 0
jne 0x1401c708c
mov word [rbp + 0x2d8], 0x75b
lea rcx, [rbp + 0x2d8]
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x80], rcx
cmp byte [rax], 0
jne 0x1401c708c
mov rdx, qword [rbp + 0x108]
mov rax, qword [rbp + 0x80]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x200]
sub rsp, 0x20
call fcn.140020190
mov r8, qword [rbp + 0x100]
mov rax, qword [rbp + 0x110]
add rsp, 0x20
mov rdx, qword [rbp + 0x200]
mov rcx, qword [rbp + 0x208]
mov r8, qword [r8]
add r8, 0x18
mov qword [rbp + 0x70], r8
mov qword [rax], rdx
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x1f0]
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x110]
add rsp, 0x20
xor eax, eax
mov r9d, eax
lea rax, [rbp + 0x1f0]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14014f220
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 0x168]
mov dword [rbp + 0x7c], ecx
cmp byte [rax], 0
jne 0x1401c708c
mov eax, dword [rbp + 0x7c]
cdqe
mov qword [rbp + 0x60], rax
mov ax, 0x47b8
xor ax, 0x452c
mov word [rbp + 0x2d6], ax
lea rcx, [rbp + 0x2d6]
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x68], rcx
cmp byte [rax], 0
jne 0x1401c708c
mov rax, qword [rbp + 0x68]
mov rcx, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0xf0]
mov qword [rbp + 0x1d0], rdx
mov qword [rbp + 0x1d8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x1c0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1c8], rax
lea rcx, [rbp + 0x1e0]
lea rdx, [rbp + 0x1d0]
lea r8, [rbp + 0x1c0]
sub rsp, 0x20
call fcn.1401c5754
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov rcx, qword [rbp + 0x1e0]
mov qword [rbp + 0x50], rcx
mov rcx, qword [rbp + 0x1e8]
mov qword [rbp + 0x58], rcx
mov al, byte [rax]
mov cl, 0x51
xor cl, 0x51
cmp al, cl
jne 0x1401c708c
movabs rcx, 0xb01fac61fc99ba20
movabs rax, 0xb01fac61fc99ba21
xor rcx, rax
movabs rdx, 0x62b8022e1947d6e9
movabs rax, 0x62b8022e1947d6e1
xor rdx, rax
movabs r8, 0xdd701739d3778d8
movabs rax, 0xdd701739d3778d0
xor r8, rax
sub rsp, 0x20
call fcn.140012e10
add rsp, 0x20
mov qword [rbp + 0x38], rax
movabs rcx, 0x92c74bfd68e2112d
movabs rax, 0x92c74bfd68e21135
xor rcx, rax
movabs rdx, 0xb40449a2275443c8
movabs rax, 0xb40449a2275443c0
xor rdx, rax
sub rsp, 0x20
call fcn.14001fda0
add rsp, 0x20
mov qword [rbp + 0x40], rax
mov ax, 0xf5e9
xor ax, 0xf4cf
mov word [rbp + 0x2d4], ax
lea rcx, [rbp + 0x2d4]
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x48], rcx
cmp byte [rax], 0
jne 0x1401c6fe5
mov rcx, qword [rbp + 0x118]
mov rdx, qword [rbp + 0x120]
mov rax, qword [rbp + 0x48]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140020190
mov rcx, qword [rbp + 0x118]
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x532
sub rsp, 0x20
call fcn.14006dfa0
mov rcx, qword [rbp + 0x40]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x168]
mov dword [rcx + 0x10], edx
cmp byte [rax], 0
jne 0x1401c6fe5
mov ecx, 0xe9
sub rsp, 0x20
call fcn.14006dfa0
mov rcx, qword [rbp + 0x40]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x168]
mov dword [rcx + 0x14], edx
mov al, byte [rax]
mov cl, 0xc9
xor cl, 0xc9
cmp al, cl
jne 0x1401c6fe5
mov eax, dword [0x1401fdf90]
xor edx, edx
div dword [0x1401fdf94]
mov r11d, eax
mov eax, 0xe9d30000
xor eax, 0x162cffff
mov ecx, r11d
xor ecx, eax
mov edx, 0xecf83005
xor edx, 0x7b93bccf
mov eax, 0xed69ea2f
xor eax, 0x129615d0
xor edx, eax
mov r8d, 0xffffffff
xor r8d, 0xd14248d2
mov eax, ecx
and eax, 0xd14248d2
and r11d, r8d
mov r9d, edx
and r9d, 0xd14248d2
mov r10d, r8d
and r10d, 0x976b8cca
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x9ab81a7e
xor edx, 0x4bfa52ac
or edx, r8d
and ecx, edx
or eax, ecx
imul eax, eax, 0x6e7926b9
mov ecx, 0x354a631b
xor ecx, 0xbb4a157c
and ecx, eax
mov edx, 0x68ec4602
xor edx, 0x9713b9fd
xor ecx, edx
mov edx, 0x5e3113e3
xor edx, 0xd0316584
add eax, edx
add eax, 1
add eax, ecx
cmp eax, 0xe8468eae
ja 0x1401c736e
mov rdx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x50]
mov r9, qword [rbp + 0x40]
mov r10d, dword [0x1401fdf98]
mov r11d, dword [0x1401fdf9c]
xor r11d, 0xffffffff
add r10d, r11d
add r10d, 1
mov r11d, 0xffffffff
xor r11d, 0x51135f58
mov esi, 0x2d9a8d8c
xor esi, 0x2d9a8d8c
mov edi, 0xb5daa785
xor edi, 0xb5daa784
sub esi, edi
sub r11d, esi
sub r10d, r11d
imul r10d, r10d, 0xb3e458a1
mov r11d, 0x13f1c128
xor r11d, 0x9f9fdf98
add r10d, r11d
mov dword [rbp + 0x24], r10d
mov qword [rax + 8], r9
mov qword [rbp + 0x1b0], r8
mov qword [rbp + 0x1b8], rcx
mov qword [rdx], 1
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1b0]
mov r8d, 1
sub rsp, 0x20
call fcn.14014f620
mov rcx, qword [rbp + 0x168]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x24]
mov qword [rbp + 0x28], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x37], cl
cmp eax, 0xd07bdbd6
je 0x1401c736e
mov al, byte [rbp + 0x37]
test al, 1
jne 0x1401c64ef
jmp 0x1401c6fe5
mov word [rbp + 0x2d2], 0x12e
lea rcx, [rbp + 0x2d2]
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x18], rcx
cmp byte [rax], 0
jne 0x1401c6fe5
mov rax, qword [rbp + 0x18]
mov rcx, qword [rax]
mov qword [rbp + 0x190], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x198], rax
lea rcx, [rbp + 0x1a0]
lea rdx, [rbp + 0x190]
sub rsp, 0x20
call fcn.140020190
mov r8, qword [rbp + 0x100]
mov rcx, qword [rbp + 0x130]
add rsp, 0x20
mov rdx, qword [rbp + 0x1a0]
mov rax, qword [rbp + 0x1a8]
mov r8, qword [r8]
add r8, 0x18
mov qword [rbp + 8], r8
mov qword [rbp + 0x180], rdx
mov qword [rbp + 0x188], rax
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x130]
add rsp, 0x20
lea r8, [rbp + 0x180]
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14014f220
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 0x168]
mov dword [rbp + 0x14], ecx
mov al, byte [rax]
mov cl, 0x7b
xor cl, 0x7b
cmp al, cl
jne 0x1401c6fe5
mov r11d, dword [0x1401fdfa0]
mov r10d, dword [0x1401fdfa4]
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xc717cebf
xor edx, 0x3c4560a1
mov eax, 0xc13e9900
xor eax, 0x3ec166ff
xor edx, eax
mov eax, ecx
and eax, 0xfb52ae1e
and r11d, edx
mov r9d, r8d
and r9d, 0xfb52ae1e
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x9bcac287
xor r8d, 0x64353d78
xor ecx, r8d
or edx, 0xfb52ae1e
and ecx, edx
or eax, ecx
sub eax, 0x67ded5f1
add eax, 0xfcb9bb09
mov ecx, 0x18fe22b3
xor edx, edx
div ecx
cmp eax, 0xa8976c2d
ja 0x1401c7377
mov r10, qword [rbp + 0x60]
mov ecx, dword [rbp + 0x14]
mov eax, dword [0x1401fdfa8]
mov r9d, dword [0x1401fdfac]
mov edx, eax
xor edx, 0xffffffff
mov r8d, r9d
and r8d, edx
mov r11d, r9d
xor r11d, 0xffffffff
mov edx, eax
and edx, r11d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
and eax, 0xd55403c0
mov edx, 0x722696c6
xor edx, 0x48e4f13a
sub eax, edx
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x8585bf74
add eax, edx
movsxd r8, ecx
mov rdx, r8
add rdx, r10
mov qword [rbp - 8], rdx
movabs rcx, 0xb07b96b2506f14ee
movabs r9, 0x4f84694daf90eb11
xor rcx, r9
mov r9, rdx
xor r9, rcx
mov rcx, r10
and rcx, r9
movabs r9, 0x8cf0951a7cbbcbc4
movabs r11, 0x730f6ae58344343b
xor r9, r11
xor r10, r9
mov r9, rdx
and r9, r10
or rcx, r9
xor rdx, r8
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rbp + 7], cl
cmp eax, 0x4009f11d
jae 0x1401c7377
mov al, byte [rbp + 7]
test al, 1
jne 0x1401c6751
jmp 0x1401c6763
sub rsp, 0x20
call fcn.1400091c0
add rsp, 0x20
jmp 0x1401c6fe5
mov eax, dword [0x1401fdfb0]
sub eax, dword [0x1401fdfb4]
mov ecx, 0x589d231f
xor ecx, 0x262ddf31
mov r8d, eax
and r8d, ecx
xor eax, 0x7eb0fc2e
or r8d, eax
mov ecx, 0xa3d4217c
xor ecx, 0x5c2bde83
mov eax, r8d
xor eax, ecx
and eax, 0xca1ef2d4
mov edx, 0x77bb02b9
xor edx, 0xbda5f06d
mov ecx, 0x3207abc1
xor ecx, 0xcdf8543e
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0xc3a42a79
mov r9d, 0x897380e6
xor r9d, 0x436d7232
and ecx, r9d
and edx, 0xc3a42a79
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, eax
and ecx, 0x994976ae
shl ecx, 1
add eax, 0x994976ae
sub eax, ecx
cmp eax, 0x52dd7b42
ja 0x1401c7380
mov rcx, qword [rbp - 8]
mov eax, dword [0x1401fdfb8]
mov r8d, dword [0x1401fdfbc]
xor r8d, 0x9e993b4a
mov edx, 0xf6b50ce0
xor edx, 0x94af31f
mov r9d, eax
xor r9d, edx
mov edx, r8d
and edx, r9d
mov r9d, 0xb3116b19
xor r9d, 0x4cee94e6
xor r8d, r9d
and eax, r8d
or edx, eax
sub edx, 0x5d3164eb
add edx, 0xe77569a6
add edx, 0x5d3164eb
mov eax, edx
and eax, 0x8f103f6d
xor eax, 0xffffffff
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x8f103f6d
or edx, r8d
xor eax, 0xffffffff
mov r8d, 0x80b5da90
xor r8d, 0x7f4a256f
xor edx, r8d
or eax, edx
mov r9d, 0xffffffff
xor r9d, 0x81115baf
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x81115baf
mov r9d, 0x744fd64c
xor r9d, 0xf55e8de3
or eax, r9d
imul eax, r8d
add eax, edx
movabs rdx, 0x5712586b640990c6
movabs r8, 0xa8eda794e40990c6
xor rdx, r8
movabs r8, 0x4b7ff9862a953458
movabs r9, 0xb4800679d56acba7
xor r8, r9
xor rdx, r8
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rcx, rdx
movabs rdx, 0xffffffff00000000
cmp rcx, rdx
setb cl
mov byte [rbp - 9], cl
cmp eax, 0xd97f75b
je 0x1401c67fd
mov al, byte [rbp - 9]
test al, 1
jne 0x1401c6930
jmp 0x1401c6a6f
mov eax, dword [0x1401fdfc0]
xor edx, edx
div dword [0x1401fdfc4]
and eax, 0x59db8872
mov r8d, 0xe1ce87be
xor r8d, 0xdb474219
mov ecx, 0x57819e6b
xor ecx, 0xa87e6194
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, 0x3a89c5a7
mov r8d, 0xf0305815
xor r8d, 0xcab99db2
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x637e200b
xor edx, 0x53e48feb
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x309aafe0
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x309aafe0
or eax, 0x309aafe0
imul eax, edx
add eax, ecx
cmp eax, 0xbef90305
jae 0x1401c7389
mov eax, dword [0x1401fdfc8]
xor eax, 0x204ee5b2
mov r8d, dword [0x1401fdfcc]
xor r8d, 0x7ab3a151
mov edx, 0xc8e491e
xor edx, 0xf371b6e1
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
imul eax, eax, 0xadb3f69e
xor eax, 0x46d8ad61
mov ecx, eax
xor ecx, 0xd310b2d2
mov edx, 0x9e1641af
xor edx, 0x61e9be50
xor ecx, edx
or eax, 0xd310b2d2
and eax, ecx
mov dword [rbp - 0x10], eax
mov eax, 0xfaf9885d
xor eax, 0xa5917533
mov dword [rbp - 0x14], eax
sub rsp, 0x20
call fcn.1400091c0
mov ecx, dword [rbp - 0x14]
mov eax, dword [rbp - 0x10]
add rsp, 0x20
cmp eax, ecx
ja 0x1401c69cf
jmp 0x1401c6fe5
mov eax, dword [0x1401fdfd0]
xor edx, edx
div dword [0x1401fdfd4]
mov ecx, 0x164cb783
xor ecx, 0x14c3d062
add eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xa886198d
add ecx, eax
mov eax, 0x60e9a292
xor eax, 0x60e9a292
sub eax, ecx
add eax, 0x66a53c05
mov ecx, 0xdf1e111d
xor ecx, 0x286c694e
cmp eax, ecx
je 0x1401c7392
mov eax, dword [0x1401fdfd8]
xor eax, 0x6cb7d8ef
mov ecx, dword [0x1401fdfdc]
sub eax, ecx
add eax, 0x71b31d0a
or eax, 0x70a40282
and eax, 0xfaa40ea2
mov dword [rbp - 0x1c], eax
sub rsp, 0x20
mov cx, 0x15d
call fcn.14006d5fc
mov rcx, qword [rbp + 0x168]
mov r8, qword [rbp - 8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x1c]
mov cl, byte [rcx]
test cl, cl
sete cl
sub rdx, r8
setl dl
and cl, dl
mov byte [rbp - 0x15], cl
cmp eax, 0xa3d475e9
jb 0x1401c6abb
mov al, byte [rbp - 0x15]
test al, 1
jne 0x1401c6b2f
jmp 0x1401c6f4e
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.14001fda0
add rsp, 0x20
mov qword [rbp - 0x38], rax
mov qword [rax], 0
mov dword [rax + 8], 1
mov ecx, 0x7e0
sub rsp, 0x20
call fcn.14006dfa0
mov rdx, qword [rbp + 0x168]
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x38]
mov dword [rax + 0xc], ecx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp - 0x29], cl
mov qword [rbp - 0x28], rax
jne 0x1401c6f0b
mov eax, dword [0x1401fdfe0]
xor edx, edx
div dword [0x1401fdfe4]
mov r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x70f8e378
mov edx, 0xffffffff
xor edx, 0xc67814f2
mov r9d, 0xf2322e73
xor r9d, 0x344a3a81
mov eax, ecx
and eax, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0xc67814f2
mov r10d, 0xe3b5098a
xor r10d, 0x934deaf2
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xc67814f2
and ecx, edx
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x8626beb2
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0xabe4040c
xor edx, 0x43c9486b
or eax, edx
add eax, ecx
cmp eax, 0x4c91d039
jbe 0x1401c739b
mov eax, dword [0x1401fdfe8]
mov ecx, dword [0x1401fdfec]
mov edx, 0x8f302bdb
xor edx, 0x9e053df
xor ecx, edx
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
mov ecx, 0xaf95be6b
xor ecx, 0xe8760131
and eax, ecx
mov ecx, 0x358b56a
xor ecx, 0x4eeb55c5
and eax, ecx
add eax, 0xb0604325
mov dword [rbp - 0x4c], eax
mov ecx, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.140016330
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov qword [rbp - 0x58], rax
mov word [rcx], 0x708
sub rsp, 0x20
call fcn.14006d720
mov rcx, qword [rbp + 0x168]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x4c]
mov qword [rbp - 0x48], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0x49f022a4
jbe 0x1401c6c3b
mov dl, byte [rbp - 0x39]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp - 0x29], cl
mov qword [rbp - 0x28], rax
jne 0x1401c6cf3
jmp 0x1401c6f0b
mov eax, dword [0x1401fdff0]
mov edx, dword [0x1401fdff4]
xor edx, 0xdce1be2c
mov ecx, 0x907c311d
xor ecx, 0x6f83cee2
xor eax, ecx
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xb95887d2
or eax, edx
or ecx, 0xb95887d2
xor eax, 0xffffffff
and eax, ecx
sub eax, 0xa218a1c8
sub eax, 0xc1a0a94b
add eax, 0xa218a1c8
mov ecx, 0xffffffff
xor ecx, 0xb9cfeac2
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov edx, 0xffffffff
xor edx, 0xa690a13e
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xa690a13e
add eax, edx
sub eax, ecx
cmp eax, 0x70c122f4
jbe 0x1401c73a4
mov rcx, qword [rbp + 0x140]
mov eax, dword [0x1401fdff8]
mov edx, 0x69a1257d
xor edx, 0x78a2c92b
xor eax, edx
mov r8d, dword [0x1401fdffc]
mov r9d, eax
and r9d, r8d
mov edx, 0x2279a327
xor edx, 0x2279a325
imul edx, r9d
add eax, r8d
sub eax, edx
mov edx, 0x4a531102
xor edx, 0xb5aceefd
mov r8d, eax
xor r8d, edx
and r8d, 0xf66783f5
mov r9d, 0xffffffff
xor r9d, 0xf66783f5
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0xf79a1739
xor r9d, 0x1fd94cc
mov r8d, eax
and r8d, r9d
or eax, 0xf66783f5
imul eax, r8d
add eax, edx
or eax, 0x9bb24c43
mov r8d, 0x506be04
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x150]
mov r8d, eax
mov rax, qword [rbp - 0x48]
mov dword [rbp - 0x60], r8d
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140020190
mov rax, qword [rbp + 0x140]
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rbp + 0x158]
add rsp, 0x20
mov r8, qword [rax]
mov rax, qword [rax + 8]
mov qword [rdx + 8], r8
mov qword [rdx + 0x10], rax
sub rsp, 0x20
call fcn.14007ddb1
mov r8, qword [rbp + 0x158]
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp + 0x168]
mov eax, dword [rbp - 0x60]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rdx + 0x10], r9
mov r8, qword [r8 + 8]
mov qword [rdx + 0x18], r8
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0xf2710d52
ja 0x1401c6d76
mov rax, qword [rbp - 0x58]
mov dl, byte [rbp - 0x59]
mov cl, 1
test dl, 1
mov byte [rbp - 0x29], cl
mov qword [rbp - 0x28], rax
jne 0x1401c6ebe
jmp 0x1401c6f0b
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp + 0x100]
mov rcx, qword [0x1402080f8]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x140208100]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.14002cc20
mov rcx, qword [rbp + 0x168]
mov rax, qword [rbp - 0x58]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp - 0x29], cl
mov qword [rbp - 0x28], rax
mov rax, qword [rbp + 0x168]
mov dl, byte [rbp - 0x29]
mov rcx, qword [rbp - 0x28]
mov byte [rbp - 0x61], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401c2789
mov rax, qword [rbp + 0x168]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x4c
xor cl, 0x4c
cmp al, cl
jne 0x1401c6f4e
mov rax, qword [rbp + 0x168]
mov cl, byte [rbp - 0x61]
mov byte [rax], cl
mov eax, dword [0x1401fe000]
mov ecx, 0xc2914592
xor ecx, 0xbf87f8f3
xor eax, ecx
xor eax, dword [0x1401fe004]
mov ecx, 0xa6b82b63
xor ecx, 0x473cc531
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xd160239
xor ecx, 0xffffffff
mov edx, 0xad6c4510
xor edx, 0xa07a4729
or eax, edx
and eax, ecx
mov ecx, 0x2cdf5905
xor ecx, 0x15193850
sub eax, ecx
cmp eax, 0x9847e131
jbe 0x1401c73ad
mov eax, dword [0x1401fe008]
mov ecx, dword [0x1401fe00c]
xor ecx, 0xc60f6423
or eax, ecx
add eax, 0x8970e2da
or eax, 0xa581114c
mov ecx, 0x2963c784
xor ecx, 0x62c0b80
xor edx, edx
div ecx
cmp eax, 0x96448ccf
je 0x1401c73ad
jmp 0x1401c6fe5
mov rax, qword [rbp + 0x58]
cmp rax, 0
je 0x1401c708c
mov rax, qword [rbp + 0x58]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0xedf4240778481595
movabs rdx, 0xadf4240778481595
xor rcx, rdx
movabs rdx, 0xc07583452202b211
movabs r8, 0x3f8a7cbaddfd4dee
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x2702489a8962b5ef
movabs r8, 0x6702489a8962b5ef
xor rdx, r8
movabs r8, 0x9e94c80c77d6829a
movabs r9, 0x616b37f388297d65
xor r8, r9
xor rdx, r8
and rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1401c708c
mov rcx, qword [rbp + 0x58]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
cmp rax, 0
je 0x1401c70e2
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401c70e2
mov rcx, qword [rbp + 0xe0]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov rax, qword [rbp + 0xf8]
cmp rax, 0
je 0x1401c7138
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401c7138
mov rcx, qword [rbp + 0xf8]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov rax, qword [rbp + 0x168]
cmp byte [rax], 0
je 0x1401c72c1
sub rsp, 0x20
call fcn.1401c57d0
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x70], rax
cmp word [rax + 0x12], 1
jle 0x1401c72c1
mov rax, qword [rbp - 0x70]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0xcd1f84d0
xor ecx, 0x191acd56
cmp eax, ecx
jne 0x1401c72c1
mov rax, qword [rbp + 0x168]
mov cl, 0x60
xor cl, 0x60
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401c57e2
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14009f0c0
mov rax, qword [rbp + 0x168]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c72c1
mov edx, dword [0x1401fe010]
mov eax, dword [str.f_a_2_]
mov ecx, 0x93f60bf1
xor ecx, 0xdd066456
xor eax, ecx
mov ecx, edx
xor ecx, eax
xor eax, 0xffffffff
and edx, eax
mov eax, 0x4330f4d0
xor eax, 0x4330f4d2
imul eax, edx
sub eax, ecx
imul ecx, eax, 0x4a21d0fd
mov edx, 0x4a8a840b
xor edx, 0x8d9a041f
mov eax, ecx
and eax, edx
or ecx, 0xc7108014
add eax, ecx
and eax, 0x45eff2f
cmp eax, 0x8a76b5ad
je 0x1401c73b6
mov eax, dword [0x1401fe018]
mov edx, dword [0x1401fe01c]
xor edx, 0x5c0a9b81
mov ecx, eax
and ecx, edx
shl ecx, 1
xor eax, edx
add eax, ecx
mov ecx, 0xed9c8c14
xor ecx, 0x6e4e2369
xor eax, ecx
mov ecx, 0xb893620e
xor ecx, 0xb893620e
mov edx, 0x19081d46
xor edx, 0x325919fb
sub ecx, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x63a78deb
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x63a78deb
or eax, 0x63a78deb
imul eax, edx
add eax, ecx
mov dword [rbp - 0x74], eax
mov eax, 0x9095de61
xor eax, 0x433e2639
mov dword [rbp - 0x78], eax
sub rsp, 0x20
call fcn.1401c580f
mov ecx, dword [rbp - 0x78]
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp eax, ecx
ja 0x1401c721e
jmp 0x1401c72c1
mov ecx, dword [0x1401fe020]
or ecx, dword [0x1401fe024]
add ecx, 0x7555d63c
or ecx, 0x1f4f918a
mov eax, ecx
and eax, 0xd027447a
xor eax, 0xffffffff
and ecx, 0xd027447a
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x9cf6513b
xor ecx, 0x89da49be
cmp eax, ecx
je 0x1401c73bf
mov eax, dword [0x1401fe028]
mov edx, dword [0x1401fe02c]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
or eax, 0xa0bf806f
xor eax, 0x56307e3e
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x6302299c
add ecx, eax
mov eax, 0x9cdefc0a
xor eax, 0x9cdefc0a
sub eax, ecx
mov ecx, 0xdfbe6708
xor ecx, 0x5bd652d1
cmp eax, ecx
ja 0x1401c7304
lea rsp, [rbp + 0x2e0]
pop rdi
pop rsi
pop rbp
ret
xchg esp, eax
mov bl, 0xe9
in eax, dx
out 0xff, eax
jmp [rdx + rcx*4 - 0x5416ec38]
lodsb al, byte [rsi]
mov cl, al
adc ebp, ecx
stosd dword [rdi], eax
invalid
movsb byte [rdi], byte [rsi]
sti
lodsb al, byte [rsi]
shr cl, 1
xchg esi, eax
invalid
shl cl, 0xb4
jmp 0x1401c6674
cdq
sbb dword [rdi - 0xb8b1625], esp
invalid
test dword [rdi + 0x3de9c90a], ebx
idiv bh
call qword [rdx - 0x1682f665]
xchg edx, eax
wait
or dword [rbp - 0x17], edi
and bh, dh
invalid
idiv edi
push rdx
cmp rax, 0xfffffffff897e9f2
cmp rax, 0xfffffffff897e9f2
invalid
sub al, 0xba
add eax, 0xf9c9e9cc
invalid
out 0xe8, eax
sub ecx, dword [rcx - 0x40d17]
dec dword [rcx]
loop 0x1401c7398
or dword [rbx - 0x1e], ecx
fsubp st(1)
pop rdi
invalid
jmp 0x1401c721e
mov ss, word [rdi + 0x6d]
push rsi
jmp 0x1401c7304