Function at 0x9f4620
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
je 0x9f48af
jne 0x9f48af
jmp 0xffffffff83e79986
push rbp
push rbx
sub rsp, 0x78
mov r13, rdx
mov rsi, rcx
movzx eax, word [rdx]
cmp eax, 0x5a4d
jne 0x9f478c
je 0x9f4e47
jne 0x9f4e47
jmp 0x4d9647a0
add rdi, rsi
add rdi, r10
add rbp, rsi
add rbp, r13
xor eax, eax
nop word cs:[rax + rax]
nop dword [rax]
je 0x9f4b62
jne 0x9f4b62
add byte [rax], al
add byte [rax], al
call fcn.009f36a0
mov rax, qword [r12]
mov edx, dword [rax + 0x50]
lea r9, [rsp + 0x74]
mov r8d, 0x40
mov rcx, r15
call qword [rdi + 8]
je 0x9f4de1
jne 0x9f4de1
jmp 0x24f3d1ef
mov edx, dword [r12 + 0x18]
test edx, edx
je 0x9f4f37
jne 0x9f4f37
add byte [rax], al
add byte [rax], al
nop word cs:[rax + rax]
nop dword [rax + rax]
je 0x9f4f60
jne 0x9f4f60
je 0x20b687d8
test byte [rax + 0x17], 0x20
jne 0x9f46eb
call rbp
jmp 0x9f501e
je 0x9f4d0e
jne 0x9f4d0e
je 0x9f4cbb
pop rbx
pop rbp
je 0x9f492c
jne 0x9f492c
mov dword [r12 + 0x1c], 1
jmp 0x9f4e86
cmp dword [r12 + 0x1c], 0
je 0x9f4eb2
je 0x9f4b94
jne 0x9f4b94
jmp 0xffffffff8de811c6
xor esi, esi
mov rax, qword [rcx + rsi*8]
cmp rax, 0xffffffffffffffff
jne 0x9f4b54
jmp 0x9f4f15
cmp dword [r13], 0x474e5089
jne 0x9f4e83
je 0x9f49ec
jne 0x9f49ec
jmp 0x3a2ccba
jne 0x9f4ab0
je 0x9f4960
jne 0x9f4960
je 0x48ef9d4a
mov edx, dword [rbp + 0x50]
mov rcx, qword [rbp + 0x30]
mov ecx, dword [rbp + 0x30]
mov r8d, 0x1000
mov r9d, 4
call qword [rsi]
mov r15, rax
test rax, rax
jne 0x9f4af4
je 0x9f4a7d
jne 0x9f4a7d
je 0x9f4e75
mov r8d, 0x8000
xor edx, edx
call qword [rdi + 0x18]
je 0x9f4e75
jne 0x9f4e75
je 0x2503d358
mov r12, qword [rsp + 0x68]
mov r9, qword [rsp + 0x30]
je 0x9f4dd0
push 0x244c8b4c
xor byte [rdi], cl
test byte [rax + 0xf000005], bh
test byte [rsi], dh
invalid
je 0x9f4654
jne 0x9f4654
je 0x2503d376
mov r12, qword [rsp + 0x68]
mov r9, qword [rsp + 0x30]
jne 0x9f4654
push 0x244c8b4c
xor byte [rdi], cl
test dword [rsi], ebx
invalid
jmp 0x9f4dd0
movsxd rax, dword [r9 + 0x38]
test rax, rax
jle 0x9f4a1e
je 0x9f46f7
jne 0x9f46f7
je 0x54e8d3a0
mov ecx, dword [r9 + 0x54]
add ecx, eax
test ecx, ecx
jle 0x9f48ef
mov edx, ecx
lea rcx, [rdx - 1]
mov eax, edx
and eax, 3
je 0x9f4e8c
jne 0x9f4e8c
je 0x2513d1ce
mov qword [rsp + 0x50], rsi
push rax
cdqe
lea rcx, [r15 + rax]
mov qword [r12], rcx
je 0x9f4b72
jne 0x9f4b72
jmp 0x5d5557e3
push r15
push r14
push r13
push r12
push rsi
push rdi
je 0x9f462d
jne 0x9f462d
je 0x3b2cdda
add byte [rax], al
test rax, rax
je 0x9f4960
je 0x9f4a9e
jne 0x9f4a9e
cmp rax, rbp
jne 0x9f4f60
mov eax, dword [r13 + 0x3c]
mov qword [rsp + 0x48], r14
je 0x9f4882
jne 0x9f4882
lea r8, [rdx + rbp]
mov rdx, qword [rsp + 0x58]
lea r9, [rdx + rdi]
sub rax, rbx
xor esi, esi
nop dword [rax + rax]
je 0x9f4c76
jne 0x9f4c76
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp rbx, rax
jne 0x9f4b62
jmp 0x9f4dd0
mov r8, r15
sub r8, qword [r9 + 0x30]
mov esi, dword [rsp + 0x3c]
je 0x9f4ee3
jne 0x9f4ee3
mov eax, dword [r13 + 8]
je 0x9f4fc7
jne 0x9f4fc7
add byte [rax], al
add byte [rax], al
call qword [rdi + 0x18]
je 0x9f4cdf
jne 0x9f4cdf
add byte [rax], al
add byte [rax], al
test rax, rax
je 0x9f48eb
lea rdx, [r15 + rcx]
add rcx, r13
xor ebp, ebp
je 0x9f46c1
jne 0x9f46c1
test rcx, rcx
je 0x9f4cdf
mov r8d, 0x8000
xor edx, edx
je 0x9f4974
jne 0x9f4974
mov eax, dword [r13 + 0x3c]
mov r9, qword [rsp + 0x30]
je 0x9f485b
jne 0x9f485b
add byte [rax], al
add byte [rax], al
cmp dword [r13 + 4], 0xa1a0a0d
jne 0x9f4e83
movsxd rbp, dword [r13 + 8]
mov edi, dword [rbp + r13 + 0x58]
add rbp, r13
mov eax, 1
mov qword [rsp + 0x40], rax
je 0x9f4f12
jne 0x9f4f12
je 0x265cd63
add r14d, 1
add rcx, 0x28
mov rax, qword [r12]
movzx eax, word [rax + 6]
cmp r14d, eax
jae 0x9f4949
je 0x9f4b1e
jne 0x9f4b1e
jmp 0xffffffff84af1379
xor ecx, ecx
je 0x9f4fd9
jne 0x9f4fd9
mov edx, dword [rbp + 0x50]
xor r12d, r12d
mov r8d, 0x1000
mov r9d, 4
xor ecx, ecx
call qword [rsi]
mov r15, rax
test rax, rax
je 0x9f4aee
lea rdx, [r15 + rcx]
add rcx, r13
xor ebp, ebp
nop word [rax + rax]
movzx ebx, byte [rcx + rbp]
mov byte [rdx + rbp], bl
je 0x9f4ed0
jne 0x9f4ed0
mov qword [rax + 8], r15
mov qword [rax + 0x18], 0
mov qword [rax + 0x10], 0
test r14b, r14b
je 0x9f49d3
je 0x9f4ff4
jne 0x9f4ff4
je 0x431cf01
add byte [rax], al
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x3c], edi
mov edx, 0x20
mov r8d, 0x3000
mov r9d, 4
xor ecx, ecx
call qword [rsi]
je 0x9f4c63
jne 0x9f4c63
mov eax, dword [rcx + 0x10]
test rax, rax
je 0x9f4840
mov edi, dword [rcx + 0xc]
lea r11, [r10 + rdi]
je 0x9f4bc3
jne 0x9f4bc3
cmp rsi, rax
jge 0x9f49af
mov rax, qword [rcx + rsi*8]
cmp rax, 0xffffffffffffffff
je 0x9f4770
je 0x9f4f23
jne 0x9f4f23
add byte [rax], al
add byte [rax], al
mov qword [r15 + rax + 0x30], r15
mov rax, qword [r12]
cmp word [rax + 6], 0
je 0x9f4949
je 0x9f4d71
jne 0x9f4d71
je 0x24a3d6e1
mov rax, qword [r12]
mov rcx, qword [r12 + 8]
mov ebp, dword [rax + 0x28]
add rbp, rcx
xor edx, edx
xor r8d, r8d
call rbp
mov dword [r12 + 0x1c], 0
je 0x9f4eb2
jne 0x9f4eb2
add byte [rax], al
add byte [rax], al
test eax, eax
jle 0x9f4dd0
je 0x9f4d54
jne 0x9f4d54
mov r8d, esi
mov r9d, ebx
call fcn.009f3c50
test eax, eax
je 0x9f4720
mov rcx, rdi
mov rdx, r12
je 0x9f4680
jne 0x9f4680
lea rsi, [rax - 1]
mov ebx, eax
and ebx, 3
cmp rsi, 3
jae 0x9f4f7c
xor esi, esi
test rbx, rbx
je 0x9f4826
jne 0x9f4826
add byte [rax], al
add byte [rax], al
mov r12, rax
je 0x9f4ac3
jne 0x9f4ac3
add byte [rax], al
add byte [rax], al
movzx r12d, byte [r8 + rsi - 3]
mov byte [r9 + rsi - 3], r12b
movzx edx, byte [r8 + rsi - 2]
mov byte [r9 + rsi - 2], dl
movzx edx, byte [r8 + rsi - 1]
mov byte [r9 + rsi - 1], dl
movzx edx, byte [r8 + rsi]
je 0x9f4cf0
jne 0x9f4cf0
jmp 0x560cfed
add rcx, 4
cmp rdx, rcx
jne 0x9f4f90
je 0x9f4987
jne 0x9f4987
jmp 0x4cabb64a
mov rcx, qword [r12 + 8]
je 0x9f4ea3
jne 0x9f4ea3
mov byte [r9 + rsi], dl
add rsi, 4
cmp rax, rsi
jne 0x9f4920
je 0x9f4d9e
jne 0x9f4d9e
jmp 0x9f4ecc
mov edx, 1
mov rcx, r15
xor r8d, r8d
call rbp
test eax, eax
je 0x9f5018
jne 0x9f5018
test r11, r11
je 0x9f4dd0
mov r10, qword [r12 + 8]
movzx ecx, word [rax + 0x14]
add rcx, rax
add rcx, 0x18
lea rax, [r13 + 3]
mov qword [rsp + 0x60], rax
lea rax, [r10 + 3]
mov qword [rsp + 0x58], rax
xor r14d, r14d
je 0x9f4dae
jne 0x9f4dae
test rbx, rbx
je 0x9f4808
jne 0x9f4808
jmp 0x2503d6fe
mov qword [rsp + 0x68], r12
mov eax, dword [rcx + 0x10]
test rax, rax
jne 0x9f4b2a
mov dword [rcx + 8], r11d
je 0x9f4a1e
jne 0x9f4a1e
jmp 0x24a3d92e
mov rax, qword [r12]
mov ebp, dword [rax + 0x28]
test ebp, ebp
je 0x9f4e86
je 0x9f4a44
jne 0x9f4a44
je 0xffffffff85e81733
xor ecx, ecx
test rax, rax
jne 0x9f4990
jmp 0x9f48eb
add rax, 1
je 0x9f493b
jne 0x9f493b
add byte [rax], al
add byte [rax], al
mov rax, r12
add rsp, 0x78
je 0x9f4704
jne 0x9f4704
movsxd rbp, dword [r13 + 0x3c]
cmp dword [r13 + rbp], 0x4550
jne 0x9f4e83
xor eax, eax
mov qword [rsp + 0x40], rax
add rbp, r13
xor r14d, r14d
xor edi, edi
je 0x9f4787
jne 0x9f4787
add byte [rax], al
add byte [rax], al
mov r8d, 0x8000
mov rcx, r12
xor edx, edx
call qword [rdi + 0x18]
xor r12d, r12d
je 0x9f4e34
jne 0x9f4e34
je 0x498d1d8
cmp rcx, 3
jae 0x9f4fcc
je 0x9f4dfe
jne 0x9f4dfe
jmp 0x1068d3ef
test rcx, rcx
je 0x9f47e9
jne 0x9f47e9
mov rcx, qword [r12 + 0x10]
test rcx, rcx
je 0x9f4cdf
je 0x9f46aa
jne 0x9f46aa
add byte [rax], al
add byte [rax], al
add rbp, 1
cmp rax, rbp
je 0x9f47a7
jne 0x9f47a7
mov dword [rsp + 0x20], esi
mov rdx, r12
mov rbx, qword [rsp + 0x40]
mov r9d, ebx
call fcn.009f38d0
mov rdi, qword [rsp + 0x50]
mov rcx, rdi
mov rdx, r12
je 0x9f4c16
jne 0x9f4c16
add byte [rax], al
add byte [rax], al
mov r14b, 1
je 0x9f47bb
jne 0x9f47bb
je 0x5f40536
movzx edx, byte [rbp + rax]
mov byte [rdi + rax], dl
je 0x9f4e20
add byte [rax - 0x7bf0f8ec], cl
out dx, eax
invalid
jne 0x9f4e20
jle 0x9f49b8
je 0x9f475c
jne 0x9f475c
movzx ebx, byte [rcx + rbp]
mov byte [rdx + rbp], bl
add rbp, 1
je 0x9f48e2
jne 0x9f48e2
jmp 0x9f4a1e
mov rdx, qword [rsp + 0x60]
je 0x9f4909
jne 0x9f4909
jmp 0xfe0dff8
nop
movzx ebx, byte [r13 + rcx]
mov byte [r15 + rcx], bl
movzx ebx, byte [r13 + rcx + 1]
mov byte [r15 + rcx + 1], bl
movzx ebx, byte [r13 + rcx + 2]
mov byte [r15 + rcx + 2], bl
movzx ebx, byte [r13 + rcx + 3]
mov byte [r15 + rcx + 3], bl
je 0x9f4ca1
jne 0x9f4ca1
jmp 0x9f48ef
sub rdx, rax
xor ecx, ecx
je 0x9f4f8e
jne 0x9f4f8e
add byte [rax], al
add byte [rax], al
cmp byte [rsp + 0x48], 0
cmovne ecx, esi
xor ebp, ecx
add rbp, r15
je 0x9f46de
jne 0x9f46de
je 0x8e4db39
mov eax, dword [r13 + 8]
mov r9, qword [rsp + 0x30]
mov ecx, dword [r9 + 0x54]
add ecx, eax
test ecx, ecx
jle 0x9f48ef
je 0x9f4739
je 0x9f4720
je 0x9f4712
jne 0x9f4712