Function at 0x140001ac0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data with crc32
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r13
push r14
push r15
mov r12, rdx
mov r15d, ecx
test ecx, ecx
je 0x140001d63
test rdx, rdx
je 0x140001d63
mov r11d, dword [0x1400056a0]
lea r13, [0x1400056a0]
xor ebp, ebp
test r11d, r11d
jne 0x140001d50
nop dword [rax]
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x20]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x20]
movsxd rax, dword [r8 + 0x3c]
cmp dword [rax + r8], 0x4550
jne 0x140001d63
mov edi, dword [rax + r8 + 0x88]
add rdi, r8
mov eax, dword [rdi + 0xc]
mov ecx, dword [rax + r8]
mov eax, dword [str.cAAFv]
or ecx, 0x20202020
xor eax, 0x2a25350d
cmp ecx, eax
jne 0x140001d63
mov eax, dword [rdi + 0xc]
mov ecx, dword [rax + r8 + 4]
mov eax, dword [0x140005038]
or ecx, 0x20202020
xor eax, 0x2a27c51a
cmp ecx, eax
jne 0x140001d63
mov r9d, dword [rdi + 0x20]
mov ebx, ebp
mov r14d, dword [rdi + 0x1c]
add r9, r8
mov r10d, dword [rdi + 0x24]
add r14, r8
mov r11d, dword [0x1400056a0]
add r10, r8
cmp dword [rdi + 0x18], ebx
jbe 0x140001ccb
mov eax, 0x775a
mov edx, dword [r9]
add rdx, r8
movzx esi, word [rdx]
cmp si, ax
jne 0x140001cb8
cmp r11d, 0x258
ja 0x140001cb8
mov ecx, 0xffffefff
nop word [rax + rax]
movsx eax, sil
lea rdx, [rdx + 1]
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, eax
movzx eax, byte [rdx]
movzx esi, al
test al, al
jne 0x140001be0
mov eax, r11d
not ecx
add rax, rax
mov dword [r13 + rax*8 + 8], ecx
movzx eax, word [r10]
mov ecx, dword [r14 + rax*4]
mov eax, dword [0x1400056a0]
add rcx, r8
add rax, rax
mov qword [r13 + rax*8 + 0x10], rcx
mov eax, 0x775a
mov r11d, dword [0x1400056a0]
inc r11d
mov dword [0x1400056a0], r11d
inc ebx
add r9, 4
add r10, 2
cmp ebx, dword [rdi + 0x18]
jb 0x140001bb2
lea eax, [r11 - 1]
mov edi, ebp
test eax, eax
je 0x140001d43
nop word [rax + rax]
mov eax, r11d
mov ebx, ebp
sub eax, edi
cmp eax, 1
je 0x140001d39
mov r8, qword [0x1400056b0]
lea rax, [0x1400056b0]
nop word [rax + rax]
mov r9, qword [rax + 0x10]
cmp r8, r9
jbe 0x140001d25
mov edx, dword [rax - 8]
mov ecx, dword [rax + 8]
mov dword [rax - 8], ecx
mov dword [rax + 8], edx
mov qword [rax], r9
mov qword [rax + 0x10], r8
mov r11d, dword [0x1400056a0]
jmp 0x140001d28
mov r8, r9
mov ecx, r11d
inc ebx
sub ecx, edi
add rax, 0x10
dec ecx
cmp ebx, ecx
jb 0x140001d00
inc edi
lea eax, [r11 - 1]
cmp edi, eax
jb 0x140001ce0
test r11d, r11d
je 0x140001b10
nop dword [rax]
mov eax, ebp
add rax, rax
cmp r15d, dword [r13 + rax*8 + 8]
je 0x140001d82
inc ebp
cmp ebp, r11d
jb 0x140001d50
xor eax, eax
mov rbx, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
pop r15
pop r14
pop r13
pop r12
ret
mov dword [r12], ebp
mov eax, 1
jmp 0x140001d65