Function at 0x140045990
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x140392fd8]
xor rax, rsp
mov qword [rbp + 8], rax
movzx eax, byte [rdx + 2]
mov r13, rdx
movzx r12d, byte [rdx + 3]
mov r15, rcx
movzx r8d, byte [rdx + 6]
movzx r9d, byte [rdx + 9]
movzx ecx, byte [rdx + 0xc]
movzx r11d, byte [r13 + 0x16]
movzx edi, byte [r13 + 0x19]
movzx r10d, byte [r13 + 0x1c]
shl rcx, 8
shl r12, 8
or r12, rax
shl r8, 8
movzx eax, byte [rdx + 1]
shl r9, 8
shl r12, 8
or r12, rax
shl r11, 8
movzx eax, byte [rdx]
shl rdi, 8
shl r12, 8
or r12, rax
shl r10, 8
movzx eax, byte [rdx + 5]
or r8, rax
movzx eax, byte [rdx + 4]
shl r8, 8
or r8, rax
movzx eax, byte [rdx + 8]
or r9, rax
shl r8, 6
movzx eax, byte [rdx + 7]
shl r9, 8
or r9, rax
mov qword [rsp + 0x58], r8
movzx eax, byte [rdx + 0xb]
or rcx, rax
shl r9, 5
movzx eax, byte [rdx + 0xa]
shl rcx, 8
or rcx, rax
movzx eax, byte [rdx + 0xe]
lea rbx, [rcx*8]
movzx ecx, byte [rdx + 0xf]
shl rcx, 8
or rcx, rax
mov qword [rsp + 0x68], rbx
movzx eax, byte [rdx + 0xd]
movzx edx, byte [rdx + 0x13]
shl rdx, 8
shl rcx, 8
or rcx, rax
movzx eax, byte [r13 + 0x12]
or rdx, rax
movzx eax, byte [r13 + 0x11]
shl rdx, 8
or rdx, rax
movzx eax, byte [r13 + 0x10]
shl rdx, 8
lea rsi, [rcx*4]
or rdx, rax
movzx eax, byte [r13 + 0x15]
or r11, rax
mov qword [rsp + 0x70], rdx
movzx eax, byte [r13 + 0x14]
shl r11, 8
or r11, rax
movzx eax, byte [r13 + 0x18]
or rdi, rax
shl r11, 7
movzx eax, byte [r13 + 0x17]
shl rdi, 8
or rdi, rax
movzx eax, byte [r13 + 0x1b]
or r10, rax
shl rdi, 5
movzx eax, byte [r13 + 0x1a]
shl r10, 8
or r10, rax
mov qword [rbp - 0x80], rdi
movzx eax, byte [r13 + 0x1d]
movzx ecx, byte [r13 + 0x1f]
shl rcx, 0x10
or rcx, rax
shl r10, 4
movzx eax, byte [r13 + 0x1e]
and ecx, 0x7fffff
shl rax, 8
or rcx, rax
mov qword [rsp + 0x48], r10
lea r14, [rcx*4]
mov qword [rbp - 0x78], r14
cmp r14, 0x1fffffc
jne 0x140045b9d
cmp r10, 0xffffff0
jne 0x140045b9d
cmp rdi, 0x1fffffe0
jne 0x140045b9d
cmp r11, 0x7fffff80
jne 0x140045b9d
mov eax, 0xffffffff
cmp rdx, rax
jne 0x140045b9d
cmp rsi, 0x3fffffc
jne 0x140045b9d
cmp rbx, 0x7fffff8
jne 0x140045b9d
cmp r9, rdi
jne 0x140045b9d
cmp r8, 0x3fffffc0
jne 0x140045b9d
mov eax, 0xffffffed
cmp r12, rax
jae 0x140045ee6
lea r10, [rbx + 0x1000000]
add r14, 0x1000000
shr r14, 0x19
lea rbx, [rdx + 0x1000000]
imul rax, r14, 0x13
shr r10, 0x19
add r8, 0x1000000
add r12, rax
shr r8, 0x19
mov rax, qword [rsp + 0x48]
add r9, r8
add rsi, r10
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x50], rsi
lea rsi, [rdi + 0x1000000]
shr rsi, 0x19
lea rcx, [r12 + 0x2000000]
add rax, rsi
shr rcx, 0x1a
mov qword [rsp + 0x48], rax
lea rdx, [r9 + 0x2000000]
mov r9, qword [rsp + 0x50]
shr rdx, 0x1a
add r9, 0x2000000
lea rdi, [rax + 0x2000000]
shr r9, 0x1a
mov rax, rcx
shr rbx, 0x19
shl rax, 0x1a
add r11, rbx
sub r12d, eax
mov qword [rsp + 0x78], r11
mov rax, qword [rsp + 0x58]
add r11, 0x2000000
shr r11, 0x1a
shl r8, 0x19
sub eax, r8d
shl r10, 0x19
add eax, ecx
shl rbx, 0x19
mov rcx, qword [rsp + 0x60]
mov dword [r15 + 0x2c], eax
mov rax, rdx
shl rax, 0x1a
sub ecx, eax
shl rsi, 0x19
mov rax, qword [rsp + 0x68]
sub eax, r10d
mov dword [r15 + 0x30], ecx
mov rcx, qword [rsp + 0x50]
add eax, edx
mov dword [r15 + 0x34], eax
mov rax, r9
shl rax, 0x1a
sub ecx, eax
shr rdi, 0x1a
mov rax, qword [rsp + 0x70]
sub eax, ebx
mov dword [r15 + 0x38], ecx
mov rcx, qword [rsp + 0x78]
add eax, r9d
mov dword [r15 + 0x3c], eax
mov rax, r11
shl rax, 0x1a
sub ecx, eax
shl r14, 0x19
mov rax, qword [rbp - 0x80]
sub eax, esi
mov dword [r15 + 0x40], ecx
mov rcx, qword [rsp + 0x48]
add eax, r11d
mov dword [r15 + 0x44], eax
mov rax, rdi
shl rax, 0x1a
sub ecx, eax
mov dword [r15 + 0x28], r12d
mov rax, qword [rbp - 0x78]
sub eax, r14d
mov dword [r15 + 0x48], ecx
add eax, edi
mov dword [r15 + 0x4c], eax
xor eax, eax
mov qword [r15 + 0x50], 1
lea rdx, [r15 + 0x28]
mov qword [r15 + 0x58], rax
lea rcx, [rbp - 0x70]
mov qword [r15 + 0x60], rax
mov qword [r15 + 0x68], rax
mov qword [r15 + 0x70], rax
call fcn.140044800
lea r8, [0x140359530]
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x48]
call fcn.140043e40
mov r8d, dword [r15 + 0x68]
mov edx, dword [r15 + 0x6c]
mov ecx, dword [r15 + 0x70]
mov esi, dword [r15 + 0x50]
mov edi, dword [r15 + 0x54]
mov ebx, dword [r15 + 0x58]
mov r11d, dword [r15 + 0x5c]
mov r10d, dword [r15 + 0x60]
mov r9d, dword [r15 + 0x64]
mov eax, dword [r15 + 0x74]
sub dword [rbp - 0x58], r8d
sub dword [rbp - 0x54], edx
sub dword [rbp - 0x50], ecx
add dword [rbp - 0x30], r8d
lea r8, [rbp - 0x48]
add dword [rbp - 0x2c], edx
lea rdx, [rbp - 0x70]
add dword [rbp - 0x28], ecx
mov rcx, r15
sub dword [rbp - 0x70], esi
sub dword [rbp - 0x6c], edi
sub dword [rbp - 0x68], ebx
sub dword [rbp - 0x64], r11d
sub dword [rbp - 0x60], r10d
sub dword [rbp - 0x5c], r9d
sub dword [rbp - 0x4c], eax
add dword [rbp - 0x48], esi
add dword [rbp - 0x44], edi
add dword [rbp - 0x40], ebx
add dword [rbp - 0x3c], r11d
add dword [rbp - 0x38], r10d
add dword [rbp - 0x34], r9d
add dword [rbp - 0x24], eax
call fcn.1400473b0
mov rdx, r15
lea rcx, [rbp - 0x20]
call fcn.140044800
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x20]
call fcn.140043e40
mov ebx, dword [rbp - 0x20]
mov eax, ebx
mov edi, dword [rbp - 0x70]
sub eax, edi
mov esi, dword [rbp - 0x1c]
mov r12d, dword [rbp - 0x6c]
mov dword [rsp + 0x20], eax
mov eax, esi
sub eax, r12d
mov dword [rsp + 0x24], eax
mov eax, dword [rbp - 0x18]
sub eax, dword [rbp - 0x68]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x14]
sub eax, dword [rbp - 0x64]
mov dword [rsp + 0x2c], eax
mov eax, dword [rbp - 0x10]
sub eax, dword [rbp - 0x60]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0xc]
sub eax, dword [rbp - 0x5c]
mov dword [rsp + 0x34], eax
mov eax, dword [rbp - 8]
sub eax, dword [rbp - 0x58]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 4]
sub eax, dword [rbp - 0x54]
mov dword [rsp + 0x3c], eax
lea rcx, [rsp + 0x20]
mov eax, dword [rbp]
sub eax, dword [rbp - 0x50]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 4]
sub eax, dword [rbp - 0x4c]
mov dword [rsp + 0x44], eax
call fcn.140043d60
test eax, eax
je 0x140045eba
lea eax, [rbx + rdi]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x20]
lea eax, [rsi + r12]
mov dword [rsp + 0x24], eax
mov eax, dword [rbp - 0x18]
add eax, dword [rbp - 0x68]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x14]
add eax, dword [rbp - 0x64]
mov dword [rsp + 0x2c], eax
mov eax, dword [rbp - 0x10]
add eax, dword [rbp - 0x60]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0xc]
add eax, dword [rbp - 0x5c]
mov dword [rsp + 0x34], eax
mov eax, dword [rbp - 8]
add eax, dword [rbp - 0x58]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 4]
add eax, dword [rbp - 0x54]
mov dword [rsp + 0x3c], eax
mov eax, dword [rbp]
add eax, dword [rbp - 0x50]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 4]
add eax, dword [rbp - 0x4c]
mov dword [rsp + 0x44], eax
call fcn.140043d60
test eax, eax
jne 0x140045ee6
lea r8, [0x140359558]
mov rdx, r15
mov rcx, r15
call fcn.140043e40
mov rdx, r15
lea rcx, [rsp + 0x20]
call fcn.1400452e0
movzx ecx, byte [r13 + 0x1f]
movzx eax, byte [rsp + 0x20]
shr cl, 7
and al, 1
cmp al, cl
je 0x140045ef8
mov rcx, r15
call fcn.140043d60
test eax, eax
jne 0x140045eed
mov eax, 0xffffffff
jmp 0x140045f0a
mov rdx, r15
mov rcx, r15
call fcn.140044770
lea rcx, [r15 + 0x78]
mov rdx, r15
lea r8, [r15 + 0x28]
call fcn.140043e40
xor eax, eax
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.14025a720
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret