Function at 0x140007810
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rdi, rcx
xor ebx, ebx
mov dword [rbp + 0x78], ebx
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp rax, qword [0x1401243c8]
jb 0x140007ff8
add rax, 0x1388
mov qword [0x1401243c8], rax
lea rax, [0x1400b9e68]
mov qword [rsp + 0x30], rax
mov qword [rbp - 0x20], rbx
mov qword [rbp + 8], rbx
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x10], xmm0
mov dword [rbp + 0x78], 1
lea r12, [0x1400b9f20]
mov qword [rbp - 0x28], r12
mov dword [rbp - 0x2c], 0x98
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x28]
call fcn.14000ca30
nop
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
lea r15, [0x1400b9e58]
mov qword [rsp + rcx + 0x30], r15
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x2c], edx
lea rcx, [rsp + 0x38]
call fcn.14000b630
nop
mov dword [rsp + 0x20], 0xbe8deaae
mov dword [rsp + 0x24], 0x80819184
mov dword [rsp + 0x28], 0x80868ec8
xor eax, eax
mov byte [rsp + 0x2c], al
mov edx, ebx
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xc
jb 0x1400078f0
mov byte [rsp + 0x2c], 0
lea rcx, [rsp + 0x20]
call fcn.140007770
mov r8d, 0x12
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.14000b580
mov esi, 6
lea r14d, [rsi - 4]
test rax, rax
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
lea rcx, [rsp + rcx + 0x30]
je 0x14000794e
mov edx, 4
cmp qword [rcx + 0x48], 0
cmovne edx, ebx
jmp 0x14000795c
mov edx, esi
cmp qword [rcx + 0x48], 0
cmovne edx, r14d
or edx, dword [rcx + 0x10]
xor r8d, r8d
call fcn.1400075f0
mov dword [rbp + 0x78], 0xbe8db6bf
mov dword [rbp + 0x7c], 0xc48d8d
mov edx, ebx
nop dword [rax]
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rbp + rcx + 0x78], al
inc edx
cmp edx, 7
jb 0x140007980
mov byte [rbp + 0x7f], 0
lea rdx, [rbp + 0x78]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movzx edx, byte [rdi + 4]
mov rcx, rax
call fcn.140009c10
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe8db6bf
mov dword [rsp + 0x24], 0xba908a8a
mov dword [rsp + 0x28], 0xc9908884
xor eax, eax
mov byte [rsp + 0x2c], al
mov edx, ebx
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xc
jb 0x1400079e0
mov byte [rsp + 0x2c], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
mov edx, dword [rdi + 0x28]
mov rcx, rax
call fcn.140009a60
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe8db6bf
mov dword [rsp + 0x24], 0xba908c80
mov dword [rsp + 0x28], 0xc991828d
xor eax, eax
mov byte [rsp + 0x2c], al
mov edx, ebx
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xc
jb 0x140007a40
mov byte [rsp + 0x2c], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
mov edx, dword [rdi + 0x18]
mov rcx, rax
call fcn.140009a60
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe8db6bf
mov dword [rsp + 0x24], 0xba97828f
mov dword [rsp + 0x28], 0xc99b8e82
xor eax, eax
mov byte [rsp + 0x2c], al
mov edx, ebx
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xc
jb 0x140007aa0
mov byte [rsp + 0x2c], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movss xmm1, dword [rdi + 0xc]
mov rcx, rax
call fcn.1400096e0
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe8db6bf
mov dword [rsp + 0x24], 0x928b8b91
mov dword [rsp + 0x28], 0x9f8781b9
mov word [rsp + 0x2c], 0xca
mov edx, ebx
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xd
jb 0x140007b00
mov byte [rsp + 0x2d], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movzx edx, byte [rdi + 0x10]
mov rcx, rax
call fcn.140009c10
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe8db6bf
mov dword [rsp + 0x24], 0xc5928c84
xor eax, eax
mov byte [rsp + 0x28], al
mov edx, ebx
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 8
jb 0x140007b51
mov byte [rsp + 0x28], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movss xmm1, dword [rdi + 8]
mov rcx, rax
call fcn.1400096e0
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe8db6bf
mov dword [rsp + 0x24], 0x8a8b8e91
mov dword [rsp + 0x28], 0xc88f92
mov edx, ebx
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xb
jb 0x140007bb0
mov byte [rsp + 0x2b], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movss xmm1, dword [rdi + 0x20]
mov rcx, rax
call fcn.1400096e0
mov rcx, rax
call fcn.14000d090
mov dword [rbp + 0x78], 0x8cbfafb6
mov dword [rbp + 0x7c], 0xc48d8b
mov edx, ebx
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rbp + rcx + 0x78], al
inc edx
cmp edx, 7
jb 0x140007c00
mov byte [rbp + 0x7f], 0
lea rdx, [rbp + 0x78]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movss xmm1, dword [rdi + 0x24]
mov rcx, rax
call fcn.1400096e0
mov rcx, rax
call fcn.14000d090
mov dword [rbp + 0x78], 0xbe90acbb
mov dword [rbp + 0x7c], 0xc48d8d
mov edx, ebx
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rbp + rcx + 0x78], al
inc edx
cmp edx, 7
jb 0x140007c50
mov byte [rbp + 0x7f], 0
lea rdx, [rbp + 0x78]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movzx edx, byte [rdi + 0x2c]
mov rcx, rax
call fcn.140009c10
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe90acbb
mov dword [rsp + 0x24], 0xc59c8c80
xor eax, eax
mov byte [rsp + 0x28], al
mov edx, ebx
nop
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 8
jb 0x140007ca0
mov byte [rsp + 0x28], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movzx edx, byte [rdi + 0x2d]
mov rcx, rax
call fcn.140009c10
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe90acbb
mov dword [rsp + 0x24], 0xc5978a86
xor eax, eax
mov byte [rsp + 0x28], al
mov edx, ebx
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 8
jb 0x140007cf1
mov byte [rsp + 0x28], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movzx edx, byte [rdi + 0x2f]
mov rcx, rax
call fcn.140009c10
mov rcx, rax
call fcn.14000d090
mov dword [rbp + 0x78], 0xbe90acbb
mov dword [rbp + 0x7c], 0xc4938a
mov edx, ebx
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rbp + rcx + 0x78], al
inc edx
cmp edx, 7
jb 0x140007d40
mov byte [rbp + 0x7f], 0
lea rdx, [rbp + 0x78]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movzx edx, byte [rdi + 0x31]
mov rcx, rax
call fcn.140009c10
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe90acbb
mov dword [rsp + 0x24], 0x808a8a8e
mov word [rsp + 0x28], 0xc6
mov edx, ebx
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 9
jb 0x140007d90
mov byte [rsp + 0x29], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movzx edx, byte [rdi + 0x32]
mov rcx, rax
call fcn.140009c10
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe90acbb
mov dword [rsp + 0x24], 0xba9c828f
mov dword [rsp + 0x28], 0xc99b8e82
xor eax, eax
mov byte [rsp + 0x2c], al
mov edx, ebx
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xc
jb 0x140007df0
mov byte [rsp + 0x2c], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
movss xmm1, dword [rdi + 0x98]
mov rcx, rax
call fcn.1400096e0
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe90acbb
mov dword [rsp + 0x24], 0x8a86bc81
mov word [rsp + 0x28], 0xc79e
xor eax, eax
mov byte [rsp + 0x2a], al
mov edx, ebx
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xa
jb 0x140007e50
mov byte [rsp + 0x2a], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
mov r8, rax
lea rcx, [rdi + 0x38]
call fcn.14001b960
mov edx, eax
mov rcx, r8
call fcn.1400098b0
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe90acbb
mov dword [rsp + 0x24], 0x8c80bc81
mov word [rsp + 0x28], 0xc795
xor eax, eax
mov byte [rsp + 0x2a], al
mov edx, ebx
nop dword [rax]
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xa
jb 0x140007ec0
mov byte [rsp + 0x2a], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
mov r8, rax
lea rcx, [rdi + 0x58]
call fcn.14001b960
mov edx, eax
mov rcx, r8
call fcn.1400098b0
mov rcx, rax
call fcn.14000d090
mov dword [rsp + 0x20], 0xbe90acbb
mov dword [rsp + 0x24], 0x8c88bc81
mov dword [rsp + 0x28], 0xc88288
nop dword [rax + rax]
movsxd rcx, ebx
lea eax, [rbx - 0x22]
xor byte [rsp + rcx + 0x20], al
inc ebx
cmp ebx, 0xb
jb 0x140007f20
mov byte [rsp + 0x2b], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.14000ce20
mov r8, rax
lea rcx, [rdi + 0x68]
call fcn.14001b960
mov edx, eax
mov rcx, r8
call fcn.1400098b0
mov rcx, rax
call fcn.14000d090
lea rcx, [rsp + 0x38]
call fcn.14000b490
test rax, rax
jne 0x140007f9a
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x30]
add rcx, rax
cmp qword [rcx + 0x48], 0
cmovne esi, r14d
or esi, dword [rcx + 0x10]
xor r8d, r8d
mov edx, esi
call fcn.1400075f0
nop
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x30], r15
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x2c], edx
lea rcx, [rsp + 0x38]
call fcn.140009430
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x30], r12
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x2c], edx
lea rax, [0x1400b9dc8]
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x28]
call fcn.1400781e4
nop
lea r11, [rsp + 0x140]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret