Function at 0x180056e10
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x1800b88d0]
xor rax, rsp
mov qword [rbp - 8], rax
lea r14d, [rdx - 0xb]
xor r10d, r10d
mov r12, r8
mov r13d, edx
mov r15, rcx
cmp edx, r14d
jbe 0x180056f58
mov edi, dword [rbp - 0x58]
lea esi, [rdx - 0x11d]
mov ebx, dword [rbp - 0x58]
lea rdx, [0x180000000]
mov r8d, 0x7953
mov r9d, 0x7473
nop dword [rax + rax]
cmp esi, 0x19
ja case.0x180056e93.4
mov ecx, dword [rdx + rsi*4 + 0x57244]
add rcx, rdx
jmp rcx
mov byte [rbp - 0x39], 0
jmp case.0x180056e93.4
mov dword [rbp - 0x60], edi
jmp case.0x180056e93.4
test r15, r15
je 0x180056fda
mov r11d, dword [r12]
test r11d, r11d
jle 0x180056fda
xor r8d, r8d
mov r9, r15
movsx eax, word [r9]
lea r9, [r9 + 2]
cdq
mov ecx, ebx
xor eax, edx
mov edi, r8d
sub eax, edx
cmp eax, ebx
cmovg ebx, eax
cmp eax, ecx
cmovle edi, r10d
inc r8d
mov r10d, edi
cmp r8d, r11d
jl 0x180056ec2
lea rdx, [0x180000000]
mov r8d, 0x7953
mov r9d, 0x7473
xor r10d, r10d
jmp case.0x180056e93.4
mov word [rbp - 0x3d], r8w
jmp case.0x180056e93.4
mov word [rbp - 0x3f], 0x7465
jmp case.0x180056e93.4
mov word [rbp - 0x3b], r9w
jmp case.0x180056e93.4
mov r8d, 1
lea rdx, str.G_y_MM___y_MM
lea rcx, [rbp - 0x40]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov byte [rbp - 0x3f], 0
jmp 0x180056eea
mov eax, dword [r12 + 0x24]
cmp dword [r15 + 0x24], eax
setb byte [rbp - 0x60]
jmp case.0x180056e93.4
mov ebx, r10d
dec esi
lea eax, [rsi + 0x11d]
cmp eax, r14d
ja 0x180056e80
lea edi, [r13 + 0x46d]
mov dword [rbp - 0x58], edi
cmp r13d, edi
jae case.0x180056e93.0
mov r12, qword [rbp - 0x58]
mov eax, 0x6c
mov rbx, qword [rbp - 0x58]
mov r15, qword [rbp - 0x58]
lea edx, [rax - 8]
lea ecx, [rax - 0x39]
lea r8d, [rax - 1]
lea r9d, [rax - 7]
lea r11d, [rax + 6]
nop
cmp r13d, 0x339
ja 0x180057076
je 0x18005706d
mov eax, r13d
sub eax, 0x136
je 0x180057032
sub eax, 0x67
je 0x180057002
sub eax, 0x67
je 0x180056ff9
sub eax, 0x67
je 0x180056fe4
cmp eax, 0x67
mov eax, 0x6c
jne 0x1800571ff
mov dword [rbp - 0x22], 0x65006e
jmp 0x1800571ff
mov eax, 0xffffffff
jmp 0x180057217
mov byte [rbp - 0x2c], 0
mov dword [rbp - 0x28], 0x65006b
mov word [rbp - 0x24], r11w
jmp 0x1800571fa
mov byte [rbp - 0x2d], 0x73
jmp 0x1800571fa
mov r8d, 2
lea rdx, str.tunnelLifeTime
lea rcx, [rbp - 0x2f]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov ecx, 0x33
lea edx, [rcx + 0x31]
lea r8d, [rcx + 0x38]
lea r9d, [rcx + 0x32]
lea r11d, [rcx + 0x3f]
jmp 0x1800571fa
mov r8d, 4
mov dword [rbp - 0x39], 0x6f506d65
lea rdx, [0x1800af262]
mov byte [rbp - 0x35], 0
lea rcx, [rbp - 0x40]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov r8d, 2
lea rdx, [0x1800af28a]
lea rcx, [rbp - 0x40]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
jmp 0x180057019
mov word [rbp - 0x1e], ax
jmp 0x1800571ff
mov eax, r13d
sub eax, 0x3a0
je 0x1800571f6
sub eax, 0x67
je 0x1800571ed
sub eax, 0x67
je 0x1800571db
sub eax, 0x67
je 0x1800570b1
cmp eax, 0x67
jne 0x1800571fa
cmp byte [rbp - 0x50], 1
sete byte [rbp - 0x60]
jmp case.0x180056e93.0
mov r14d, 0x46
nop word [rax + rax]
cmp r14d, 0x46
je 0x18005718f
cmp r14d, 0x110
je 0x18005717f
cmp r14d, 0x1022
je 0x1800571b9
cmp r14d, 0x3eb0
je 0x180057108
cmp r14d, 0x7c50
jne 0x1800571a1
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1800571a1
mov rdi, qword [r15 + 0x10]
mov esi, 0xc4
mov qword [r15], r10
mov eax, esi
sub eax, 0xc4
je 0x180057155
sub eax, 0x33
je 0x18005716b
sub eax, 0x88
je 0x180057137
sub eax, 0x33
je 0x18005716b
cmp eax, 0xbb
je 0x180057179
jmp 0x18005716b
mov rcx, qword [rdi]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rdi
mov qword [rdi], 0
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor r10d, r10d
jmp 0x18005716b
test rdi, rdi
je 0x180057179
mov rcx, qword [rdi + 8]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor r10d, r10d
mov qword [rdi + 8], r10
add esi, 0xbb
cmp esi, 0x46b
jb 0x180057114
mov qword [r15 + 0x10], r10
jmp 0x1800571a1
mov rcx, qword [rbp - 0x28]
lea r15, [rbp - 0x28]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1800571a1
xor r8d, r8d
lea rcx, [rbp - 0x28]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov r12, rax
add r14d, 0xfdc
cmp r14d, 0x4f4c
ja 0x1800571c9
xor r10d, r10d
jmp 0x1800570c0
lea rdx, [rbp - 0x40]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rcx, [rbp - 0x50]
call rbx
test eax, eax
je 0x180057210
mov edi, dword [rbp - 0x58]
jmp 0x180057019
mov word [rbp - 0x16], dx
mov dword [rbp - 0x14], 0x6c006c
mov word [rbp - 0x10], r10w
jmp 0x1800571fa
mov dword [rbp - 0x1a], 0x2e0032
jmp 0x1800571fa
mov word [rbp - 0x1c], cx
mov eax, 0x6c
add r13d, 0x67
cmp r13d, edi
jae case.0x180056e93.0
xor r10d, r10d
jmp 0x180056f90
mov byte [rbp - 0x60], 0
mov eax, dword [rbp - 0x60]
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1800a5da0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret