Function at 0x140144ab0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov eax, dword [0x140258db8]
xor eax, 0x2676fed
xor edx, edx
div dword [0x140258dbc]
mov ecx, 0x88fcef21
xor edx, edx
div ecx
xor eax, 0xcc017677
mov ecx, 0x80de901c
xor ecx, 0xf5a706a6
and eax, ecx
mov ecx, 0xf1e3d6f1
xor ecx, 0xb5890807
cmp eax, ecx
je 0x140144c2d
mov ecx, dword [0x140258dc0]
mov eax, dword [0x140258dc4]
mov edx, 0x425d16b3
xor edx, 0xeaed631d
xor eax, edx
xor ecx, eax
and ecx, 0xfa2c3c66
mov edx, 0x7e6796a7
xor edx, 0x6cb520c0
mov eax, ecx
and eax, edx
xor ecx, 0x12d2b667
or eax, ecx
mov ecx, 0x9f23442f
xor ecx, 0x8a4ffa0e
or eax, ecx
mov dword [rsp + 0x44], eax
call fcn.14014494e
mov qword [rsp + 0x38], rax
add rax, 0x50
mov qword [rsp + 0x30], rax
call fcn.140143f74
mov rcx, qword [rsp + 0x38]
mov rdx, rax
mov eax, dword [rsp + 0x44]
mov qword [rsp + 0x48], rdx
cmp byte [rcx + 0x50], 0
sete cl
mov byte [rsp + 0x57], cl
cmp eax, 0x9ad9726c
jae 0x140144af5
mov al, byte [rsp + 0x57]
test al, 1
jne 0x140144b8e
jmp 0x140144c28
mov rcx, qword [rsp + 0x48]
mov rax, rcx
sub rax, 0x100
mov eax, 0x100
cmovl rax, rcx
mov qword [0x14027db90], rax
lea rax, [0x14027dc10]
mov qword [0x14027db98], rax
xor eax, eax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x20], rax
cmp rax, qword [0x14027db90]
jge 0x140144c28
mov rcx, qword [rsp + 0x20]
call fcn.14014495c
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x20]
mov cl, byte [rcx]
mov dl, 0x31
xor dl, 0x31
movabs r8, 0x376073eea4dbddc0
movabs r9, 0x376073eea4dbddc0
xor r8, r9
sub r8, rax
xor eax, eax
sub rax, 1
add r8, rax
xor eax, eax
sub rax, r8
cmp cl, dl
mov qword [rsp + 0x28], rax
je 0x140144bc1
add rsp, 0x58
ret
jns 0x140144c7e
add dword [rcx + rbp*8 - 0x141], eax
mov ecx, 0x8b16dc0b
xor ecx, 0xfc7eba21
or eax, ecx
mov ecx, 0x4a4022ee
xor ecx, 0x75c489db
xor edx, edx
div ecx
cmp eax, 0x7e9e3772
je 0x140144e4b
mov r8d, dword [0x140258dd0]
xor r8d, 0xd1c30119
mov edx, dword [0x140258dd4]
mov ecx, 0x8efac137
xor ecx, 0x71053ec8
mov eax, r8d
xor eax, ecx
and eax, 0x7dbca97b
mov r9d, 0x6d190b3b
xor r9d, 0x10a5a240
mov ecx, 0xf0115b17
xor ecx, 0xfeea4e8
xor r9d, ecx
and r8d, r9d
mov ecx, edx
xor ecx, 0xffffffff
and ecx, 0x7dbca97b
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xb074b79f
xor ecx, 0x58904a60
sub eax, ecx
mov edx, 0x289ab45a
xor edx, 0xd7654ba5
mov ecx, eax
xor ecx, edx
mov edx, 0x7d78bbe6
xor edx, 0x2071104c
and ecx, edx
mov edx, 0xffffffff
xor edx, 0x5d09abaa
and eax, edx
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xfd31a979
xor edx, 0xef0e2aca
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x123f83b3
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x123f83b3
mov r8d, 0xcdfbba41
xor r8d, 0xdfc439f2
or eax, r8d
imul eax, edx
add eax, ecx
mov dword [rsp + 0x30], eax
call fcn.14014494e
mov qword [rsp + 0x28], rax
add rax, 0x50
mov qword [rsp + 0x20], rax
lea rcx, [0x14027dbd8]
mov rax, qword [0x1402695a0]
call qword [rax]
mov rcx, qword [rsp + 0x28]
mov eax, dword [rsp + 0x30]
mov cl, byte [rcx + 0x50]
mov dl, pe_nt_image_headers64
xor dl, 0x80
cmp cl, dl
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0x19c7e9
jbe 0x140144ca5
mov al, byte [rsp + 0x37]
test al, 1
jne 0x140144dda
jmp 0x140144e41
lea rcx, [0x14027dba0]
call fcn.140143fe0
mov rax, qword [rsp + 0x20]
mov al, byte [rax]
mov cl, 0x45
xor cl, 0x45
cmp al, cl
jne 0x140144e41
lea rcx, [0x1402d2410]
mov rax, qword [0x1402695a0]
call qword [rax]
mov rax, qword [rsp + 0x20]
cmp byte [rax], 0
jne 0x140144e41
lea rcx, [0x1402d2438]
mov rax, qword [0x1402695a0]
call qword [rax]
mov rax, qword [rsp + 0x20]
mov al, byte [rax]
mov cl, 0x95
xor cl, 0x95
cmp al, cl
jne 0x140144e41
call fcn.140144ab0
nop
add rsp, 0x38
jmp fcn.140037d85
cmp ebx, ecx
add bh, byte [rdx - 0x17]
push rcx
invalid