Function at 0x6d2c1400
Capabilities:
Access peb ldr_data
Enumerate pe sections
Parse pe header
Resolve function by hash
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov qword [rsp + 0x80], rcx
call dbg.caller
mov rbx, rax
jmp 0x6d2c1426
sub rbx, 1
cmp word [rbx], 0x5a4d
jne 0x6d2c1422
movsxd rax, dword [rbx + 0x3c]
lea rdx, [rax - 0x40]
cmp rdx, 0x3bf
ja 0x6d2c1422
add rax, rbx
cmp dword [rax], 0x4550
jne 0x6d2c1422
mov qword [rsp + 0x20], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov r8, qword [rax + 0x20]
test r8, r8
je 0x6d2c18b3
xor r11d, r11d
xor r10d, r10d
xor esi, esi
xor ebp, ebp
movzx eax, word [r8 + 0x48]
mov rdx, qword [r8 + 0x50]
lea r13d, [rax - 1]
xor eax, eax
lea r12, [rdx + 1]
movzx r13d, r13w
add r13, r12
jmp 0x6d2c14a8
movzx edi, dl
mov rdx, r12
sub edi, 0x20
movsxd r9, edi
add rax, r9
cmp r12, r13
je 0x6d2c14c1
add r12, 1
movzx edx, byte [rdx]
ror eax, 0xd
cmp dl, 0x60
ja 0x6d2c1490
movzx ecx, dl
mov rdx, r12
add rax, rcx
cmp r12, r13
jne 0x6d2c14a4
cmp eax, 0x6a4abc5b
je 0x6d2c1770
cmp eax, 0x3cfa685d
je 0x6d2c1820
test rbp, rbp
je 0x6d2c14eb
test rsi, rsi
je 0x6d2c14eb
test r10, r10
je 0x6d2c14eb
test r11, r11
jne 0x6d2c14f7
mov r8, qword [r8]
test r8, r8
jne 0x6d2c1472
mov qword [rsp + 0x28], r11
mov rdi, qword [rsp + 0x20]
xor ecx, ecx
mov r8d, 0x3000
mov r9d, 0x40
mov edx, dword [rdi + 0x50]
call r10
mov edx, dword [rdi + 0x54]
mov r13, rax
mov rax, rbx
mov rcx, r13
sub rcx, rbx
lea r8, [rbx + rdx]
test rdx, rdx
je 0x6d2c153f
nop dword [rax]
movzx edx, byte [rax]
mov byte [rcx + rax], dl
add rax, 1
cmp r8, rax
jne 0x6d2c1530
mov rdi, qword [rsp + 0x20]
movzx eax, word [rdi + 0x14]
lea r8, [rdi + rax + 0x18]
movzx eax, word [rdi + 6]
lea r9, [rax - 1]
test rax, rax
je 0x6d2c159d
nop word [rax + rax]
mov ecx, dword [r8 + 0xc]
mov eax, dword [r8 + 0x14]
mov edx, dword [r8 + 0x10]
add rcx, r13
add rax, rbx
lea r10, [rax + rdx]
sub rcx, rax
test rdx, rdx
je 0x6d2c158f
nop
movzx edx, byte [rax]
mov byte [rcx + rax], dl
add rax, 1
cmp r10, rax
jne 0x6d2c1580
sub r9, 1
add r8, 0x28
cmp r9, 0xffffffffffffffff
jne 0x6d2c1560
mov rax, qword [rsp + 0x20]
mov r14d, dword [rax + 0x90]
add r14, r13
mov ecx, dword [r14 + 0xc]
test ecx, ecx
je 0x6d2c166c
nop dword [rax + rax]
add rcx, r13
call rbp
mov r15d, dword [r14]
mov ebx, dword [r14 + 0x10]
mov r12, rax
add r15, r13
add rbx, r13
jmp 0x6d2c15f4
lea rdx, [r13 + rax + 2]
mov rcx, r12
call rsi
mov qword [rbx], rax
add r15, 8
mov rbx, rdi
mov rax, qword [rbx]
test rax, rax
je 0x6d2c165c
lea rdi, [rbx + 8]
test r15, r15
je 0x6d2c1644
mov rdx, qword [r15]
test rdx, rdx
jns 0x6d2c15e0
movsxd rax, dword [r12 + 0x3c]
movzx edx, dx
mov eax, dword [r12 + rax + 0x88]
add rax, r12
mov ecx, dword [rax + 0x1c]
mov eax, dword [rax + 0x10]
add rcx, r12
sub rdx, rax
mov eax, dword [rcx + rdx*4]
add rax, r12
mov qword [rbx], rax
jmp 0x6d2c15ed
add rdi, 8
lea rdx, [r13 + rax + 2]
mov rcx, r12
call rsi
mov qword [rbx], rax
mov rax, qword [rdi]
mov rbx, rdi
test rax, rax
jne 0x6d2c1640
add r14, 0x14
mov ecx, dword [r14 + 0xc]
test ecx, ecx
jne 0x6d2c15c0
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0xb4]
test eax, eax
je 0x6d2c1729
mov rsi, qword [rsp + 0x20]
mov r8d, dword [rsi + 0xb0]
add r8, r13
mov eax, dword [r8 + 4]
test eax, eax
je 0x6d2c1729
mov r9, r13
sub r9, qword [rsi + 0x30]
mov r10, r9
shr r10, 0x10
nop dword [rax + rax]
mov ecx, dword [r8]
lea rdx, [r8 + 8]
sub rax, 8
add rcx, r13
shr rax, 1
lea r11, [rdx + rax*2]
jne 0x6d2c16fa
jmp 0x6d2c171a
cmp al, 0x30
je 0x6d2c1890
cmp al, 0x10
je 0x6d2c18a1
cmp al, 0x20
jne 0x6d2c16f1
movzx eax, word [rdx]
and eax, 0xfff
add word [rax + rcx], r9w
add rdx, 2
cmp rdx, r11
je 0x6d2c171a
movzx eax, byte [rdx + 1]
and eax, 0xfffffff0
cmp al, 0xa0
jne 0x6d2c16d0
movzx eax, word [rdx]
add rdx, 2
and eax, 0xfff
add qword [rax + rcx], r9
cmp rdx, r11
jne 0x6d2c16fa
mov eax, dword [r8 + 4]
add r8, rax
mov eax, dword [r8 + 4]
test eax, eax
jne 0x6d2c16b0
mov rax, qword [rsp + 0x20]
xor r8d, r8d
xor edx, edx
mov rcx, 0xffffffffffffffff
mov ebx, dword [rax + 0x28]
mov rax, qword [rsp + 0x28]
call rax
mov r8, qword [rsp + 0x80]
mov edx, 1
mov rcx, r13
add rbx, r13
call rbx
mov rax, rbx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r12, qword [r8 + 0x20]
mov r13d, 3
movsxd rax, dword [r12 + 0x3c]
mov eax, dword [r12 + rax + 0x88]
add rax, r12
mov r9d, dword [rax + 0x20]
mov edi, dword [rax + 0x24]
mov r14d, dword [rax + 0x1c]
add r9, r12
add rdi, r12
add r14, r12
nop
mov ecx, dword [r9]
xor edx, edx
add rcx, r12
movsx eax, byte [rcx]
nop dword [rax + rax]
ror edx, 0xd
add rcx, 1
add edx, eax
movsx eax, byte [rcx]
test al, al
jne 0x6d2c17b0
cmp edx, 0xec0e4e8e
je 0x6d2c17e2
cmp edx, 0x7c0dfcaa
je 0x6d2c17e2
cmp edx, 0x91afca54
je 0x6d2c1810
add r9, 4
add rdi, 2
jmp 0x6d2c17a0
movzx eax, word [rdi]
mov eax, dword [r14 + rax*4]
add rax, r12
cmp edx, 0xec0e4e8e
cmove rbp, rax
cmovne rsi, rax
add r9, 4
add rdi, 2
sub r13w, 1
jne 0x6d2c17a0
jmp 0x6d2c14d7
movzx eax, word [rdi]
mov r10d, dword [r14 + rax*4]
add r10, r12
jmp 0x6d2c17fa
mov r11, qword [r8 + 0x20]
movsxd rax, dword [r11 + 0x3c]
mov r12d, dword [r11 + rax + 0x88]
add r12, r11
mov r9d, dword [r12 + 0x20]
mov edi, dword [r12 + 0x24]
add r9, r11
add rdi, r11
mov ecx, dword [r9]
xor edx, edx
add rcx, r11
movsx eax, byte [rcx]
nop
ror edx, 0xd
add rcx, 1
add edx, eax
movsx eax, byte [rcx]
test al, al
jne 0x6d2c1850
cmp edx, 0x534c0ab8
je 0x6d2c1872
add r9, 4
add rdi, 2
jmp 0x6d2c1843
mov eax, dword [r12 + 0x1c]
movzx edx, word [rdi]
add rax, r11
mov eax, dword [rax + rdx*4]
add r11, rax
jmp 0x6d2c14d7
movzx eax, word [rdx]
and eax, 0xfff
add dword [rax + rcx], r9d
jmp 0x6d2c16f1
movzx eax, word [rdx]
and eax, 0xfff
add word [rax + rcx], r10w
jmp 0x6d2c16f1
mov qword [rsp + 0x28], 0
xor r10d, r10d
xor esi, esi
xor ebp, ebp
jmp 0x6d2c14fc