Function at 0x140120c20
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
mov rbp, rsp
mov eax, dword [0x1415984d0]
and eax, dword [0x1415984d4]
imul eax, eax, 0x23c0ff11
add eax, 0x7bf829d6
or eax, 0x46664778
cmp eax, 0x197c07f
je 0x140120c92
mov eax, dword [0x1415984d8]
xor edx, edx
div dword [0x1415984dc]
mov ecx, eax
and ecx, 0x2126c176
or eax, 0x2126c176
add eax, ecx
imul eax, eax, 0x329f091d
imul rcx, rax, 0x2536eeb
shr rcx, 0x38
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov rsi, rsp
cmp ecx, 0x11c38429
jne 0x140120ca1
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
jmp 0x140120c4c
mov eax, dword [0x1415984e0]
mov ecx, dword [0x1415984e4]
mov edx, eax
xor edx, ecx
not ecx
and ecx, eax
add ecx, ecx
sub ecx, edx
and ecx, 0xe0d8dc6f
add ecx, 0x16b04ec2
mov eax, ecx
and eax, 0x5381e118
add eax, eax
sub ecx, eax
cmp ecx, 0xc1c4c7a0
je 0x140120d37
mov eax, dword [0x1415984e8]
mov ecx, dword [0x1415984ec]
not eax
not ecx
or ecx, eax
mov edx, ecx
not edx
or ecx, 0x3386a0bd
or edx, 0xcc795f42
and edx, ecx
add edx, 0xd52c544e
and edx, 0xc42a1978
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov rbx, rsp
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov rdi, rsp
mov qword [rdi], 0
cmp edx, 0x62933bf1
jbe 0x140120d60
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov rax, rsp
mov qword [rax], 0
jmp 0x140120cd8
mov eax, dword [str.NqIFhI]
mov ecx, dword [0x1415984f4]
mov edx, eax
and edx, ecx
add edx, edx
add eax, ecx
sub eax, edx
imul eax, eax, 0x426b36d9
add eax, 0x50e18e91
mov ecx, eax
xor ecx, 0x88727b67
or eax, 0x778d8498
and eax, ecx
cmp eax, 0x9b4b2c27
ja 0x140120de5
mov eax, dword [0x1415984f8]
sub eax, dword [0x1415984fc]
mov ecx, eax
not ecx
and ecx, 0x7b8c0f3d
mov edx, eax
and edx, 0x473f0c2
imul edx, ecx
mov ecx, eax
and ecx, 0x7b8c0f3d
or eax, 0x7b8c0f3d
imul eax, ecx
lea ecx, [rax + rdx]
add ecx, 0xba313935
or ecx, 0x91a99ea3
mov eax, dword [0x1415acb18]
cmp ecx, 0x9a5cab89
jne 0x140120ded
mov eax, dword [0x1415acb18]
jmp 0x140120d97
cmp eax, 4
je 0x140120f20
nop word cs:[rax + rax]
mov eax, dword [0x141598504]
add eax, dword [0x141598500]
not eax
or eax, 0xb5285d04
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x48d18023
and eax, 0x70673d8
imul eax, edx
mov edx, ecx
and edx, 0x20622d8
or ecx, 0x70673d8
imul ecx, edx
add ecx, eax
not ecx
or ecx, 0xa5113526
cmp ecx, 0xacd8824b
jb 0x140120e00
mov eax, dword [str.9_n_r]
xor eax, dword [0x14159850c]
or eax, 0x256fce86
lea ecx, [rax - 0x297d7222]
not ecx
or ecx, 0xc8cd11cd
add eax, ecx
add eax, 0xd6828ddf
cmp eax, 0x8983d4
jb 0x140120e80
mov qword [rbx], rdi
xor eax, eax
test al, al
je 0x140120e85
mov qword [rbx], rdi
jmp 0x140120e77
mov eax, dword [0x141598510]
xor edx, edx
div dword [0x141598514]
imul eax, eax, 0xf0cbd9e6
imul rax, rax, 0x47b988b3
shr rax, 0x3e
or eax, 0x78474710
cmp eax, 0xf308b687
ja 0x140121529
nop word cs:[rax + rax]
mov r14d, dword [0x141598518]
imul r14d, dword [0x14159851c]
mov eax, r14d
not eax
mov ecx, r14d
or ecx, 0x9e899bb9
and eax, 0x21044402
mov edx, ecx
and edx, 0xc2733aed
imul edx, eax
and ecx, 0x3d8cc512
or r14d, 0xbf8ddfbb
imul r14d, ecx
add r14d, edx
mov qword [rsi], rbx
sub rsp, 0x20
mov rcx, rsi
call fcn.14020caa0
add rsp, 0x20
cmp r14d, 0xcd6ebbe9
je 0x140120ec0
nop dword [rax]
mov eax, dword [0x141598520]
add eax, dword [0x141598524]
xor eax, 0x5842000c
and eax, 0x5842c23c
cmp eax, 0x2ad4eb7d
je 0x140120f20
mov r8, qword [rdi]
mov eax, dword [0x141598528]
xor eax, dword [0x14159852c]
add eax, 0x61d5bfd5
xor eax, 0x5438d7f3
imul eax, eax, 0x96a351cc
cmp eax, 0xc08d8db8
ja 0x140120f40
mov rcx, qword [rdi + 8]
cmp r8, 3
jne 0x140121000
nop word cs:[rax + rax]
mov eax, dword [0x141598530]
mov edx, dword [0x141598534]
not eax
not edx
mov r8d, eax
or r8d, edx
not r8d
and edx, eax
or edx, r8d
mov eax, edx
or eax, 0x16a5f4c9
sub eax, edx
and eax, 0x567fe81c
xor eax, 0xe69e801a
cmp eax, 0xc2b233f3
jb 0x140120f80
nop dword [rax + rax]
mov eax, dword [0x141598538]
and eax, dword [0x14159853c]
and eax, 0xf9345f01
mov edx, eax
add edx, 0x74fb310f
not edx
or edx, 0xf8e3211c
add eax, edx
add eax, 0x74fb310f
cmp eax, 0x7d1df959
je 0x140120fc0
mov rsi, rcx
jmp 0x1401215fc
mov edx, dword [0x141598540]
mov eax, dword [0x141598544]
mov r9d, edx
not r9d
or edx, eax
not eax
or eax, r9d
not eax
not edx
or edx, eax
mov eax, edx
not eax
and edx, 0xc75287c
mov r9d, eax
and r9d, 0x38ad783
imul r9d, edx
mov edx, eax
and edx, 0xc75287c
or eax, 0xc75287c
imul eax, edx
add eax, r9d
mov edx, eax
or edx, 0xf219fecf
mov r9d, eax
not r9d
and r9d, 0xcc00130
mov r10d, edx
and r10d, 0xf32ebece
imul r10d, r9d
and edx, 0xcd14131
or eax, 0xfed9ffff
imul eax, edx
add eax, r10d
cmp eax, 0x231c7f37
jb 0x140121000
mov rax, qword [0x1415acb10]
mov edx, 0xa2440f3d
nop word cs:[rax + rax]
mov r9d, dword [0x141598548]
mov r10d, dword [0x14159854c]
mov r11d, r9d
not r11d
and r11d, r10d
mov esi, r10d
not esi
and esi, r9d
imul esi, r11d
mov r11d, r9d
and r11d, r10d
or r9d, r10d
imul r9d, r11d
add r9d, esi
imul r9, rdx
shr r9, 0x3c
not r9d
or r9d, 0xa4c3a666
cmp r9d, 0x7118215e
je 0x1401210a0
test rax, rax
je 0x140121541
nop word [rax + rax]
mov eax, dword [0x141598568]
xor edx, edx
div dword [0x14159856c]
add eax, 0xc581e38a
mov edx, eax
xor edx, 0x89830008
xor eax, 0x267087e5
or edx, 0x766cfe16
and edx, eax
cmp edx, 0x995c767d
je 0x140121100
mov eax, 0x9bce1e65
nop word cs:[rax + rax]
mov edx, dword [0x141598570]
mov r9d, dword [str.K6_rP]
mov r10d, edx
and r10d, r9d
or edx, r9d
add edx, r10d
mov r9d, edx
not r9d
or r9d, 0x5246b130
and r9d, 0x5246f5ba
and edx, 0x80210244
sub edx, r9d
imul rdx, rax
shr rdx, 0x3e
cmp edx, 0x4e17e0f4
ja 0x140121140
lea rsi, [0x1415acb10]
cmp r8, 2
jb 0x1401215fc
nop word [rax + rax]
mov eax, dword [0x141598578]
mov edx, dword [0x14159857c]
mov r8d, eax
and r8d, edx
add r8d, r8d
add eax, edx
sub eax, r8d
not eax
and eax, 0xbf1d9693
xor eax, 0x11d7ea92
imul rax, rax, 0x7d34c6f1
shr rax, 0x3e
cmp eax, 0xe625b18f
je 0x1401211a0
mov eax, ecx
and eax, 3
nop dword [rax]
mov edx, dword [0x141598580]
mov r8d, dword [0x141598584]
not edx
not r8d
or r8d, edx
not r8d
imul edx, r8d, 0xed11ab83
mov r8d, edx
not r8d
or r8d, 0x27ec9ba3
add edx, r8d
inc edx
mov r8d, edx
and r8d, 0x5c26ac67
add r8d, r8d
sub edx, r8d
add edx, 0xdc26ac67
cmp edx, 0x6412056e
jb 0x1401211e0
cmp rax, 2
jg 0x1401214e0
cmp eax, 1
jne 0x1401215fc
lea rdi, [rcx - 1]
mov rbx, qword [rcx - 1]
mov eax, 0x824195dd
nop
mov edx, dword [0x141598590]
add edx, dword [0x141598594]
mov r8d, edx
and r8d, 0xeb2d0352
or edx, 0xeb2d0352
add edx, r8d
xor edx, 0x9321e348
imul rdx, rax
shr rdx, 0x3c
cmp edx, 0x8d80fad6
ja 0x140121250
mov r14, qword [rcx + 7]
mov rax, qword [r14]
nop dword [rax]
mov ecx, dword [0x141598598]
or ecx, dword [0x14159859c]
or ecx, 0xbeffb25f
cmp ecx, 0x59d8cc38
je 0x140121290
test rax, rax
je 0x1401212c0
sub rsp, 0x20
mov rcx, rbx
call rax
add rsp, 0x20
nop dword [rax]
mov eax, dword [0x1415985a0]
sub eax, dword [0x1415985a4]
mov ecx, eax
not ecx
and ecx, 0x61da761b
mov edx, eax
and edx, 0x9e2589e4
imul edx, ecx
mov ecx, eax
and ecx, 0x61da761b
or eax, 0x61da761b
imul eax, ecx
add eax, edx
mov ecx, eax
not ecx
or ecx, 0xa79f0848
add eax, ecx
add eax, 0xc3d774b6
cmp eax, 0xaaf9b9d8
ja 0x1401212c0
nop dword [rax + rax]
mov eax, dword [0x1415985a8]
or eax, dword [0x1415985ac]
imul eax, eax, 0xe0805cdb
mov ecx, eax
not ecx
and ecx, 0x55631c49
mov edx, eax
and edx, 0xaa9ce3b6
imul edx, ecx
mov ecx, eax
and ecx, 0x55631c49
or eax, 0x55631c49
imul eax, ecx
add eax, edx
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x2a026b31
and ecx, 0xd5fd94ce
imul ecx, edx
mov edx, eax
and edx, 0xd5fd94ce
or eax, 0xd5fd94ce
imul eax, edx
add eax, ecx
cmp eax, 0x176558b0
je 0x140121310
cmp qword [r14 + 8], 0
je 0x140121676
mov rax, qword [r14 + 0x10]
xor ecx, ecx
nop dword [rax + rax]
test cl, cl
jne 0x140121390
nop word cs:[rax + rax]
mov ecx, dword [0x1415985b0]
mov edx, dword [0x1415985b4]
add ecx, edx
add ecx, 0x66eed0f0
mov edx, ecx
or edx, 0xf382ff7a
not ecx
or ecx, 0xc7d0085
and ecx, edx
cmp ecx, 0x1bfc8472
je 0x1401213a0
cmp rax, 0x11
jb 0x140121487
nop dword [rax + rax]
mov eax, dword [0x1415985b8]
sub eax, dword [0x1415985bc]
mov ecx, eax
not ecx
or ecx, 0x2084084
or eax, 0x80542300
and eax, ecx
and eax, 0x825c6384
add eax, 0x642be4a6
cmp eax, 0x4ba783e2
jb 0x1401213e0
mov eax, dword [0x1415985c0]
xor edx, edx
div dword [0x1415985c4]
nop dword [rax]
mov eax, dword [0x1415985c8]
mov ecx, dword [0x1415985cc]
xor ecx, eax
not ecx
and ecx, eax
add ecx, 0x9855323f
or ecx, 0xccb532c9
cmp ecx, 0x116827fd
jb 0x140121420
mov rbx, qword [rbx - 8]
nop word [rax + rax]
mov eax, dword [0x1415985d0]
mov ecx, dword [0x1415985d4]
mov edx, eax
not edx
and edx, ecx
not edx
not ecx
and ecx, eax
not ecx
and ecx, edx
not ecx
add ecx, 0xdd64b3b1
mov eax, ecx
and eax, 0x72f66b32
add eax, eax
sub ecx, eax
cmp ecx, 0x2371cb63
je 0x140121450
mov eax, dword [0x1415985d8]
imul eax, dword [0x1415985dc]
add eax, 0x2ad4bf27
mov ecx, eax
not ecx
and ecx, 0xa4c7deb0
mov edx, eax
and edx, 0x5b38214f
imul edx, ecx
mov ecx, eax
and ecx, 0xa4c7deb0
or eax, 0xa4c7deb0
imul eax, ecx
add eax, edx
mov ecx, eax
xor ecx, 0xae7b6e98
or eax, 0x51849160
and eax, ecx
cmp eax, 0x1da53fac
jbe 0x140121611
jmp 0x14012165a
mov eax, dword [0x141598588]
xor edx, edx
div dword [0x14159858c]
or eax, 0xad973e58
imul rax, rax, 0x3a806ad5
shr rax, 0x3d
add eax, 0xa501e497
cmp eax, 0xdcc0ff59
ja 0x1401214e0
xor eax, eax
nop dword [rax]
test al, al
jne 0x140121510
mov al, 1
nop word cs:[rax + rax]
test al, al
je 0x140121520
jmp 0x1401215fc
mov qword [rsi], rbx
sub rsp, 0x20
mov rcx, rsi
call fcn.140231b70
add rsp, 0x20
jmp 0x140120ec0
mov eax, dword [0x141598550]
mov ecx, dword [0x141598554]
not eax
not ecx
or ecx, eax
not ecx
mov eax, ecx
and eax, 0x6a239b4f
add eax, eax
neg eax
add eax, ecx
add eax, 0xdebea10a
imul rax, rax, 0x6660d967
shr rax, 0x3b
cmp eax, 0xde2e0fb
jne 0x140121580
ud2
mov eax, dword [0x141598558]
imul eax, dword [0x14159855c]
or eax, 0x4e75d11d
imul eax, eax, 0xacad20ab
ud2
xor eax, eax
nop
test al, al
jne 0x140121600
mov rax, rsi
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
mov eax, dword [0x1415985e0]
xor edx, edx
div dword [0x1415985e4]
mov r14d, eax
add r14d, 0xffb2d364
xor r14d, 0x677b487e
add r14d, 0xdd0cf766
mov rcx, qword [0x1415acb98]
sub rsp, 0x20
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
cmp r14d, 0x4f6f8c56
jae 0x140121676
mov rcx, qword [0x1415acb98]
sub rsp, 0x20
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
jmp 0x140121611
mov rcx, qword [0x1415acb98]
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
jmp 0x1401215fc