Function at 0x140091760
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 rsi, rcx
mov eax, dword [0x141dd06c0]
mov ecx, dword [0x141dd06c4]
add eax, ecx
add eax, 0x876c6c8
xor eax, 0x62910042
and eax, 0x73d118c2
cmp eax, 0xd00939d6
je 0x1400917ed
mov eax, dword [0x141dd06c8]
xor eax, dword [0x141dd06cc]
mov ecx, 0x80a164c5
imul rcx, rax
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
lea ecx, [rax*2 - 0x515089ca]
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov r15, rsp
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov rdi, rsp
cmp ecx, 0x582efae7
jae 0x140091809
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
jmp 0x14009179c
movabs r13, 0x7ffffffffffffffe
lea r14, [r8 + 1]
lea r12, [r8*2 + 2]
nop
mov eax, dword [0x141dd06d0]
and eax, dword [0x141dd06d4]
add eax, 0x3151b11a
and eax, 0x18b9bd0
add eax, 0xe6375c2
cmp eax, 0x330172d7
ja 0x140091820
nop word cs:[rax + rax]
cmp r12, r13
seta al
test r14, r14
sets cl
mov r9d, dword [0x141dd06d8]
xor r9d, dword [0x141dd06dc]
xor r9d, 0x2a2ce869
imul r9d, r9d, 0xa6efae3d
cmp r9d, 0xcf011e6b
je 0x140091850
or cl, al
jne 0x140091975
nop dword [rax]
mov eax, dword [0x141dd06e8]
or eax, dword [str.3GcY]
and eax, 0x469634be
imul eax, eax, 0x2fd45755
add eax, 0xc151056c
cmp eax, 0x9a1ce7f4
jb 0x140091890
nop word cs:[rax + rax]
mov eax, dword [0x141dd06f0]
sub eax, dword [0x141dd06f4]
xor eax, 0xd6dae69
add eax, 0x865b22d4
and eax, 0xdc047a70
cmp eax, 0x21d9ce7f
jb 0x1400918c0
test r12, r12
je 0x140091968
mov eax, dword [0x141dd06f8]
sub eax, dword [0x141dd06fc]
imul eax, eax, 0x4a147735
xor eax, 0x49037b40
add eax, 0x85516c6d
cmp eax, 0x483b6be1
jae 0x140091915
movzx eax, byte [0x141ddc4f8]
mov qword [rbp], rdx
mov qword [rbp - 8], r8
nop dword [rax]
mov eax, dword [0x141dd0700]
xor eax, dword [0x141dd0704]
add eax, 0x149089cb
xor eax, 0x84402300
and eax, 0x85c463dd
movzx ecx, byte [0x141ddc4f8]
cmp eax, 0x3d767e6d
jb 0x140091920
mov eax, dword [0x141dd0708]
sub eax, dword [0x141dd070c]
add eax, 0xc1ab8d82
and eax, 0x2c09396d
cmp eax, 0x8cc4109d
jne 0x1400919a6
jmp 0x1400919e3
mov eax, 2
xor r14d, r14d
jmp 0x140091a04
mov eax, dword [0x141dd06e0]
or eax, dword [0x141dd06e4]
and eax, 0xc0080008
or eax, 0x3ff3f2e7
imul eax, eax, 0xeb6f0836
cmp eax, 0x66b4c957
ja 0x1400919a0
ud2
ud2
ud2
mov eax, dword [0x141dd0710]
or eax, dword [0x141dd0714]
imul rbx, rax, 0x591e1397
shr rbx, 0x3e
xor ebx, 0x226e76c9
add ebx, 0x2c74878e
sub rsp, 0x20
xor ecx, ecx
mov rdx, r12
call fcn.1400c0a10
add rsp, 0x20
cmp ebx, 0x2ee7fa9b
jae 0x1400919f7
sub rsp, 0x20
xor ecx, ecx
mov rdx, r12
call fcn.1400c0a10
add rsp, 0x20
jmp 0x1400919a6
test rax, rax
mov r8, qword [rbp - 8]
mov rdx, qword [rbp]
je 0x1400919a4
mov qword [rdi], r14
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], 0
add r8, rdx
mov qword [r15], rdx
mov qword [r15 + 8], r8
mov word [r15 + 0x10], 0
sub rsp, 0x20
mov rcx, rdi
mov rdx, r15
call fcn.140091f80
add rsp, 0x20
mov rbx, qword [rdi + 8]
mov r14, qword [rdi + 0x10]
mov rcx, r14
mov r8, rbx
cmp r14, 8
jb 0x140091ca0
mov r9d, 0xab36eba1
xor r10d, r10d
mov r8, rbx
mov rcx, r14
nop
mov eax, dword [0x141dd0730]
and eax, dword [0x141dd0734]
imul eax, eax, 0x4af4ec08
add eax, 0x20a0a30
xor eax, 0x71c2a225
cmp eax, 0x1c7e3a62
jb 0x140091a60
cmp word [r8], 0
je 0x140091d40
mov eax, dword [0x141dd0738]
sub eax, dword [0x141dd073c]
add eax, 0xc3a134df
imul rax, r9
shr rax, 0x3d
imul eax, eax, 0xaf654972
cmp eax, 0xbf534753
ja 0x140091a8e
movzx eax, word [r8 + 2]
nop dword [rax]
mov edx, dword [0x141dd0740]
sub edx, dword [0x141dd0744]
xor edx, 0x10006803
and edx, 0x5a0ceccf
add edx, 0x4e973f50
cmp edx, 0xecca3510
ja 0x140091ac0
test ax, ax
je 0x140091d40
cmp word [r8 + 4], 0
je 0x140091d40
movzx eax, word [r8 + 6]
mov edx, dword [0x141dd0748]
xor edx, dword [0x141dd074c]
imul edx, edx, 0x997398c8
cmp edx, 0x3f71b326
je 0x140091b00
nop word [rax + rax]
mov edx, dword [0x141dd0750]
sub edx, dword [0x141dd0754]
imul edx, edx, 0xf1bb79d7
add edx, 0x67105feb
imul rdx, rdx, 0x49379925
shr rdx, 0x3c
cmp edx, 0x4630d201
ja 0x140091b20
test ax, ax
je 0x140091d40
movzx eax, word [r8 + 8]
nop dword [rax]
mov edx, dword [0x141dd0758]
sub edx, dword [0x141dd075c]
imul edx, edx, 0x799fab3
cmp edx, 0x54bdb194
je 0x140091b60
test ax, ax
je 0x140091d40
test r10b, r10b
jne 0x140091b83
mov eax, dword [0x141dd0760]
xor eax, dword [0x141dd0764]
or eax, 0x30184
and eax, 0x402f05e4
add eax, 0x68ff3bc
cmp eax, 0x5551743c
ja 0x140091b88
cmp word [r8 + 0xa], 0
je 0x140091d40
mov eax, dword [0x141dd0768]
xor eax, dword [0x141dd076c]
imul eax, eax, 0x291755c0
add eax, 0x835d0890
cmp eax, 0xb3ebab59
ja 0x140091bb6
cmp word [r8 + 0xc], 0
je 0x140091d40
movzx r11d, word [r8 + 0xe]
mov eax, dword [0x141dd0770]
xor edx, edx
div dword [0x141dd0774]
mov eax, dword [0x141dd0778]
imul eax, dword [0x141dd077c]
imul rdx, rax, 0x4b1ff915
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1d
or eax, 0x7d221d0d
add eax, 0x63e6d2fb
cmp eax, 0xe9adaf65
ja 0x140091bf3
nop word cs:[rax + rax]
mov eax, dword [0x141dd0780]
imul eax, dword [0x141dd0784]
shr eax, 3
imul rax, rax, 0x249e614f
shr rax, 0x3a
xor eax, 0xd1410b05
or eax, 0x81674b2
cmp eax, 0xcc678c7d
jb 0x140091c30
test r11w, r11w
je 0x140091d40
nop word cs:[rax + rax]
mov eax, dword [0x141dd0788]
xor eax, dword [0x141dd078c]
imul eax, eax, 0x6c87f071
or eax, 0xf2f8aec
cmp eax, 0xd1fcfbcf
je 0x140091c70
add rcx, 0xfffffffffffffff8
add r8, 0x10
cmp rcx, 7
ja 0x140091a60
mov eax, dword [0x141dd0718]
sub eax, dword [0x141dd071c]
imul rdx, rax, 0x1f835051
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
imul eax, eax, 0x6793515
and eax, 0x69d2304
cmp eax, 0x3642bdf4
ja 0x140091ca0
add rcx, rcx
xor eax, eax
mov rdx, r8
nop word [rax + rax]
cmp rcx, rax
je 0x140091d70
mov r9d, dword [0x141dd0720]
or r9d, dword [0x141dd0724]
and r9d, 0x7ceff574
add r9d, 0xc9258ad3
and r9d, 0xc6a7f440
cmp r9d, 0xc23937ad
ja 0x140091ce9
add rdx, 2
movzx r9d, word [r8 + rax]
mov r10d, dword [0x141dd0728]
imul r10d, dword [0x141dd072c]
cmp r10d, 0xe2c03879
je 0x140091d1e
add rax, 2
test r9w, r9w
jne 0x140091ce0
mov eax, dword [0x141dd0790]
or eax, dword [0x141dd0794]
or eax, 0xf4c2ba5d
add eax, 0x2610a843
cmp eax, 0xe72b1bc7
jbe 0x140091e0b
jmp 0x140091e29
mov eax, dword [0x141dd07d0]
add eax, dword [0x141dd07d4]
and eax, 0xecc2430
xor eax, 0x5524dc41
imul eax, eax, 0xb71b72da
cmp eax, 0xfbf9ef62
ja 0x140091d70
cmp r14, qword [rdi]
jne 0x140091dee
xor eax, eax
test al, al
je 0x140091db0
sub rsp, 0x20
mov rcx, rdi
call fcn.1400dbaf0
add rsp, 0x20
nop
mov eax, dword [0x141dd07d8]
sub eax, dword [0x141dd07dc]
add eax, 0x934ef98e
imul rax, rax, 0x348a17
shr rax, 0x33
imul ebx, eax, 0x466199e8
sub rsp, 0x20
mov rcx, rdi
call fcn.1400dbaf0
add rsp, 0x20
cmp ebx, 0x83b4fcfa
ja 0x140091db0
mov rbx, qword [rdi + 8]
mov word [rbx + r14*2], 0
inc r14
mov qword [rdi + 0x10], r14
mov qword [rsi + 0x10], r14
movups xmm0, xmmword [rdi]
movups xmmword [rsi], xmm0
jmp 0x140091f64
mov eax, dword [0x141dd0798]
and eax, dword [0x141dd079c]
lea rcx, [0x141dbabd8]
mov qword [rsi + 8], rcx
cmp eax, 0xf97ed44a
jne 0x140091e36
lea rax, [0x141dbabd8]
mov qword [rsi + 8], rax
jmp 0x140091e0b
mov eax, dword [0x141dd07a0]
sub eax, dword [0x141dd07a4]
imul rax, rax, 0x4c5b898f
shr rax, 0x3d
add eax, 0x492062e6
or eax, 0xb92073fc
cmp eax, 0xad785f54
jb 0x140091e88
mov eax, dword [0x141dd07a8]
or eax, dword [0x141dd07ac]
imul eax, eax, 0x62a071de
or eax, 0xd6288000
and eax, 0xd72c8ea8
lea rcx, [r13 + 2]
mov qword [rsi], rcx
cmp eax, 0x719ad39e
jne 0x140091e91
lea rax, [r13 + 2]
mov qword [rsi], rax
jmp 0x140091e5e
cmp qword [rdi], 0
je 0x140091f40
mov rsi, qword [0x141ddc4e0]
mov eax, dword [0x141dd07b0]
imul eax, dword [0x141dd07b4]
imul rax, rax, 0x21e19dc7
shr rax, 0x3d
add eax, 0xa9d6b453
cmp eax, 0xd4fd5b91
ja 0x140091f08
mov eax, dword [0x141dd07b8]
xor eax, dword [0x141dd07bc]
xor eax, 0xc7ce6714
mov edi, 0xa09ad32d
imul rdi, rax
shr rdi, 0x3e
or edi, 0xdf6e2198
sub rsp, 0x20
mov rcx, rsi
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
cmp edi, 0xd362037b
jne 0x140091f20
sub rsp, 0x20
mov rcx, rsi
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
jmp 0x140091ec6
mov eax, dword [0x141dd07c0]
xor edx, edx
div dword [0x141dd07c4]
xor eax, 0xfba343be
add eax, 0xa038df8b
cmp eax, 0xbcbcc6bb
ja 0x140091f20
nop
mov eax, dword [0x141dd07c8]
imul eax, dword [str.6_i]
and eax, 0x4202590f
or eax, 0x5750400
imul eax, eax, 0xd2350f09
cmp eax, 0xaa9c450b
ja 0x140091f40
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret