Function at 0x7c004670
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0xd8
lea rbp, [rsp + 0x80]
mov eax, 0x80b9
mov r8d, eax
mov eax, 0x115f
mov r9d, eax
mov qword [rbp + 0x50], 0x21d
mov dword [rbp + 0x4c], 0x720b
mov qword [rbp], 0x38c1
mov r10, qword [rbp + 0x50]
sub r9, qword [rbp + 0x50]
mov r11, qword [rbp]
sub r8, r10
mov r10, r11
sub r10, r8
cmp r10, r9
mov qword [rbp - 0x30], rdx
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x40], r11
jb 0x7c004921
lea rcx, [0x7c07069d]
mov edx, 0xc
mov eax, dword [rbp + 0x4c]
add eax, 0xffffc564
mov dword [rbp - 8], eax
mov qword [rbp + 0x10], 0x3987
mov r8, qword [rbp - 0x38]
mov qword [rbp + 0x18], r8
mov r9, qword [rbp + 0x10]
sub r9, 0x4a94
mov r10, qword [rbp - 0x30]
mov qword [rbp - 0x28], r10
mov dword [rbp + 0xc], 0
mov qword [rbp - 0x48], r9
call fcn.7c004140
lea rcx, [0x7c0706aa]
mov edx, 0xe
mov r8, qword [rbp - 0x40]
mov qword [rbp - 0x20], r8
mov dword [rbp - 4], r11d
mov r9, qword [rbp + 0x18]
mov qword [r9 + 0x20], rax
call fcn.7c004140
lea rcx, [0x7c0706b9]
mov edx, 0xb
mov r11d, dword [rbp - 4]
xor r11d, 0xffffffff
mov r8, qword [rbp + 0x18]
mov dword [rbp - 4], r11d
mov qword [r8 + 0x28], rax
mov r11d, dword [rbp - 4]
and r11d, 0x3ece
mov dword [rbp - 4], r11d
call fcn.7c004140
lea rcx, [0x7c0706c5]
mov edx, 0xc
mov r11d, 0x291c
mov r8d, r11d
mov r9, qword [rbp - 0x40]
mov qword [rbp - 0x50], rcx
mov rcx, r9
shr r8, cl
mov qword [rbp - 0x20], r8
mov r11d, dword [rbp + 0x4c]
xor r11d, 0x7204
mov r8, qword [rbp + 0x18]
mov qword [r8 + 0x30], rax
mov rcx, qword [rbp - 0x50]
mov dword [rbp - 0x54], r11d
call fcn.7c004140
lea rcx, [0x7c0706d2]
mov edx, 0xe
mov r8, qword [rbp + 0x18]
mov qword [r8], rax
call fcn.7c004140
lea rcx, [0x7c0706f0]
mov r8, qword [rbp - 0x40]
add r8, r8
mov qword [rbp - 0x20], r8
mov r8, qword [rbp - 0x40]
and r8, r8
mov qword [rbp - 0x20], r8
mov r8, qword [rbp + 0x18]
mov qword [r8 + 8], rax
mov edx, dword [rbp - 0x54]
call fcn.7c004140
mov edx, dword [rbp + 0x4c]
mov rcx, qword [rbp - 0x40]
xor rcx, 0xffffffffffffffff
xor edx, 0x15a1
mov qword [rbp - 0x20], rcx
mov r11d, dword [rbp - 4]
mov ecx, dword [rbp - 4]
shr r11d, cl
mov dword [rbp - 4], r11d
mov r8, qword [rbp + 0x18]
mov qword [r8 + 0x38], rax
mov rcx, qword [rbp - 0x28]
mov dword [rbp - 0x58], edx
call fcn.7c0024b0
mov ecx, 0x3d4d
mov edx, dword [rax + 0x50]
mov rax, qword [rbp + 0x18]
mov qword [rbp - 0x20], 0x1b00
mov r11d, dword [rbp - 4]
mov esi, dword [rbp - 4]
mov dword [rbp - 0x5c], ecx
mov ecx, esi
shl r11d, cl
mov dword [rbp - 4], r11d
mov dword [rax + 0x68], edx
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x20], rax
mov r8, qword [rbp - 0x28]
mov r9, qword [rbp + 0x18]
mov edx, dword [rbp - 4]
mov dword [rbp - 4], edx
mov qword [r9 + 0x60], r8
mov r8, qword [rbp + 0x18]
mov r9, qword [0x7c070848]
mov qword [r8 + 0xd0], r9
mov edx, dword [rbp - 4]
mov dword [rbp - 4], edx
sub rax, rax
mov r8, qword [rbp + 0x18]
mov r9, qword [0x7c070850]
mov qword [rbp - 0x20], rax
mov qword [r8 + 0x80], r9
mov rax, qword [rbp + 0x18]
mov r8, qword [0x7c070858]
mov qword [rax + 0xc0], r8
mov rax, qword [rbp + 0x18]
mov r8, qword [0x7c070860]
mov qword [rax + 0xc8], r8
mov rax, qword [0x7c070870]
mov qword [rbp - 0x20], 0xacaf4cc
mov r8, qword [rbp + 0x18]
mov edx, dword [rbp - 0x58]
mov dword [rbp - 4], edx
mov qword [r8 + 0x88], rax
mov rax, qword [rbp + 0x18]
mov r8, qword [0x7c070878]
mov qword [rax + 0x90], r8
mov edx, dword [rbp - 4]
mov ecx, dword [rbp - 0x5c]
shr edx, cl
mov dword [rbp - 4], edx
mov dword [rbp - 4], 0xffff85ab
mov rax, qword [rbp - 0x48]
cmp rax, 0x1b26
jne 0x7c004921
mov ecx, 0x7f7f
mov edx, ecx
mov ecx, dword [rbp + 0x4c]
xor ecx, 0x628b
sub rdx, qword [rbp + 0x50]
mov qword [rbp - 0x20], 0x1afa
mov r8d, dword [rbp + 0x4c]
xor r8d, 0x58fb
or r8d, dword [rbp - 4]
mov r9, qword [rbp + 0x18]
mov r10, qword [0x7c070880]
mov dword [rbp - 4], r8d
mov qword [r9 + 0x98], r10
mov r9, qword [rbp - 0x40]
mov qword [rbp - 0x20], r9
mov dword [rbp - 4], eax
mov r10, qword [0x7c070888]
mov dword [rbp - 4], ecx
and rdx, r9
mov r11, qword [rbp + 0x18]
mov qword [rbp - 0x20], rdx
mov qword [r11 + 0xa0], r10
imul eax, dword [rbp - 4], 0xe0a
mov dword [rbp - 4], eax
mov rdx, qword [0x7c070890]
imul r10, r9, 0x3f82
mov qword [rbp - 0x20], r10
mov r10, qword [rbp + 0x18]
mov qword [r10 + 0xa8], rdx
mov rdx, qword [rbp + 0x18]
mov eax, dword [rbp + 0x4c]
mov ecx, dword [rbp - 4]
xor eax, 0xffff8df4
mov r10, qword [0x7c070898]
mov r8d, dword [rbp - 8]
xor ecx, eax
mov dword [rbp - 4], ecx
mov qword [rdx + 0xb0], r10
cmp r8d, 0x1106
jbe 0x7c004921
mov dword [rbp - 4], 0
mov rax, qword [0x7c0708a0]
mov dword [rbp - 4], 0
mov rcx, qword [rbp + 0x18]
mov dword [rbp - 4], 0x4e10
mov qword [rcx + 0xb8], rax
mov rax, qword [rbp + 0x18]
mov rcx, qword [0x7c0708a8]
mov edx, dword [rbp - 4]
xor edx, 0x352a
mov dword [rbp - 4], edx
mov qword [rax + 0xd8], rcx
mov edx, dword [rbp - 4]
and edx, 0x19ef
mov rax, qword [0x7c070868]
mov rcx, qword [rbp + 0x18]
mov dword [rbp - 4], edx
mov qword [rcx + 0xe0], rax
add rsp, 0xd8
pop rsi
pop rbp
ret