Function at 0x18006e8c0
Capabilities:
Parse pe header

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x48
lea rbp, [rsp + 0x80]
xor eax, eax
mov qword [rbp - 0x50], rax
mov rbx, rcx
mov rsi, rdx
test rbx, rbx
je 0x18006ec33
test rsi, rsi
je 0x18006ec33
mov rdi, rbx
cmp word [rdi], 0x5a4d
jne 0x18006ec33
mov r14d, dword [rdi + 0x3c]
add r14, rdi
cmp dword [r14], 0x4550
jne 0x18006ec33
cmp word [r14 + 0x14], 0
je 0x18006ec33
call fcn.180161e80
movsxd r15, eax
add r14, r15
movzx ecx, word [r14]
cmp ecx, 0x10b
je 0x18006e950
cmp ecx, 0x20b
jne 0x18006ec33
cmp byte [r14], r14b
add r14, 0x70
jmp 0x18006e957
cmp byte [r14], r14b
add r14, 0x60
cmp dword [r14], 0
je 0x18006ec33
mov r15d, dword [r14]
add r15, rdi
xor r13d, r13d
lea rcx, [0x18019eb90]
cmp qword [rsi], rcx
jne 0x18006ea8a
mov r12d, dword [r15 + 0x18]
test r12d, r12d
je 0x18006eae7
mov eax, dword [r15 + 0x20]
add rax, rdi
mov qword [rbp - 0x40], rax
xor edx, edx
dec r12d
js 0x18006eae7
mov dword [rbp - 0x44], edx
lea r8d, [rdx + r12]
sar r8d, 1
mov dword [rbp - 0x48], r8d
movsxd rcx, r8d
mov r10d, dword [rax + rcx*4]
add r10, rdi
mov qword [rbp - 0x58], r10
lea rcx, [0x180199ad0]
cmp qword [rcx - 8], 0
jne 0x18006ec4b
mov r9, qword [0x1802e37a8]
mov qword [rbp - 0x60], r9
mov rcx, qword [r9 + 8]
cmp dword [rcx + 8], 0xd
jbe 0x18006ec46
mov r11, qword [rcx + 0x78]
test r11b, 2
jne 0x18006e9f6
mov rcx, r10
call r11
jmp 0x18006ea01
mov rcx, qword [r11 + 6]
mov rdx, r10
call qword [r11 - 2]
mov r8, qword [rbp - 0x60]
mov rcx, qword [r8 + 8]
cmp dword [rcx + 8], 0xe
jbe 0x18006ec46
mov r10, qword [rcx + 0x80]
test r10b, 2
jne 0x18006ea2b
mov rcx, rsi
mov rdx, rax
call r10
jmp 0x18006ea39
mov rcx, qword [r10 + 6]
mov rdx, rsi
mov r8, rax
call qword [r10 - 2]
test eax, eax
jge 0x18006ea46
mov r12d, dword [rbp - 0x48]
dec r12d
jmp 0x18006ea53
test eax, eax
jle 0x18006ea68
mov eax, dword [rbp - 0x48]
lea edx, [rax + 1]
mov dword [rbp - 0x44], edx
mov edx, dword [rbp - 0x44]
cmp edx, r12d
mov rax, qword [rbp - 0x40]
jle 0x18006e99d
jmp 0x18006eae7
mov ecx, dword [r15 + 0x24]
add rcx, rbx
movsxd rax, dword [rbp - 0x48]
movzx ecx, word [rcx + rax*2]
cmp ecx, dword [r15 + 0x14]
jae 0x18006eae7
mov eax, dword [r15 + 0x1c]
add rax, rbx
mov r13d, dword [rax + rcx*4]
jmp 0x18006eae7
lea rcx, [0x180199ad0]
cmp qword [rcx - 8], 0
jne 0x18006ec59
mov r8, qword [0x1802e37a8]
mov rdi, r8
mov rcx, qword [rdi + 8]
cmp dword [rcx + 8], 0xf
jbe 0x18006ec46
mov rdi, qword [rcx + 0x88]
test dil, 2
jne 0x18006eac8
mov rcx, rsi
call rdi
jmp 0x18006ead2
mov rcx, qword [rdi + 6]
mov rdx, rsi
call qword [rdi - 2]
sub eax, dword [r15 + 0x10]
cmp eax, dword [r15 + 0x14]
jae 0x18006eae7
mov ecx, dword [r15 + 0x1c]
add rcx, rbx
mov r13d, dword [rcx + rax*4]
test r13d, r13d
je 0x18006ec33
cmp r13d, dword [r14]
jb 0x18006eb01
mov ecx, dword [r14]
add ecx, dword [r14 + 4]
cmp ecx, r13d
ja 0x18006eb0c
mov eax, r13d
add rax, rbx
jmp 0x18006ec21
mov edi, r13d
add rdi, rbx
lea rcx, [0x180199ad0]
cmp qword [rcx - 8], 0
jne 0x18006ec63
mov rcx, qword [0x1802e37a8]
mov r12, rcx
mov rcx, qword [r12 + 8]
cmp dword [rcx + 8], 0xd
jbe 0x18006ec46
mov rbx, qword [rcx + 0x78]
test bl, 2
jne 0x18006eb50
mov rcx, rdi
call rbx
mov rsi, rax
jmp 0x18006eb5d
mov rcx, qword [rbx + 6]
mov rdx, rdi
call qword [rbx - 2]
mov rsi, rax
lea rcx, [rsi + 0xc]
mov r8d, dword [rsi + 8]
mov edx, 0x2e
call fcn.180174e80
mov r14d, eax
test r14d, r14d
jle 0x18006ec33
mov rcx, rsi
mov r8d, r14d
xor edx, edx
call fcn.1800ab550
mov rcx, rax
call fcn.18006ec70
mov r15, rax
lea edx, [r14 + 1]
cmp edx, dword [rsi + 8]
jae 0x18006ec46
mov ecx, edx
cmp word [rsi + rcx*2 + 0xc], 0x23
jne 0x18006ec0e
lea edx, [r14 + 2]
mov rcx, rsi
call fcn.1800ab500
mov rdx, qword [r12 + 8]
cmp dword [rdx + 8], 0x10
jbe 0x18006ec46
mov rsi, qword [rdx + 0x90]
test sil, 2
jne 0x18006ebdd
lea rdx, [rbp - 0x50]
mov rcx, rax
call rsi
jmp 0x18006ebeb
mov rcx, qword [rsi + 6]
lea r8, [rbp - 0x50]
mov rdx, rax
call qword [rsi - 2]
test eax, eax
je 0x18006ec33
lea rcx, [0x1801a1920]
call fcn.180004d30
mov edx, dword [rbp - 0x50]
mov dword [rax + 8], edx
mov rdx, rax
mov rcx, r15
call fcn.18006e8c0
jmp 0x18006ec21
mov rcx, rsi
call fcn.1800ab500
mov rdx, rax
mov rcx, r15
call fcn.18006e8c0
nop
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
xor eax, eax
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1800fc610
call fcn.18000143a
mov r10, qword [rbp - 0x58]
jmp 0x18006e9cb
call fcn.18000143a
jmp 0x18006ea9c
call fcn.18000143a
jmp 0x18006eb24