Function at 0x1401d72e0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x18
lea rbp, [rsp + 0x10]
mov qword [rbp - 8], r8
mov qword [rbp], rdx
mov eax, dword [0x1415a7fa8]
imul eax, dword [0x1415a7fac]
mov rsi, rcx
mov ecx, eax
not ecx
and ecx, 0x51e287a1
mov edx, eax
and edx, 0xae1d785e
imul edx, ecx
mov ecx, eax
and ecx, 0x51e287a1
or eax, 0x51e287a1
imul eax, ecx
add eax, edx
imul rax, rax, 0x39c34449
shr rax, 0x3d
imul eax, eax, 0x1b7365a8
cmp eax, 0x44747a78
jbe 0x1401d7359
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov ecx, 0xb4cea375
nop
mov edx, dword [0x1415a7fb0]
and edx, dword [0x1415a7fb4]
imul rdx, rcx
shr rdx, 0x3f
or edx, 0x3c22f482
mov eax, edx
and eax, 0x38020483
add eax, eax
sub edx, eax
add edx, 0x7a5206eb
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov r14, rsp
cmp edx, 0x91cd151d
ja 0x1401d7360
mov rdi, r9
shr rdi, 1
movabs rdx, 0x7ffffffffffffffd
lea r13, [rdi + 1]
nop word [rax + rax]
mov eax, dword [0x1415a7fb8]
sub eax, dword [0x1415a7fbc]
xor eax, 0xc4697d66
imul rax, rax, 0x11d8fb
shr rax, 0x31
lea ecx, [rax - 0x20de2c20]
xor ecx, 0x78797f3
and eax, 3
or eax, ecx
cmp eax, 0x9c3edf37
je 0x1401d73c0
mov qword [rbp - 0x10], r9
cmp r9, rdx
ja 0x1401d7448
lea r12, [r13*2]
mov eax, dword [0x1415a7fc8]
xor edx, edx
div dword [0x1415a7fcc]
mov ecx, eax
xor ecx, 0x49603569
add ecx, eax
and eax, 0xb69fca96
sub ecx, eax
add ecx, 0x5ca22d0
mov eax, ecx
xor eax, 0x3593bf76
and ecx, 0x4a6c4089
add ecx, ecx
sub ecx, eax
cmp ecx, 0xe86b90f8
jbe 0x1401d74a8
jmp 0x1401d7502
mov eax, dword [0x1415a7fc0]
imul eax, dword [0x1415a7fc4]
imul eax, eax, 0x5cfdfe49
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xeb821e84
and ecx, 0x147de17b
imul ecx, edx
mov edx, eax
and edx, 0x147de17b
or eax, 0x147de17b
imul eax, edx
add eax, ecx
or eax, 0x7006bef1
cmp eax, 0x6e5fe8ef
jae 0x1401d7490
ud2
xor eax, eax
nop word cs:[rax + rax]
ud2
mov eax, dword [0x1415a7fd0]
mov ecx, dword [0x1415a7fd4]
not eax
not ecx
mov edx, eax
or edx, ecx
not edx
and ecx, eax
or ecx, edx
mov eax, ecx
not eax
xor ecx, 0x3fa34d33
add ecx, eax
and eax, 0x3fa34d33
sub ecx, eax
or ecx, 0x5daca837
imul ebx, ecx, 0xa2dcc673
movzx eax, byte [0x1415acbd0]
sub rsp, 0x20
xor ecx, ecx
mov rdx, r12
call fcn.1401ac910
add rsp, 0x20
cmp ebx, 0x195e69b8
jae 0x1401d751d
movzx eax, byte [0x1415acbd0]
sub rsp, 0x20
xor ecx, ecx
mov rdx, r12
call fcn.1401ac910
add rsp, 0x20
jmp 0x1401d74a8
mov r15, rax
mov eax, dword [0x1415a7fd8]
imul eax, dword [0x1415a7fdc]
or eax, 0xe142ff25
cmp eax, 0xaa569b6c
je 0x1401d7520
test r15, r15
movabs r12, 0x7ffffffffffffffd
je 0x1401d75b9
nop dword [rax + rax]
mov eax, dword [0x1415a7fe8]
xor edx, edx
div dword [0x1415a7fec]
mov ecx, eax
and ecx, 0x53eb6eca
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0x10ea501c
xor eax, 0xbbb219a0
cmp eax, 0xdb29ae5c
ja 0x1401d7550
mov eax, dword [0x1415a7ff0]
mov ecx, dword [0x1415a7ff4]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
or ecx, 0xdbed4ee5
imul rax, rcx, 0x2032b6f1
shr rax, 0x3d
imul eax, eax, 0xe537bb5c
cmp eax, 0x619e7c51
mov rbx, qword [rbp - 0x10]
jne 0x1401d75e6
jmp 0x1401d7637
ud2
mov eax, dword [0x1415a7ffc]
xor eax, dword [0x1415a7ff8]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xd7c2cdd3
and ecx, 0x283d322c
imul ecx, edx
mov edx, eax
and edx, 0x283d322c
or eax, 0x283d322c
imul eax, edx
add eax, ecx
or eax, 0x1c160ef9
imul rax, rax, 0x284d7da7
shr rax, 0x3c
mov qword [r14], 0
cmp eax, 0xc247966b
jbe 0x1401d7640
mov qword [r14], 0
jmp 0x1401d75e6
sub rsp, 0x30
mov qword [rsp + 0x20], r14
mov rcx, qword [rbp]
mov rdx, qword [rbp - 8]
mov r8, r15
mov r9, rbx
call fcn.14020d950
add rsp, 0x30
test eax, eax
je 0x1401d76fa
mov rcx, qword [r14]
nop dword [rax + rax]
mov eax, dword [0x1415a8000]
xor edx, edx
div dword [0x1415a8004]
and eax, 0x20441a05
mov edx, eax
not edx
or edx, 0xe09ecbf
add eax, edx
inc eax
cmp eax, 0xec206a33
ja 0x1401d7670
cmp rcx, rbx
jne 0x1401d7747
mov ecx, dword [0x1415a8010]
mov eax, dword [0x1415a8014]
mov edx, eax
not edx
and edx, ecx
xor eax, ecx
add eax, ecx
sub eax, edx
add eax, 0xb3a19b0d
mov ecx, eax
not ecx
and ecx, 0x230f3f5b
mov edx, eax
and edx, 0x5cf0c0a4
imul edx, ecx
mov ecx, eax
and ecx, 0x230f3f5b
or eax, 0x230f3f5b
imul eax, ecx
add eax, edx
or eax, 0x8f7ed40a
cmp eax, 0xb9e8e97e
jae 0x1401d77de
jmp 0x1401d780f
sub rsp, 0x20
call sub.KERNEL32.dll_GetLastError
add rsp, 0x20
lea rdi, [0x141578faa]
nop
mov eax, dword [0x1415a8008]
or eax, dword [0x1415a800c]
and eax, 0xc3b73da9
mov ecx, eax
not ecx
or ecx, 0x3872aeac
add eax, ecx
add eax, 0xafc93806
cmp eax, 0x9edcd2be
jb 0x1401d7710
mov r14d, 0x1b
xor eax, eax
test al, al
je 0x1401d775a
jmp 0x1401d77b0
mov r14d, 0x3a
lea rdi, [0x141578f70]
xor eax, eax
test al, al
jne 0x1401d77b0
mov ebx, dword [0x1415a8038]
mov eax, dword [0x1415a803c]
mov ecx, ebx
and ecx, eax
or ebx, eax
add ebx, ecx
xor ebx, 0x42022f6
or ebx, 0xc1cf8500
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], r14
lea rax, [r12 + 3]
mov qword [rsi], rax
mov rcx, qword [0x1415acb98]
sub rsp, 0x20
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
cmp ebx, 0xcc310041
jne 0x1401d78a0
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], r14
lea rax, [r12 + 3]
mov qword [rsi], rax
mov rcx, qword [0x1415acb98]
sub rsp, 0x20
xor edx, edx
mov r8, r15
call fcn.14020ae70
add rsp, 0x20
jmp 0x1401d775a
mov eax, dword [0x1415a8018]
add eax, dword [0x1415a801c]
imul rax, rax, 0x3f7b5009
shr rax, 0x3c
add eax, 0xf362ebba
mov word [r15 + rdi*2], 0
mov qword [rsi], r13
mov qword [rsi + 8], r15
cmp eax, 0x84a462df
jae 0x1401d781f
mov word [r15 + rdi*2], 0
mov qword [rsi], r13
mov qword [rsi + 8], r15
jmp 0x1401d77de
mov eax, dword [0x1415a8020]
xor edx, edx
div dword [0x1415a8024]
add eax, 0x5b43093c
not eax
or eax, 0x1aef6304
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x44108c20
and eax, 0xb98b31df
imul eax, edx
mov edx, ecx
and edx, 0xa10010db
or ecx, 0xb98b31df
imul ecx, edx
add ecx, eax
cmp ecx, 0x41c4a92b
jae 0x1401d7870
mov qword [rsi + 0x10], r13
nop dword [rax]
mov eax, dword [0x1415a8028]
imul eax, dword [0x1415a802c]
add eax, 0x7f46b180
and eax, 0x6a8043e5
imul rax, rax, 0x37bc6e8d
shr rax, 0x3c
mov qword [rsi + 0x10], r13
cmp eax, 0x2a068f49
ja 0x1401d7870
nop dword [rax]
mov eax, dword [0x1415a8030]
xor eax, dword [0x1415a8034]
mov ecx, eax
xor ecx, 0xa4420108
xor eax, 0x4bb14001
or eax, 0xa44eab98
or ecx, 0x5bb15467
and ecx, eax
xor ecx, 0xd7f22b71
cmp ecx, 0x93611278
jb 0x1401d78a0
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret