Function at 0x1400c39d0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
nop word cs:[rax + rax]
mov eax, dword [0x141dd89f0]
imul eax, dword [0x141dd89f4]
and eax, 0x9405113
xor eax, 0xbc1e410
or eax, 0xb42c0ac8
cmp eax, 0xed83ab83
je 0x1400c39f0
cmp qword [r9 + 8], 0
je 0x1400c3c03
nop
mov eax, dword [0x141dd89f8]
xor eax, dword [0x141dd89fc]
imul rax, rax, 0x6a9297b5
shr rax, 0x3d
imul eax, eax, 0x948de970
xor eax, 0xb98fed8f
cmp eax, 0x3e02c55a
jb 0x1400c3a20
mov r8, qword [r9]
nop dword [rax]
mov eax, dword [0x141dd8a00]
sub eax, dword [0x141dd8a04]
add eax, 0x7be204
imul rax, rax, 0x63f22f79
shr rax, 0x3e
or eax, 0x84fb6624
cmp eax, 0xeb2cd8ff
ja 0x1400c3a50
cmp qword [r9 + 0x10], 0
je 0x1400c3af0
mov eax, dword [0x141dd8a68]
add eax, dword [0x141dd8a6c]
xor eax, 0xc4881a5e
imul eax, eax, 0xd4bb0ee8
cmp eax, 0x3cdcde71
jne 0x1400c3ab0
mov rax, qword [0x141dde6e0]
nop word cs:[rax + rax]
mov eax, dword [0x141dd8a70]
or eax, dword [0x141dd8a74]
imul eax, eax, 0x6c290c1e
add eax, 0x216c6f39
mov rcx, qword [0x141dde6e0]
cmp eax, 0x7ef69e1b
jb 0x1400c3ab0
xor edx, edx
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
jmp 0x1400c3e88
mov eax, dword [0x141dd8a08]
xor eax, dword [0x141dd8a0c]
and eax, 0x299ee280
add eax, 0x8196eeda
imul rax, rax, 0x7d6151cd
shr rax, 0x3d
cmp eax, 0x30dee1c2
ja 0x1400c3af0
nop dword [rax + rax]
mov eax, dword [0x141dd8a10]
or eax, dword [0x141dd8a14]
imul eax, eax, 0x64b833de
add eax, 0x7e29d080
or eax, 0xb17a22bd
cmp eax, 0xdc9efaf4
jb 0x1400c3b20
test rsi, rsi
je 0x1400c3bc0
movzx eax, byte [0x141dde6f8]
nop
mov eax, dword [0x141dd8a28]
sub eax, dword [0x141dd8a2c]
or eax, 0x348f3211
xor eax, 0x36ae4dea
add eax, 0x28ba9151
cmp eax, 0x7b29d2af
jb 0x1400c3b50
cmp rdi, 0x11
jae 0x1400c3d5b
xor ecx, ecx
mov rdx, rsi
call fcn.1400c29b0
nop word cs:[rax + rax]
mov ecx, dword [0x141dd8a50]
add ecx, dword [0x141dd8a54]
imul ecx, ecx, 0xb33c0bb8
or ecx, 0xaaf77021
add ecx, 0xe2c6aaf2
cmp ecx, 0x6ac0fef7
jbe 0x1400c3b90
jmp 0x1400c3e88
mov eax, dword [0x141dd8a18]
or eax, dword [0x141dd8a1c]
imul eax, eax, 0xc65d3636
and eax, 0x270288a8
cmp eax, 0xf9baf9f5
ja 0x1400c3bc0
nop
mov eax, dword [0x141dd8a20]
add eax, dword [0x141dd8a24]
imul eax, eax, 0xe8f4e239
add eax, 0x8e831cce
cmp eax, 0xaf1ba711
ja 0x1400c3be0
jmp 0x1400c3cc5
test rsi, rsi
je 0x1400c3ca0
mov eax, dword [0x141dd8a80]
and eax, dword [0x141dd8a84]
imul rax, rax, 0x580fb617
shr rax, 0x3d
imul eax, eax, 0xf4cac1fa
xor eax, 0x6a206584
cmp eax, 0xdaabade0
jbe 0x1400c3c40
movzx eax, byte [0x141dde6f8]
nop dword [rax]
mov eax, dword [0x141dd8a88]
sub eax, dword [0x141dd8a8c]
add eax, 0x753a57f0
movzx ecx, byte [0x141dde6f8]
cmp eax, 0x739d9eb5
jb 0x1400c3c40
nop
mov eax, dword [0x141dd8a90]
imul eax, dword [str.HWhn]
imul eax, eax, 0x8b2b19b
add eax, 0xfdf212d8
cmp eax, 0x18fbbabb
jb 0x1400c3c60
cmp rdi, 0x11
jae 0x1400c3ccd
xor ecx, ecx
mov rdx, rsi
call fcn.1400c29b0
jmp 0x1400c3e88
mov eax, dword [str.tW0aq]
mov ecx, dword [0x141dd8a7c]
add eax, ecx
add eax, 0x2ebcb6b3
or eax, 0xe3e5ee62
imul eax, eax, 0xf8e3d411
cmp eax, 0x924aa52d
ja 0x1400c3ca0
mov rax, rdi
jmp 0x1400c3e88
lea rdx, [rdi + rsi]
xor ecx, ecx
call fcn.1400c29b0
mov rcx, rax
nop dword [rax + rax]
mov eax, dword [0x141dd8a98]
xor edx, edx
div dword [0x141dd8a9c]
and eax, 0x2010802c
or eax, 0xd6eb7b93
imul rdx, rax, 0x28f92111
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1e
cmp eax, 0xbc3f02aa
ja 0x1400c3ce0
test rcx, rcx
je 0x1400c3e86
nop dword [rax]
mov eax, dword [0x141dd8aa0]
xor eax, dword [0x141dd8aa4]
imul eax, eax, 0x1bbe646
add eax, 0xc9d24c25
cmp eax, 0x17a45c69
jb 0x1400c3d20
lea rax, [rdi - 1]
and rax, rcx
mov rdx, rdi
sub rdx, rax
mov rax, rcx
add rax, rdx
mov qword [rcx + rdx - 8], rcx
jmp 0x1400c3e88
lea r14, [rdi + rsi]
nop
mov eax, dword [0x141dd8a30]
or eax, dword [0x141dd8a34]
imul eax, eax, 0x1de3ca65
imul rax, rax, 0x5a93f707
shr rax, 0x3d
cmp eax, 0xc8bb2f84
je 0x1400c3d60
mov eax, dword [0x141dd8a38]
or eax, dword [0x141dd8a3c]
xor eax, 0x2810004
and eax, 0x82f100c7
cmp eax, 0x8e3d2be6
je 0x1400c3ddc
mov eax, dword [0x141dd8a40]
xor edx, edx
div dword [0x141dd8a44]
add eax, 0xebd298af
mov r15d, 0xa5fd9955
imul r15, rax
shr r15, 0x3f
add r15d, 0xc83eaa73
xor ecx, ecx
mov rdx, r14
call fcn.1400c29b0
cmp r15d, 0x40c824b1
jae 0x1400c3de8
xor ecx, ecx
mov rdx, r14
call fcn.1400c29b0
jmp 0x1400c3da1
mov rcx, rax
nop dword [rax + rax]
mov eax, dword [0x141dd8a48]
xor eax, dword [0x141dd8a4c]
imul eax, eax, 0xa7fc4b68
cmp eax, 0x841bfc3b
jb 0x1400c3df0
test rcx, rcx
je 0x1400c3e86
lea rax, [rdi - 1]
and rax, rcx
mov rdx, rdi
sub rdx, rax
nop dword [rax + rax]
mov eax, dword [0x141dd8a58]
imul eax, dword [0x141dd8a5c]
add eax, 0x10a461b6
and eax, 0x5f1abe44
cmp eax, 0x7bd0f90
jb 0x1400c3e20
mov rax, rcx
add rax, rdx
mov qword [rcx + rdx - 8], rcx
nop dword [rax]
mov ecx, dword [0x141dd8a60]
xor ecx, dword [0x141dd8a64]
xor ecx, 0x2a205ae
or ecx, 0x701dc811
imul rdx, rcx, 0x114c8495
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1f
cmp ecx, 0x8c1eebe6
je 0x1400c3e50
jmp 0x1400c3e88
xor eax, eax
mov ecx, dword [0x141dd8aa8]
add ecx, dword [0x141dd8aac]
and ecx, 0x800c0009
or ecx, 0x1fd33e72
imul rcx, rcx, 0x23960a2b
shr rcx, 0x3c
cmp ecx, 0x998b2e83
je 0x1400c3ef3
mov ecx, dword [0x141dd8ab0]
and ecx, dword [0x141dd8ab4]
or ecx, 0x6ebcbede
xor ecx, 0x1ec34982
add ecx, 0xcd61dd42
xor edx, edx
test rax, rax
sete dl
mov r8, rax
cmove r8, rdi
mov qword [rbx + 8], r8
mov qword [rbx + 0x10], rsi
mov qword [rbx], rdx
cmp ecx, 0xd9d81a83
jbe 0x1400c3f0f
xor ecx, ecx
test rax, rax
mov rdx, rax
cmove rdx, rdi
sete cl
mov qword [rbx + 8], rdx
mov qword [rbx + 0x10], rsi
mov qword [rbx], rcx
jmp 0x1400c3eb3
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret