Function at 0x140136320
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
nop word [rax + rax]
mov eax, dword [0x14159ad08]
sub eax, dword [0x14159ad0c]
add eax, 0xecdbaa0f
mov edx, eax
not edx
or edx, 0xb2403efe
or eax, 0x4dbfc101
and eax, edx
cmp eax, 0x550915e8
je 0x140136330
nop dword [rax]
mov eax, dword [0x14159ad10]
mov edx, dword [0x14159ad14]
xor edx, eax
not edx
and edx, eax
mov eax, edx
not eax
mov r8d, edx
and r8d, 0xede7827b
and eax, 0x12187d84
imul eax, r8d
mov r8d, edx
and r8d, 0x12187d84
or edx, 0x12187d84
imul edx, r8d
add eax, edx
add eax, 0xeff52c40
mov edx, eax
and edx, 0x64d4ba68
add edx, edx
sub eax, edx
cmp eax, 0x4d138475
je 0x140136360
test rcx, rcx
je 0x140136990
mov eax, dword [0x14159ad20]
mov edx, dword [0x14159ad24]
mov r8d, eax
not r8d
and r8d, edx
not edx
and edx, eax
sub edx, r8d
imul rax, rdx, 0x540e78d9
shr rax, 0x3e
add eax, 0x72b256c7
cmp eax, 0xce0c5538
ja 0x1401363c0
nop word cs:[rax + rax]
mov eax, dword [0x14159ad28]
mov edx, dword [0x14159ad2c]
mov r8d, eax
xor r8d, edx
not r8d
or eax, edx
and eax, r8d
add eax, 0x9ec15b2a
xor eax, 0x22794ac0
add eax, 0xaf61972d
cmp eax, 0xf2a50126
ja 0x140136400
mov eax, ecx
and eax, 3
nop word cs:[rax + rax]
mov edx, dword [0x14159ad30]
mov r8d, dword [0x14159ad34]
mov r9d, edx
xor r9d, r8d
not r9d
or edx, r8d
and edx, r9d
add edx, 0x1d9b5608
mov r8d, edx
not r8d
and r8d, 0xbcdb3446
and edx, 0x4324cbb9
sub edx, r8d
mov r8d, edx
not r8d
and r8d, 0xd3c9f71c
mov r9d, edx
and r9d, 0x2c3608e3
imul r9d, r8d
mov r8d, edx
and r8d, 0xd3c9f71c
or edx, 0xd3c9f71c
imul edx, r8d
add edx, r9d
cmp edx, 0x13310d46
je 0x140136440
cmp rax, 2
jg 0x140136970
cmp eax, 1
jne 0x140136990
lea rsi, [rcx - 1]
nop dword [rax]
mov eax, dword [0x14159ad40]
add eax, dword [0x14159ad44]
imul eax, eax, 0xf509eb4f
or eax, 0x164daf28
mov edx, eax
and edx, 0xac43910
add edx, edx
neg edx
add eax, edx
add eax, 0xac43910
cmp eax, 0x47d230c5
jb 0x1401364d0
mov rdi, qword [rcx - 1]
nop word cs:[rax + rax]
mov eax, dword [0x14159ad48]
or eax, dword [0x14159ad4c]
add eax, 0x3a4d3b06
mov edx, eax
not edx
mov r8d, eax
and r8d, 0x10402ef5
and edx, 0xefbfd10a
imul edx, r8d
mov r8d, eax
and r8d, 0xefbfd10a
or eax, 0xefbfd10a
imul eax, r8d
add eax, edx
mov edx, eax
not edx
or edx, 0x48bc3306
or eax, 0xb743ccf8
and eax, edx
cmp eax, 0xe07d9cf
je 0x140136510
mov rbx, qword [rcx + 7]
mov r14, qword [rbx]
test r14, r14
je 0x140136610
mov eax, dword [0x14159ad50]
xor edx, edx
div dword [0x14159ad54]
mov ecx, eax
and ecx, 0xde5949c7
or eax, 0xde5949c7
add eax, ecx
add eax, 0xc17a6a29
or eax, 0x64528340
cmp eax, 0xaa655fc9
jae 0x1401365b0
mov rcx, rdi
call r14
nop word [rax + rax]
mov eax, dword [0x14159ad58]
and eax, dword [0x14159ad5c]
add eax, 0x78640a33
or eax, 0xdccb32e4
imul ebp, eax, 0x79d55b72
mov rcx, rdi
call r14
cmp ebp, 0x5eff2cb8
jb 0x1401365b0
mov ecx, 0x903ed911
nop
mov eax, dword [0x14159ad60]
xor edx, edx
div dword [0x14159ad64]
imul eax, eax, 0xeddd37ca
add eax, 0x9c2334fc
imul rax, rcx
shr rax, 0x3f
cmp eax, 0x44d2ccd0
ja 0x1401365e0
nop dword [rax + rax]
mov eax, dword [0x14159ad68]
mov ecx, dword [0x14159ad6c]
mov edx, eax
and edx, ecx
xor eax, ecx
lea eax, [rax + rdx*2]
add eax, 0x68573844
mov ecx, eax
or ecx, 0xb6c90bba
mov edx, eax
not edx
and edx, 0x4830d000
mov r8d, ecx
and r8d, 0xa7c62c55
imul r8d, edx
and ecx, 0x5839d3aa
or eax, 0xfef9dbba
imul eax, ecx
add eax, r8d
cmp eax, 0x9ede1930
je 0x140136610
mov rcx, qword [rbx + 8]
mov rax, qword [rbx + 0x10]
nop word [rax + rax]
mov edx, dword [0x14159ad70]
mov r8d, dword [0x14159ad74]
mov r9d, r8d
not r9d
and r9d, edx
xor r8d, edx
add r8d, edx
sub r8d, r9d
imul edx, r8d, 0x31e413d0
mov r8d, edx
not r8d
or r8d, 0xd4b742d8
add r8d, edx
cmp r8d, 0x10f77eeb
je 0x140136670
test rcx, rcx
je 0x14013680a
nop dword [rax + rax]
mov ecx, dword [0x14159ad78]
sub ecx, dword [0x14159ad7c]
or ecx, 0x5ebac12a
mov edx, ecx
add edx, 0xfc08bbad
not edx
or edx, 0x21b86f62
add ecx, edx
add ecx, 0xfc08bbad
cmp ecx, 0xeb2cd62
je 0x1401366c0
cmp rax, 0x11
jb 0x140136748
nop dword [rax + rax]
mov eax, dword [0x14159ad80]
mov ecx, dword [0x14159ad84]
mov edx, ecx
not edx
mov r8d, eax
and r8d, edx
or edx, eax
not edx
imul edx, r8d
mov r8d, eax
and r8d, ecx
or eax, ecx
imul eax, r8d
add eax, edx
imul eax, eax, 0x708547e1
or eax, 0xb275d70a
imul eax, eax, 0x35a2baf1
cmp eax, 0xf6b45883
ja 0x140136700
mov rdi, qword [rdi - 8]
mov eax, dword [0x14159ad88]
imul eax, dword [0x14159ad8c]
mov ecx, eax
not ecx
and ecx, 0xd73de105
mov edx, eax
and edx, 0x28c21efa
imul edx, ecx
mov ecx, eax
and ecx, 0xd73de105
or eax, 0xd73de105
imul eax, ecx
add eax, edx
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x3adf7417
and ecx, 0xc5208be8
imul ecx, edx
mov edx, eax
and edx, 0xc5208be8
or eax, 0xc5208be8
imul eax, edx
add eax, ecx
mov ecx, 0x9afd7d71
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0x8b5e2ee3
jbe 0x1401367ca
mov rcx, qword [0x1415acb98]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov ebp, dword [0x14159ad90]
sub ebp, dword [0x14159ad94]
not ebp
or ebp, 0x1a75f9c9
mov rcx, qword [0x1415acb98]
xor edx, edx
mov r8, rdi
call rbx
cmp ebp, 0x9f3327b9
je 0x1401367e0
mov rdi, qword [0x1415acb98]
mov eax, dword [0x14159ad98]
mov ecx, dword [0x14159ad9c]
mov edx, ecx
and edx, eax
add eax, ecx
sub eax, edx
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x8577e659
and ecx, 0x7a8819a6
imul ecx, edx
mov edx, eax
and edx, 0x7a8819a6
or eax, 0x7a8819a6
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x6b897378
mov edx, ecx
not edx
and edx, 0x15e4ff6
mov r8d, eax
and r8d, 0x6a813008
imul r8d, edx
and eax, 0x1084370
or ecx, 0x15e4ff6
imul ecx, eax
add ecx, r8d
cmp ecx, 0x589ca36c
jae 0x140136892
mov rcx, rdi
xor edx, edx
mov r8, rsi
call fcn.14020ae70
mov rbx, qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax]
mov ebp, dword [0x14159ada0]
and ebp, dword [0x14159ada4]
mov eax, ebp
not eax
and eax, 0x25e8ceba
mov ecx, ebp
and ecx, 0x5a173145
imul ecx, eax
mov eax, ebp
and eax, 0x25e8ceba
or ebp, 0x25e8ceba
imul ebp, eax
add ebp, ecx
not ebp
or ebp, 0xb275f998
and ebp, 0xfbfdfd9d
mov rcx, rdi
xor edx, edx
mov r8, rsi
call rbx
cmp ebp, 0xf982f1e1
je 0x1401368a0
nop word cs:[rax + rax]
mov ecx, dword [0x14159ada8]
mov edx, dword [0x14159adac]
mov eax, ecx
not eax
or eax, edx
not edx
or edx, ecx
not edx
not eax
or eax, edx
mov ecx, eax
not ecx
and ecx, 0x452d5d81
mov edx, eax
and edx, 0xbad2a27e
imul edx, ecx
mov ecx, eax
and ecx, 0x452d5d81
or eax, 0x452d5d81
imul eax, ecx
add eax, edx
mov ecx, eax
and ecx, 0x3de927b6
xor ecx, 0x39890282
and eax, 0x39890282
or eax, ecx
cmp eax, 0x4b1c6a5f
jae 0x140136900
jmp 0x140136990
mov eax, dword [0x14159ad38]
and eax, dword [0x14159ad3c]
imul rax, rax, 0x79c71ed3
shr rax, 0x3e
cmp eax, 0xe758067e
je 0x140136970
nop
mov eax, dword [0x14159ad18]
imul eax, dword [0x14159ad1c]
add eax, 0xb6bce921
mov ecx, eax
and ecx, 0x57d7743e
or eax, 0x57d7743e
add eax, ecx
xor eax, 0xfca3062e
cmp eax, 0xfa38be0c
ja 0x140136990
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret