Function at 0x180091ed0
Capabilities:
Enumerate pe sections
Reference absolute stream path on windows

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0xc0
lea rbp, [rsp + 0x50]
mov qword [rbp + 0xa0], rbx
mov qword [rbp + 0xa8], rsi
mov qword [rbp + 0xb0], rdi
mov rax, qword [0x180357660]
xor rax, rbp
mov qword [rbp + 0x68], rax
mov edi, dword [rbp + 0xe0]
mov r14, r9
mov ebx, dword [rbp + 8]
mov r10, rdx
mov qword [rbp + 0x60], r8
mov qword [rbp + 0x30], r9
lea r8d, [rdi + 0x738]
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x58], rcx
mov dword [rbp], r8d
cmp edi, r8d
jae 0x180092177
movsxd r8, dword [rbp + 8]
movabs rdx, 0xffffffffffffff0
mov r13, qword [rbp + 0xc8]
mov eax, dword [rbp]
mov qword [rbp + 0x20], r8
nop dword [rax + rax]
cmp edi, 0x126
ja 0x18009240f
je 0x18009230f
mov eax, edi
sub eax, 0x42
je 0x1800922dc
sub eax, 0x3c
je 0x1800921c1
sub eax, 0xb
je 0x1800921a8
sub eax, 0x16
je 0x180091fbd
cmp eax, 0x4b
jne 0x180092160
mov rax, qword [rbp + 0xd0]
mov eax, dword [rax]
test al, 8
jne 0x180092553
test al, 1
je 0x180092160
xor eax, eax
jmp 0x180092179
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rdx, str._nHEADER:_n
call fcn.1800bee00
mov rax, qword [r13]
mov ecx, 2
movzx edi, byte [rax + 5]
movzx esi, byte [rax + 4]
movzx r14d, byte [rax + 3]
movzx r15d, byte [rax + 2]
movzx r12d, byte [rax + 1]
movzx r13d, byte [rax]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov dword [rsp + 0x38], edi
lea rdx, str.marker_missing_after_first_P_partition_at__d__d
mov dword [rsp + 0x30], esi
mov rcx, rax
mov dword [rsp + 0x28], r14d
mov r9d, r12d
mov r8d, r13d
mov dword [rsp + 0x20], r15d
call fcn.1800bee00
mov r13, qword [rbp + 0xc8]
mov rcx, qword [r13]
movzx eax, byte [rcx + 0x14]
movzx r14d, byte [rcx + 0x15]
movzx esi, byte [rcx + 0x11]
movzx edi, byte [rcx + 9]
shl r14d, 8
or r14d, eax
shl esi, 8
movzx eax, byte [rcx + 0x13]
shl edi, 8
shl r14d, 8
or r14d, eax
movzx eax, byte [rcx + 0x12]
shl r14d, 8
or r14d, eax
movzx eax, byte [rcx + 0x10]
or esi, eax
movzx eax, byte [rcx + 0xf]
shl esi, 8
or esi, eax
movzx eax, byte [rcx + 0xe]
shl esi, 8
or esi, eax
movzx eax, byte [rcx + 8]
or edi, eax
movzx eax, byte [rcx + 7]
shl edi, 8
or edi, eax
movzx eax, byte [rcx + 6]
shl edi, 8
mov ecx, 2
or edi, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9d, esi
mov dword [rsp + 0x20], r14d
mov rcx, rax
lea rdx, str.function_contains_restrict_keyword_in_struct
mov r8d, edi
call fcn.1800bee00
mov rax, qword [r13]
mov ecx, 2
movzx edi, byte [rax + 0x1a]
movzx esi, byte [rax + 0x19]
movzx r14d, byte [rax + 0x18]
movzx r15d, byte [rax + 0x17]
movzx r12d, byte [rax + 0x16]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov dword [rsp + 0x30], edi
lea rdx, str.D:drmemory_packagedynamoriocoremonitor.c:777
mov rcx, rax
mov dword [rsp + 0x28], esi
mov r9d, r15d
mov dword [rsp + 0x20], r14d
mov r8d, r12d
call fcn.1800bee00
mov esi, 0x1b
mov r14d, esi
cmp dword [r13 + 8], esi
jle 0x180092144
mov rax, qword [r13]
mov ecx, 2
movzx edi, byte [rax + r14]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, edi
lea rdx, [0x180347324]
mov rcx, rax
call fcn.1800bee00
inc esi
lea r14, [r14 + 1]
cmp esi, dword [r13 + 8]
jl 0x180092112
mov r8, qword [rbp + 0x20]
mov edi, dword [rbp + 0xe0]
mov r14, qword [rbp + 0x30]
mov r10, qword [rbp + 0x18]
movabs rdx, 0xffffffffffffff0
mov eax, dword [rbp]
add edi, 0xa8
mov dword [rbp + 0xe0], edi
cmp edi, eax
jb 0x180091f60
mov eax, ebx
mov rcx, qword [rbp + 0x68]
xor rcx, rbp
call fcn.1800bfa40
mov rbx, qword [rbp + 0xa0]
mov rsi, qword [rbp + 0xa8]
mov rdi, qword [rbp + 0xb0]
lea rsp, [rbp + 0x70]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rax, qword [rbp + 0xd0]
mov eax, dword [rax + 0x34]
cdq
sub eax, edx
sar eax, 1
xor ecx, ecx
mov dword [rbp + 0x28], eax
mov dword [rbp + 0x10], ecx
jmp 0x180092156
movsxd r9, dword [r10]
mov rcx, r9
shl rcx, 2
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800921d7
mov rax, rdx
and rax, 0xfffffffffffffff0
call fcn.1800bf9d0
sub rsp, rax
lea rax, [rcx + 0xf]
lea r15, [rsp + 0x50]
mov qword [rbp + 0x50], r15
cmp rax, rcx
ja 0x1800921f8
mov rax, rdx
and rax, 0xfffffffffffffff0
call fcn.1800bf9d0
sub rsp, rax
xor esi, esi
xor r8d, r8d
mov dword [rbp + 0x38], esi
xor edx, edx
mov qword [rbp + 0x20], r8
xor r10d, r10d
lea r11, [rsp + 0x50]
mov qword [rbp + 0x48], r11
test r9d, r9d
jle 0x180092152
mov r8, qword [rbp + 0xd0]
mov r12, r13
cmp rdx, 2
jl 0x1800922a4
movss xmm1, dword [r12]
movss xmm0, dword [r11 + rdx*4 - 4]
comiss xmm0, xmm1
ja 0x18009229f
mov edi, dword [r8]
lea r9, [rdx - 2]
mov r14, r11
lea r9, [r15 + r9*4]
sub r14, r15
nop word [rax + rax]
mov ecx, dword [r15 + rdx*4 - 4]
add ecx, edi
cmp r10d, ecx
jge 0x18009229f
cmp rdx, 1
jle 0x18009229f
movss xmm0, dword [r14 + r9]
comiss xmm0, dword [r11 + rdx*4 - 4]
jb 0x18009229f
mov ecx, dword [r9]
add ecx, edi
cmp r10d, ecx
jge 0x18009229f
movss xmm0, dword [r11 + rdx*4 - 8]
dec rdx
dec esi
sub r9, 4
comiss xmm0, xmm1
jbe 0x180092260
mov edi, 0x7e
mov dword [r15 + rdx*4], r10d
inc esi
mov eax, dword [r12]
inc r10d
mov dword [r11 + rdx*4], eax
add r12, 4
mov rax, qword [rbp + 0x18]
inc rdx
cmp r10d, dword [rax]
jl 0x180092231
mov r8, qword [rbp + 0x20]
mov r10, rax
mov r14, qword [rbp + 0x30]
mov dword [rbp + 0x38], esi
jmp 0x180092156
mov rax, qword [rbp + 0xd0]
mov ecx, dword [rax]
mov eax, ecx
and eax, 3
cmp al, 3
je 0x18009255d
mov eax, ecx
and eax, 0xc
cmp al, 0xc
je 0x18009255d
test ecx, ecx
jne 0x180092160
lea eax, [rcx + 3]
jmp 0x180092179
movsxd rsi, dword [rbp + 0x38]
xor edi, edi
mov r14, rsi
test esi, esi
jle 0x180092544
mov rax, qword [rbp + 0x48]
lea r12d, [rsi - 1]
mov rsi, qword [rbp + 0x50]
mov r15, rax
sub r15, qword [rbp + 0x50]
mov rdx, rax
sub rsi, rax
nop dword [rax]
cmp edi, r12d
jge 0x18009235a
lea rax, [rsi + rdx]
movss xmm0, dword [rax + r15 + 4]
comiss xmm0, dword [rdx]
jbe 0x18009235a
mov ecx, dword [rax + 4]
jmp 0x18009236a
mov rax, qword [rbp + 0xd0]
mov ecx, dword [rsi + rdx]
mov eax, dword [rax]
inc eax
add ecx, eax
mov eax, dword [r10]
cmp ecx, eax
cmovle eax, ecx
movsxd r10, eax
cmp r8, r10
jge 0x1800923e1
mov r11, qword [rbp + 0xc8]
mov rax, r10
sub rax, r8
cmp rax, 4
jl 0x1800923ce
mov r9, r10
lea rcx, [r11 + 8]
sub r9, r8
lea rcx, [rcx + r8*4]
sub r9, 4
shr r9, 2
inc r9
lea r8, [r8 + r9*4]
nop word [rax + rax]
mov eax, dword [rdx]
mov dword [rcx - 8], eax
lea rcx, [rcx + 0x10]
mov eax, dword [rdx]
mov dword [rcx - 0x14], eax
mov eax, dword [rdx]
mov dword [rcx - 0x10], eax
mov eax, dword [rdx]
mov dword [rcx - 0xc], eax
sub r9, 1
jne 0x1800923b0
cmp r8, r10
jge 0x1800923e1
mov eax, dword [rdx]
mov dword [r11 + r8*4], eax
inc r8
cmp r8, r10
jl 0x1800923d3
mov r10, qword [rbp + 0x18]
inc edi
add rdx, 4
sub r14, 1
jne 0x180092340
mov r13, qword [rbp + 0xc8]
mov edi, dword [rbp + 0xe0]
mov r14, qword [rbp + 0x30]
mov qword [rbp + 0x20], r8
jmp 0x180092156
mov eax, edi
sub eax, 0x131
je 0x180092476
sub eax, 0x16
je 0x180092453
sub eax, 0x4b
je 0x180092439
sub eax, 0x47
je 0x180092564
cmp eax, 0x61
je 0x180092177
jmp 0x180092160
mov rax, qword [rbp + 0xd0]
test byte [rax], 0x20
jne 0x1800925c5
mov ebx, 3
jmp 0x180092160
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rdx, [0x18034727c]
call fcn.1800bee00
mov r8, qword [rbp + 0x20]
jmp 0x180092152
mov r15, qword [rbp + 0xc0]
xor r9d, r9d
movsxd rsi, dword [rbp + 0x28]
xor r8d, r8d
mov rcx, qword [rbp + 0xd0]
xor edx, edx
mov eax, dword [r15]
imul eax, esi
shl eax, 2
mov dword [rbp + 8], eax
lea rax, [rbp + 8]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x10f
mov qword [rsp + 0x20], 0
call fcn.180028e90
mov ecx, dword [r15]
xor edi, edi
mov qword [rbp + 0x40], rax
mov r11, rsi
test ecx, ecx
jle 0x180092535
mov edx, dword [rbp + 0x10]
mov rsi, r14
mov r14, qword [rbp + 0xd8]
nop dword [rax + rax]
cmp dword [rsi], 0
lea eax, [rdx + 1]
mov r10, qword [r14]
mov r9d, edi
cmove eax, edx
xor r8d, r8d
mov dword [rbp + 0x10], eax
mov edx, eax
test r11, r11
jle 0x18009251f
nop dword [rax]
mov ecx, dword [r10 + r8*4]
inc r8
mov rax, qword [rbp + 0x40]
movsxd rdx, r9d
mov dword [rax + rdx*4], ecx
mov ecx, dword [r15]
add r9d, ecx
cmp r8, r11
jl 0x180092500
mov edx, dword [rbp + 0x10]
inc edi
add r14, 8
add rsi, 4
cmp edi, ecx
jl 0x1800924e0
mov dword [rbp + 0x10], edx
jmp 0x180092144
mov r8, qword [rbp + 0x20]
mov edi, dword [rbp + 0xe0]
jmp 0x180092152
mov edi, dword [rbp + 0xe0]
mov r14, qword [rbp + 0x30]
jmp 0x180092163
mov eax, 1
jmp 0x180092179
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
cmp dword [rbp + 0x10], 0
je 0x180091fb6
mov rax, qword [rbp + 0x58]
lea rdx, [0x180020ad0]
mov r9, qword [rbp + 0xd0]
mov r8, r10
mov rcx, qword [rbp + 0x60]
mov dword [rsp + 0x40], 0x59
mov eax, dword [rax]
mov dword [rbp + 8], eax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x28]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x28], 1
call fcn.18001e040
jmp 0x180092179
mov eax, 2
jmp 0x180092179