Function at 0x1400a6570
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x168]
sub rsp, 0x268
mov rax, qword [0x14017a390]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov qword [rbp - 0x78], r9
mov r12d, r8d
mov dword [rsp + 0x40], r8d
mov qword [rbp - 0x70], rdx
mov rsi, rcx
mov r13, qword [rbp + 0x1d0]
mov qword [rbp - 0x68], r13
xor edi, edi
mov r15d, edi
mov dword [rbp - 0x80], edi
lea rax, [0x14017ff90]
mov qword [rbp + 0x10], rax
lea rcx, [0x14017ffe0]
call fcn.1400cc880
test eax, eax
jne 0x1400a76cb
movzx ebx, byte [0x14017ff90]
test bl, bl
sete byte [rbp + 0x18]
test bl, bl
jne 0x1400a65f9
inc dword [0x140180030]
lea rcx, [0x14017ffe0]
call fcn.1400cc8b0
nop
mov r14, qword [0x140180188]
mov qword [rbp + 0x20], rdi
lea rax, [0x140136440]
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], rdi
mov rax, qword [r14]
cmp dword [rax], 0
je 0x1400a6678
mov qword [rbp + 0x88], rdi
lea rcx, [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbp + 0x88]
mov qword [rbp + 0x20], rax
lea rcx, [0x140149ea7]
mov qword [rsp + 0x28], rcx
lea rax, str._DLLPROTECT__::_GenericLoadLibrary_Hook___
mov qword [rsp + 0x20], rax
lea r9, str._s_s
mov r8, rcx
xor edx, edx
mov rcx, r14
call fcn.1400afc40
nop
test bl, bl
je 0x1400a668f
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rdi
jmp 0x1400a765b
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a66c6
lea r8, str.GenericLoadLibrary_Hook_called_with:
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a6700
mov r9, rsi
lea r8, str.Filename:__s
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
mov rbx, qword [rbp - 0x70]
cmp dword [rax], 0
je 0x1400a673e
mov r9, rbx
lea r8, str.hFile:__x
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a6778
mov r9d, r12d
lea r8, str.Flags:_0x_x
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
lea rcx, [rbp + 0xf0]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a6823
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x60], rax
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp + 0x140], xmm0
mov qword [rbp - 0x60], 0xc
lea rax, [rbp + 0x140]
mov qword [rbp - 0x58], rax
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp], xmm0
lea rax, str.FuncName:_
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], 0xc
lea r8, [rbp]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x48]
call fcn.1400c79c0
nop
mov r15d, 5
mov dword [rbp - 0x80], r15d
lea r9, [rsp + 0x48]
cmp qword [rsp + 0x60], 0x10
cmovae r9, qword [rsp + 0x48]
xor r8d, r8d
lea rdx, str._DLLPROTECT__::_GenericLoadLibrary_Hook____
xor ecx, ecx
call fcn.1400afab0
nop
test r15b, 1
je 0x1400a686a
and r15d, 0xfffffffe
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x1400a686a
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a6865
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a76d3
call fcn.1400f35f0
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a68a4
mov r9, r13
lea r8, str.CallerAddr:_0x_x
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a6a96
mov qword [rbp + 0xb0], rdi
mov qword [rbp + 0xc0], rdi
mov qword [rbp + 0xc8], 7
mov word [rbp + 0xb0], di
mov r8d, 7
lea rdx, str.UNKNOWN
lea rcx, [rbp + 0xb0]
call fcn.1400021f0
nop
mov qword [rbp + 0xf0], rdi
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], 7
mov word [rbp + 0xf0], di
mov r8d, 7
lea rdx, str.UNKNOWN
lea rcx, [rbp + 0xf0]
call fcn.1400021f0
nop
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0xb0]
mov rcx, r13
call fcn.1400ae3b0
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a69a2
lea r9, [rbp + 0xf0]
cmp qword [rbp + 0x108], 8
cmovae r9, qword [rbp + 0xf0]
lea r8, str.CallerOffset:__s
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x20]
movups xmmword [rbp - 0x20], xmm1
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a69f1
lea r9, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 8
cmovae r9, qword [rbp + 0xb0]
lea r8, str.CallerName:__s
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
nop
mov rdx, qword [rbp + 0x108]
cmp rdx, 8
jb 0x1400a6a37
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a6a32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a76d9
call fcn.1400f35f0
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], 7
mov word [rbp + 0xf0], di
mov rdx, qword [rbp + 0xc8]
cmp rdx, 8
jb 0x1400a6a96
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a6a91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a76df
call fcn.1400f35f0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x1400a6ac1
mov rax, qword [0x140180038]
mov r8d, r12d
mov rdx, rbx
mov rcx, rsi
call rax
mov rdi, rax
mov rbx, rax
jmp 0x1400a765b
mov qword [rbp + 0xd0], rdi
mov qword [rbp + 0xe0], rdi
mov qword [rbp + 0xe8], 7
mov word [rbp + 0xd0], di
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp word [rsi + r8*2], 0
jne 0x1400a6af0
mov rdx, rsi
lea rcx, [rbp + 0xd0]
call fcn.1400021f0
nop
call fcn.1400b2f10
mov r14, rax
mov qword [rbp - 0x80], rax
lea r8, [rbp + 0xd0]
mov r12, qword [rbp + 0xd0]
mov r13, qword [rbp + 0xe8]
cmp r13, 8
cmovae r8, r12
movabs rdx, 0xcbf29ce484222325
mov r11, qword [rbp + 0xe0]
lea r9, [r11 + r11]
mov rcx, rdi
test r9, r9
je 0x1400a6b74
movabs r10, 0x100000001b3
nop dword [rax + rax]
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, r10
inc rcx
cmp rcx, r9
jb 0x1400a6b60
mov rcx, qword [r14 + 0x30]
and rcx, rdx
add rcx, rcx
mov rax, qword [r14 + 0x18]
mov r10, qword [rax + rcx*8 + 8]
cmp r10, qword [r14 + 8]
je 0x1400a6d06
mov r14, qword [rax + rcx*8]
nop word [rax + rax]
lea rax, [r10 + 0x10]
mov rcx, qword [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x1400a6bb2
mov rax, qword [rax]
lea r9, [rbp + 0xd0]
cmp r13, 8
cmovae r9, r12
cmp r11, rcx
jne 0x1400a6bfc
mov r8, r11
test r11, r11
je 0x1400a6c0b
movzx ecx, word [r9]
movzx edx, word [rax]
cmp cx, dx
jb 0x1400a6bfc
sub r9, rax
cmp cx, dx
ja 0x1400a6bfc
cmp r8, 1
je 0x1400a6c0b
dec r8
add rax, 2
movzx ecx, word [r9 + rax]
movzx edx, word [rax]
cmp cx, dx
jae 0x1400a6be0
cmp r10, r14
je 0x1400a6d02
mov r10, qword [r10 + 8]
jmp 0x1400a6ba0
mov r14, qword [rbp - 0x80]
test r10, r10
je 0x1400a6d06
cmp r10, qword [r14 + 8]
je 0x1400a6d06
lea rax, [rsp + 0x48]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], 0xf
xor r8d, r8d
lea rdx, [0x140149ea7]
lea rcx, [rsp + 0x48]
call fcn.1400078c0
nop
lea rax, [rbp - 0x40]
mov qword [rbp + 0x88], rax
mov rdx, r14
lea rcx, [rbp - 0x40]
call fcn.1400a0ec0
mov r14, rax
mov qword [rbp + 0xf0], rdi
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], 7
nop word [rax + rax]
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1400a6c90
mov r8, rbx
mov rdx, rsi
lea rcx, [rbp + 0xf0]
call fcn.1400021f0
nop
mov rax, qword [rbp - 0x68]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 8
mov qword [rsp + 0x20], r14
mov r9, qword [rbp - 0x78]
mov r8d, dword [rsp + 0x40]
lea rdx, [rbp + 0xf0]
mov rcx, rsi
call fcn.1400abe30
mov rax, qword [0x140180038]
mov r8d, dword [rsp + 0x40]
mov rdx, qword [rbp - 0x70]
mov rcx, rsi
call rax
mov rbx, rax
jmp 0x1400a75fc
mov r14, qword [rbp - 0x80]
lea r8, [rbp + 0xd0]
lea rdx, [rbp + 0xb0]
mov rcx, r14
call fcn.14009b6a0
mov qword [rbp + 0xf0], r14
lea rax, [rbp + 0xd0]
mov qword [rbp + 0xf8], rax
mov byte [rbp + 0x100], 1
cmp byte [0x140180262], 0
je 0x1400a6e5f
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp word [rsi + r8*2], 0
jne 0x1400a6d50
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], 7
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.1400021f0
or r15d, 0x18
lea rcx, [rsp + 0x48]
call fcn.1400b44f0
test al, al
je 0x1400a6e5f
lea rax, [rsp + 0x48]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], 0xf
xor r8d, r8d
lea rdx, [0x140149ea7]
lea rcx, [rsp + 0x48]
call fcn.1400078c0
nop
lea rax, [rbp - 0x40]
mov qword [rbp + 0x88], rax
lea rcx, [rbp - 0x40]
call fcn.1400a0f60
mov r14, rax
mov qword [rbp + 0xb0], rdi
mov qword [rbp + 0xc0], rdi
mov qword [rbp + 0xc8], 7
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1400a6df3
mov r8, rbx
mov rdx, rsi
lea rcx, [rbp + 0xb0]
call fcn.1400021f0
nop
mov rax, qword [rbp - 0x68]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0xa
mov qword [rsp + 0x20], r14
mov r9, qword [rbp - 0x78]
mov r8d, dword [rsp + 0x40]
lea rdx, [rbp + 0xb0]
mov rcx, rsi
call fcn.1400abe30
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rdi
mov rsi, qword [rbp - 0x80]
jmp 0x1400a75ec
cmp byte [0x140180269], 0
jne 0x1400a6eb2
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp word [rsi + r8*2], 0
jne 0x1400a6e70
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], 7
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.1400021f0
or r15d, 0x62
lea rcx, [rsp + 0x48]
call fcn.1400b4fd0
test al, al
je 0x1400a6eb2
mov r14b, 1
jmp 0x1400a6eb5
xor r14b, r14b
test r15b, 2
je 0x1400a6ec5
lea rcx, [rsp + 0x48]
call fcn.140002d40
test r14b, r14b
je 0x1400a6eeb
mov rax, qword [0x140180038]
mov r8d, dword [rsp + 0x40]
mov rdx, qword [rbp - 0x70]
mov rcx, rsi
call rax
mov rbx, rax
mov rsi, qword [rbp - 0x80]
jmp 0x1400a75ec
mov qword [rbp + 0x90], rdi
mov qword [rbp + 0xa0], rdi
mov qword [rbp + 0xa8], 7
mov word [rbp + 0x90], di
mov qword [rbp + 0x120], rdi
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], 0xf
mov byte [rbp + 0x120], 0
lea rax, [rbp + 0x80]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x120]
lea r8, [rbp + 0x90]
mov r13d, dword [rsp + 0x40]
mov edx, r13d
mov rcx, rsi
call fcn.1400aa6d0
mov r14d, eax
lea rax, [rbp + 0x80]
mov qword [rbp + 0xb0], rax
mov byte [rbp + 0xb8], 1
cmp r14d, 0xa
jne 0x1400a708d
lea rax, [rsp + 0x48]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], 0xf
xor r8d, r8d
lea rdx, [0x140149ea7]
lea rcx, [rsp + 0x48]
call fcn.1400078c0
nop
lea rax, [rbp - 0x40]
mov qword [rbp + 0x88], rax
lea rcx, [rbp - 0x40]
call fcn.1400a0f60
mov r12, rax
mov qword [rbp - 0x60], rdi
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], rdi
mov r15, qword [rbp + 0xa0]
lea r14, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae r14, qword [rbp + 0x90]
cmp r15, 8
jae 0x1400a6fff
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x60], xmm0
mov ebx, 7
jmp 0x1400a703b
mov rbx, r15
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x60]
call fcn.140002ab0
mov qword [rbp - 0x60], rax
lea r8, [r15*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.1400f5570
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], rbx
mov rax, qword [rbp - 0x68]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0xa
mov qword [rsp + 0x20], r12
mov r9, qword [rbp - 0x78]
mov r8d, r13d
lea rdx, [rbp - 0x60]
mov rcx, rsi
call fcn.1400abe30
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rdi
mov rsi, qword [rbp - 0x80]
jmp 0x1400a751f
test r14d, r14d
je 0x1400a73b7
test byte [0x140180264], 0x10
je 0x1400a7187
lea rax, [rbp - 0x40]
mov qword [rbp], rax
lea rdx, [rbp + 0x120]
lea rcx, [rbp - 0x40]
call fcn.140007550
mov qword [rbp + 0x88], rax
lea rax, [rbp + 0x40]
mov qword [rbp + 0x140], rax
lea rcx, [rbp + 0x40]
call fcn.1400a0f60
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rdi
mov r13, qword [rbp + 0xa0]
lea r12, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae r12, qword [rbp + 0x90]
cmp r13, 8
jae 0x1400a7120
movups xmm0, xmmword [r12]
movups xmmword [rsp + 0x48], xmm0
mov r15d, 7
jmp 0x1400a715e
mov r15, r13
or r15, 7
movabs rax, 0x7ffffffffffffffe
cmp r15, rax
cmova r15, rax
lea rdx, [r15 + 1]
lea rcx, [rsp + 0x48]
call fcn.140002ab0
mov qword [rsp + 0x48], rax
lea r8, [r13*2 + 2]
mov rdx, r12
mov rcx, rax
call fcn.1400f5570
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r15
mov rax, qword [rbp - 0x68]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x78]
jmp 0x1400a735c
test byte [0x140180264], 0x20
je 0x1400a73b7
cmp byte [0x140180263], 0
je 0x1400a737f
lea rax, [rbp - 0x40]
lea rdx, [rbp + 0x120]
lea rcx, [rbp - 0x40]
mov qword [rbp - 0x60], rax
call fcn.140007550
cmp r14d, 5
jne 0x1400a7295
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x40]
mov qword [rbp + 0x140], rax
lea rcx, [rbp + 0x40]
call fcn.1400a0f60
mov qword [rbp + 0x88], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rdi
mov r13, qword [rbp + 0xa0]
lea r12, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae r12, qword [rbp + 0x90]
cmp r13, 8
jae 0x1400a7226
movups xmm0, xmmword [r12]
movups xmmword [rsp + 0x48], xmm0
lea r15d, [r14 + 2]
jmp 0x1400a7264
mov r15, r13
or r15, 7
movabs rax, 0x7ffffffffffffffe
cmp r15, rax
cmova r15, rax
lea rdx, [r15 + 1]
lea rcx, [rsp + 0x48]
call fcn.140002ab0
mov qword [rsp + 0x48], rax
lea r8, [r13*2 + 2]
mov rdx, r12
mov rcx, rax
call fcn.1400f5570
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r15
mov rax, qword [rbp - 0x68]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0xa
mov rax, qword [rbp + 0x88]
jmp 0x1400a7361
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x40]
mov qword [rbp + 0x140], rax
lea rcx, [rbp + 0x40]
call fcn.1400a0f60
mov qword [rbp + 0x88], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rdi
mov r13, qword [rbp + 0xa0]
lea r12, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae r12, qword [rbp + 0x90]
cmp r13, 8
jae 0x1400a72fa
movups xmm0, xmmword [r12]
movups xmmword [rsp + 0x48], xmm0
mov r15d, 7
jmp 0x1400a7338
mov r15, r13
or r15, 7
movabs rax, 0x7ffffffffffffffe
cmp r15, rax
cmova r15, rax
lea rdx, [r15 + 1]
lea rcx, [rsp + 0x48]
call fcn.140002ab0
mov qword [rsp + 0x48], rax
lea r8, [r13*2 + 2]
mov rdx, r12
mov rcx, rax
call fcn.1400f5570
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r15
mov rax, qword [rbp - 0x68]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x88]
mov dword [rsp + 0x28], r14d
mov r13d, dword [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x78]
mov r8d, r13d
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400abe30
test byte [0x140180264], 0x20
je 0x1400a73b7
cmp r14d, 5
je 0x1400a7394
cmp r14d, 2
jne 0x1400a73b7
mov edx, 0x7e
cmp r14d, 2
mov ecx, 5
cmove ecx, edx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rdi
mov rsi, qword [rbp - 0x80]
jmp 0x1400a751f
lea rdx, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae rdx, qword [rbp + 0x90]
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], di
inc rbx
cmp word [rdx + rbx*2], 0
jne 0x1400a73e6
mov r8, rbx
lea rcx, [rsp + 0x48]
call fcn.1400021f0
nop
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x60]
mov rsi, qword [rbp - 0x80]
mov rcx, rsi
call fcn.14009b880
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400a7456
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a7451
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a76e5
call fcn.1400f35f0
mov qword [rbp - 0x60], rsi
lea rax, [rbp + 0x90]
mov qword [rbp - 0x58], rax
mov byte [rbp - 0x50], 1
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a74a7
lea r9, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae r9, qword [rbp + 0x90]
lea r8, str.calling_TrueLoadLibraryExW_with__s
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
mov rax, qword [0x140180038]
lea rcx, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae rcx, qword [rbp + 0x90]
mov r8d, r13d
mov rdx, qword [rbp - 0x70]
call rax
mov rbx, rax
lea rcx, [rsp + 0x48]
call fcn.1400a8f70
mov rax, qword [rax]
cmp dword [rax], 0
je 0x1400a7515
lea r9, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae r9, qword [rbp + 0x90]
mov qword [rsp + 0x20], rbx
lea r8, str.calling_TrueLoadLibraryExW_with__s___dll_p
lea rdx, [0x1401364f0]
xor ecx, ecx
call fcn.1400afdd0
nop
lea rcx, [rbp - 0x60]
call fcn.1400a22a0
nop
mov rcx, qword [rbp + 0x80]
cmp rcx, 0xffffffffffffffff
je 0x1400a7533
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rdx, qword [rbp + 0x138]
cmp rdx, 0x10
jb 0x1400a7574
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a756f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a76eb
call fcn.1400f35f0
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], 0xf
mov byte [rbp + 0x120], 0
mov rdx, qword [rbp + 0xa8]
cmp rdx, 8
jb 0x1400a75d3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a75ce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a76f1
call fcn.1400f35f0
mov qword [rbp + 0xa0], rdi
mov qword [rbp + 0xa8], 7
mov word [rbp + 0x90], di
lea rdx, [rbp + 0xd0]
mov rcx, rsi
call fcn.1400b1bb0
nop
mov rdx, qword [rbp + 0xe8]
cmp rdx, 8
jb 0x1400a7642
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a763d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a76f7
call fcn.1400f35f0
mov qword [rbp + 0xe0], rdi
mov qword [rbp + 0xe8], 7
mov word [rbp + 0xd0], di
lea rcx, [rbp + 0x20]
call fcn.1400a2c80
nop
cmp byte [rbp + 0x18], 0
je 0x1400a769d
lea rcx, [0x14017ffe0]
call fcn.1400cc880
test eax, eax
jne 0x1400a76c3
sub dword [0x140180030], 1
jne 0x1400a7690
lea rcx, [0x14017ff98]
call fcn.1400cd7b0
lea rcx, [0x14017ffe0]
call fcn.1400cc8b0
nop
mov rax, rbx
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.1400f2e00
add rsp, 0x268
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, eax
call fcn.1400cc9f0
nop
mov ecx, eax
call fcn.1400cc9f0
nop
call fcn.1400f9bf0
nop
call fcn.1400f9bf0
nop
call fcn.1400f9bf0
nop
call fcn.1400f9bf0
nop
call fcn.1400f9bf0
nop
call fcn.1400f9bf0
nop
call fcn.1400f9bf0
int3