Function at 0x1401fec70
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x1b0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x48], rcx
mov eax, 0x10
mov qword [rbp + 0x70], rax
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x70]
mov rcx, rsp
mov qword [rbp + 0x50], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x70]
mov rcx, rsp
mov qword [rbp + 0x58], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x70]
mov rcx, rsp
mov qword [rbp + 0x60], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x70]
mov rcx, rsp
mov qword [rbp + 0x68], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x70]
mov rcx, rsp
mov qword [rbp + 0x78], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x80], rax
sub rsp, 0x20
call fcn.140207877
add rsp, 0x20
mov qword [rbp + 0x90], rax
add rax, 0x50
mov qword [rbp + 0x88], rax
mov ax, 0x3409
xor ax, 0x348e
mov word [rbp + 0x12e], ax
lea rcx, [rbp + 0x12e]
sub rsp, 0x20
call fcn.140063da0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x98], rcx
cmp byte [rax + 0x50], 0
jne 0x1401ff7d9
mov eax, dword [0x140258cf8]
mov ecx, dword [0x140258cfc]
xor ecx, 0xcc39879f
and eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xd3bfb00f
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd3bfb00f
or eax, 0xd3bfb00f
imul eax, edx
add eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x94bf27d7
or ecx, 0x94bf27d7
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x464c03ec
xor ecx, 0xf956a189
sub eax, ecx
cmp eax, 0x24042d2b
jb 0x1401ff921
mov r8, qword [rbp + 0x50]
mov rax, qword [rbp + 0x98]
mov ecx, dword [0x140258d00]
and ecx, dword [0x140258d04]
xor edx, edx
sub edx, 0xf6f1299
add ecx, edx
mov r10d, 0xebc5eb11
xor r10d, 0x15f4d8b
mov edx, 0x16c9258b
xor edx, 0xe936da74
xor r10d, edx
mov r9d, ecx
and r9d, r10d
mov edx, ecx
or edx, r10d
mov r10d, 0x62cf9a91
xor r10d, 0x9d30656e
xor edx, r10d
imul edx, r9d
mov r10d, 0xef4f70e5
xor r10d, 0x5d5d67f
mov r9d, ecx
and r9d, r10d
mov r10d, 0x21a79645
xor r10d, 0xcb3d30df
or ecx, r10d
imul ecx, r9d
add ecx, edx
add ecx, 0x85dd6bbf
mov dword [rbp + 0x2c], ecx
mov ecx, 0xf3e6cb3f
xor ecx, 0x30da43d3
mov dword [rbp + 0x28], ecx
mov rcx, qword [0x1402648d8]
mov rdx, qword [rcx]
mov qword [rbp + 0x108], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x110], rcx
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x118]
lea rdx, [rbp + 0x108]
sub rsp, 0x20
call fcn.1401fa83b
mov rdx, qword [rbp + 0x88]
mov ecx, dword [rbp + 0x28]
mov eax, dword [rbp + 0x2c]
add rsp, 0x20
mov r8, qword [rbp + 0x118]
mov qword [rbp + 0x30], r8
mov r8, qword [rbp + 0x120]
mov qword [rbp + 0x38], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x47], dl
cmp eax, ecx
ja 0x1401ff921
mov al, byte [rbp + 0x47]
test al, 1
jne 0x1401feef5
jmp 0x1401ff7d9
mov ecx, 1
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140018f50
add rsp, 0x20
mov qword [rbp + 8], rax
movabs rcx, 0x5e0904bd22cfc3a8
movabs rax, 0x5e0904bd22cfc3b0
xor rcx, rax
movabs rdx, 0x6a10fef8f1fdd19d
movabs rax, 0x6a10fef8f1fdd195
xor rdx, rax
sub rsp, 0x20
call fcn.14001b860
add rsp, 0x20
mov qword [rbp + 0x10], rax
mov word [rbp + 0x12c], 0xbbb
lea rcx, [rbp + 0x12c]
sub rsp, 0x20
call fcn.140063da0
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov qword [rbp + 0x18], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x27], al
jne 0x1401ff75e
mov eax, dword [0x140258d08]
xor eax, 0xdf1717ea
add eax, dword [0x140258d0c]
mov ecx, 0xc273fd73
xor ecx, 0xc273fd73
sub ecx, eax
xor eax, eax
sub eax, 0x30b4d13
add ecx, eax
xor eax, eax
sub eax, ecx
add eax, 0x5b10f814
mov ecx, 0x1e61073d
xor ecx, 0xc26c7fac
sub eax, ecx
sub eax, 0x5b10f814
mov ecx, 0xffffffff
xor ecx, 0xe9307fca
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0xa65a3e7
xor ecx, 0xe1aff51a
cmp eax, ecx
jae 0x1401ff92a
mov eax, dword [0x140258d10]
sub eax, dword [0x140258d14]
mov ecx, 0x754752a1
xor ecx, 0x637b53fe
sub eax, ecx
mov ecx, 0x195b9c88
xor ecx, 0xe6a46377
mov edx, eax
xor edx, ecx
and edx, 0xb712e3f7
mov r8d, 0xffffffff
xor r8d, 0xb712e3f7
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xb712e3f7
mov r8d, 0x94e804ea
xor r8d, 0x23fae71d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xe127483a
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x58]
mov ecx, eax
mov rax, qword [rbp + 0x18]
mov dword [rbp], ecx
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0xf8]
sub rsp, 0x20
call fcn.14001ba7e
mov rax, qword [rbp + 0x10]
add rsp, 0x20
mov rdx, qword [rbp + 0xf8]
mov rcx, qword [rbp + 0x100]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x66c
sub rsp, 0x20
call fcn.1400644d0
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp]
mov dword [rdx + 0x10], r8d
cmp byte [rcx], 0
sete cl
mov byte [rbp + 7], cl
cmp eax, 0xce73a3e4
jae 0x1401feff2
mov cl, byte [rbp + 7]
mov al, 1
test cl, 1
mov byte [rbp + 0x27], al
jne 0x1401ff0f4
jmp 0x1401ff75e
mov ecx, 0xa54
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x10]
mov dword [rax + 0x14], edx
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x27], al
jne 0x1401ff75e
mov r8d, dword [0x140258d18]
sub r8d, dword [0x140258d1c]
mov eax, 0x479366af
xor eax, 0xe37744cb
add r8d, eax
or r8d, 0xe46962b8
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x7fafe338
mov edx, 0x111388b8
xor edx, 0x6ebc6b80
mov ecx, 0x91b8fac2
xor ecx, 0x6e47053d
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x1f46b266
and ecx, 0x7fafe338
and edx, 0x1f46b266
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0x8c00089f
jbe 0x1401ff933
mov rcx, qword [rbp + 0x10]
mov eax, dword [0x140258d20]
mov edx, dword [0x140258d24]
xor edx, 0x2c1ec475
xor eax, edx
mov r8d, 0x3ab530d9
xor r8d, 0xe80abf34
xor edx, edx
div r8d
mov r8d, eax
mov rax, qword [rbp + 8]
mov edx, 0xffffffff
xor edx, 0x557311c0
xor r9d, r9d
sub r9d, 1
sub edx, r9d
sub r8d, edx
mov edx, r8d
and edx, 0x8b7840f3
xor edx, 0xffffffff
xor r8d, 0xffffffff
mov r9d, 0x3ad4a060
xor r9d, 0xb1ace093
mov r10d, 0xd8e08774
xor r10d, 0x271f788b
xor r9d, r10d
or r8d, r9d
and edx, r8d
mov r8d, 0xeb36da48
xor r8d, 0x14c925b7
xor edx, r8d
mov dword [rbp - 0xc], edx
mov qword [rax + 8], rcx
mov cx, 0x6dc7
xor cx, 0x6683
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov edx, eax
mov eax, dword [rbp - 0xc]
mov dword [rbp - 8], edx
mov cl, byte [rcx]
mov dl, 0xc5
xor dl, 0xc5
cmp cl, dl
sete cl
mov byte [rbp - 1], cl
cmp eax, 0xc183f20d
je 0x1401ff933
mov cl, byte [rbp - 1]
mov al, 1
test cl, 1
mov byte [rbp + 0x27], al
jne 0x1401ff27d
jmp 0x1401ff75e
mov r8d, dword [rbp - 8]
mov rdx, qword [rbp + 0x68]
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbp + 8]
mov r9, qword [rbp + 0x38]
mov r10, qword [rbp + 0x30]
mov qword [rcx], r10
mov qword [rcx + 8], r9
mov qword [rdx], 1
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140176549
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x88]
mov qword [rbp - 0x18], rcx
mov cl, byte [rax]
mov dl, 0xeb
xor dl, 0xeb
mov al, 1
cmp cl, dl
mov byte [rbp + 0x27], al
jne 0x1401ff75e
mov word [rbp + 0x12a], 0xc1d
lea rcx, [rbp + 0x12a]
sub rsp, 0x20
call fcn.140063da0
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x27], al
jne 0x1401ff75e
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
mov qword [rbp + 0xd8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xe0], rax
lea rcx, [rbp + 0xe8]
lea rdx, [rbp + 0xd8]
sub rsp, 0x20
call fcn.14001ba7e
mov r8, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x78]
add rsp, 0x20
mov rdx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
mov r8, qword [r8]
add r8, 0x18
mov qword [rbp - 0x30], r8
mov qword [rbp + 0xc8], rdx
mov qword [rbp + 0xd0], rax
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x18]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
lea r8, [rbp + 0xc8]
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140176040
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 0x88]
mov dword [rbp - 0x24], ecx
mov cl, byte [rax]
mov dl, pe_nt_image_headers64
xor dl, 0x80
mov al, 1
cmp cl, dl
mov byte [rbp + 0x27], al
jne 0x1401ff75e
sub rsp, 0x20
mov cx, 0x3f4
call fcn.140063c67
mov r8d, dword [rbp - 0x24]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x88]
mov al, byte [rax]
test al, al
sete cl
movsxd r8, r8d
sub rdx, r8
setl dl
and cl, dl
test cl, 1
mov byte [rbp - 0x31], al
jne 0x1401ff40e
jmp 0x1401ff6b8
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.14001b860
add rsp, 0x20
mov qword [rbp - 0x50], rax
mov qword [rax], 0
mov ecx, 0x80fb63c9
xor ecx, 0x80fb63c8
mov dword [rax + 8], ecx
mov ecx, 0xe96
sub rsp, 0x20
call fcn.1400644d0
mov rdx, qword [rbp + 0x88]
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x50]
mov dword [rax + 0xc], ecx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp - 0x41], cl
mov qword [rbp - 0x40], rax
jne 0x1401ff673
mov eax, dword [0x140258d28]
xor eax, 0x2cafb8c8
mov ecx, dword [0x140258d2c]
mov edx, 0xd9872e90
xor edx, 0xba26c109
xor ecx, edx
xor edx, edx
div ecx
imul eax, eax, 0x4f46a195
mov ecx, 0x6741b8cb
xor ecx, 0x103f64e5
xor eax, ecx
mov ecx, 0x8a4e613f
xor ecx, 0x3fca4093
xor edx, edx
div ecx
cmp eax, 0x50cfc19d
jae 0x1401ff93c
mov ecx, dword [0x140258d30]
mov eax, dword [0x140258d34]
mov edx, 0x5064c8d3
xor edx, 0x7a1242a8
xor eax, edx
mov edx, 0xffe0180e
xor edx, 0x668900ac
add ecx, edx
add ecx, eax
sub ecx, 0x996918a2
mov edx, 0xffffffff
xor edx, 0x1a79887a
mov eax, ecx
xor eax, edx
and eax, ecx
xor eax, 0x3c567cee
mov ecx, 0xffffffff
xor ecx, 0xff5424a
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov dword [rbp - 0x64], eax
mov ecx, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.140012610
add rsp, 0x20
mov qword [rbp - 0x70], rax
mov word [rbp + 0xc6], 0x942
lea rcx, [rbp + 0xc6]
sub rsp, 0x20
call fcn.140063da0
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x64]
mov qword [rbp - 0x60], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x51], cl
cmp eax, 0x2bb38700
jb 0x1401ff4c3
mov dl, byte [rbp - 0x51]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp - 0x41], cl
mov qword [rbp - 0x40], rax
jne 0x1401ff597
jmp 0x1401ff673
mov rdx, qword [rbp + 0x80]
mov rax, qword [rbp - 0x60]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0xb0]
sub rsp, 0x20
call fcn.14001ba7e
mov rdx, qword [rbp - 0x70]
add rsp, 0x20
mov rcx, qword [rbp + 0xb0]
mov rax, qword [rbp + 0xb8]
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rax
lea rcx, [rbp + 0xa0]
sub rsp, 0x20
call fcn.140073aff
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp + 0x88]
mov rax, qword [rbp - 0x70]
add rsp, 0x20
mov r8, qword [rbp + 0xa0]
mov qword [rcx + 0x10], r8
mov r8, qword [rbp + 0xa8]
mov qword [rcx + 0x18], r8
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp - 0x41], cl
mov qword [rbp - 0x40], rax
jne 0x1401ff673
mov rdx, qword [rbp - 0x50]
mov rax, qword [rbp + 0x48]
mov rcx, qword [0x140264148]
mov qword [rdx + 0x20], rcx
mov rcx, qword [str.XA_]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.140025ed0
mov rcx, qword [rbp + 0x88]
mov rax, qword [rbp - 0x70]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp - 0x41], cl
mov qword [rbp - 0x40], rax
mov rax, qword [rbp + 0x88]
mov dl, byte [rbp - 0x41]
mov rcx, qword [rbp - 0x40]
mov byte [rbp - 0x71], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401f7c60
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x31], al
jne 0x1401ff6b8
mov al, byte [rbp - 0x71]
mov rcx, qword [rbp + 0x88]
mov byte [rcx], al
mov byte [rbp - 0x31], al
mov al, byte [rbp - 0x31]
mov byte [rbp - 0x72], al
mov eax, dword [0x140258d38]
mov ecx, dword [0x140258d3c]
xor ecx, 0x80516cca
mov edx, 0x54d4f469
xor edx, 0x774890db
sub eax, edx
sub eax, ecx
add eax, 0x239c64b2
mov ecx, 0x30d53658
xor ecx, 0xe0f8c429
and eax, ecx
imul eax, eax, 0x9b96fca2
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x84c406c
add ecx, eax
mov eax, 0x25f15086
xor eax, 0x25f15086
sub eax, ecx
mov ecx, 0x177c7f99
xor ecx, 0x15332377
cmp eax, ecx
jb 0x1401ff945
mov eax, dword [0x140258d40]
and eax, dword [0x140258d44]
xor eax, 0xb9bb79fa
add eax, 0x71feb72c
mov ecx, 0xe66ad7b8
xor ecx, 0xc6e287c6
xor edx, edx
div ecx
cmp eax, 0x9996ac60
ja 0x1401ff723
mov al, byte [rbp - 0x72]
mov byte [rbp + 0x27], al
jmp 0x1401ff75e
mov rcx, qword [rbp + 0x38]
mov al, byte [rbp + 0x27]
mov byte [rbp - 0x74], al
cmp rcx, 0
mov byte [rbp - 0x73], al
je 0x1401ff7c9
mov al, byte [rbp - 0x74]
mov rdx, qword [rbp + 0x38]
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
movabs rdx, 0x92f250eaf51876cd
movabs r8, 0x92f250eaf51876cd
xor rdx, r8
cmp rcx, rdx
mov byte [rbp - 0x73], al
jne 0x1401ff7c9
mov rcx, qword [rbp + 0x38]
sub rsp, 0x20
call fcn.14000eec9
mov rax, qword [rbp + 0x88]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp - 0x73], al
mov al, byte [rbp - 0x73]
mov cl, 0xb8
xor cl, 0xb8
cmp al, cl
je 0x1401ff866
sub rsp, 0x20
call fcn.1401fa8a2
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
mov ax, word [rax + 0x12]
mov cx, 0x4af1
xor cx, 0x4af0
cmp ax, cx
jle 0x1401ff866
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x1401ff866
mov rax, qword [rbp + 0x88]
mov cl, 0x83
xor cl, 0x83
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401fa8b4
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140099ce0
mov rax, qword [rbp + 0x88]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x53
xor cl, 0x53
cmp al, cl
jne 0x1401ff866
sub rsp, 0x20
call fcn.1401fa8e9
add rsp, 0x20
mov ecx, dword [0x140258d48]
mov edx, dword [0x140258d4c]
mov eax, 0xff71f9e7
xor eax, 0x8e0618
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
mov r8d, 0xedd6eb97
xor r8d, 0x12291468
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x4259624b
xor ecx, 0xc22a958f
and eax, ecx
sub eax, 0x301cf79c
mov ecx, 0xba857019
xor edx, edx
div ecx
cmp eax, 0xd2b55123
ja 0x1401ff94e
mov eax, dword [0x140258d50]
add eax, dword [0x140258d54]
mov ecx, eax
and ecx, 0x69f10ec9
mov edx, 0x193855f6
xor edx, 0x193855f4
imul ecx, edx
xor eax, 0x69f10ec9
add eax, ecx
mov ecx, 0xef16ead9
xor edx, edx
div ecx
mov ecx, 0x7b75e0d9
xor ecx, 0x7b75e0d9
mov edx, 0xed4e6738
xor edx, 0x5c6f8a17
sub ecx, edx
sub eax, ecx
cmp eax, 0x72672f26
jb 0x1401ff8c1
lea rsp, [rbp + 0x130]
pop rbp
ret
push rdx
invalid
outsd dx, dword [rsi]
cmc
sub esp, ecx
jmp 0x1401feff2
sbb eax, 0xe9b96e31
pop rcx
clc
invalid
adc byte [rsi + 0x7ee968af], dh
sti
invalid
mov ecx, 0xd5e91e33
std
invalid
invd
add dword [rbp - 0x17], esp
push 0xffffffffffffffff
invalid