Function at 0x1400011f0
Capabilities:
Get system firmware table

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x158
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xc0], xmm6
mov qword [rbp + 0xb8], 0xfffffffffffffffe
mov rsi, rcx
lea rax, vtable.api::smbios::parser.0
mov qword [rbp], rax
mov qword [rbp + 8], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
mov qword [rbp + 0x28], 0
mov ecx, 0x10000
call fcn.140141068
mov rdi, rax
mov byte [rbp + 0xa8], 0
mov qword [rbp + 0xb0], 0
mov ecx, 0x52534d42
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_GetSystemFirmwareTable]
test eax, eax
je 0x140001788
mov ecx, 0x52534d42
xor edx, edx
mov r8, rdi
mov r9d, eax
call qword [sym.imp.KERNEL32.dll_GetSystemFirmwareTable]
test eax, eax
je 0x140001788
mov qword [rbp + 0x58], rsi
mov r8d, eax
mov rcx, rbp
mov rdx, rdi
call fcn.140001100
mov rsi, qword [rbp + 0x18]
xorps xmm6, xmm6
lea r14, [rbp - 0x30]
lea r12, [rbp + 0x80]
mov qword [rbp - 8], rdi
jmp 0x1400012e0
add rdx, 0x27
mov rcx, rax
call fcn.140141034
add rsi, 8
cmp rsi, qword [rbp + 0x20]
je 0x1400016de
movaps xmmword [rbp + 0x30], xmm6
mov qword [rbp + 0x40], 0
mov rcx, qword [rsi]
lea rdx, [rbp + 0x30]
call section..text
mov rax, qword [rsi]
movzx edx, byte [rax]
cmp rdx, 0x22
ja 0x1400016a3
movabs rax, 0x40002001b
bt rax, rdx
jae 0x1400016a3
mov rcx, r14
call fcn.140002520
mov qword [rbp - 0x10], rsi
xor esi, esi
mov r13, qword [rbp + 0x30]
jmp 0x14000134f
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.140141034
inc esi
add r13, 8
cmp r13, qword [rbp + 0x38]
je 0x140001660
mov r15, qword [r13]
test r15, r15
je 0x14000134b
mov rdi, r14
movaps xmmword [rbp + 0x90], xmm6
movaps xmmword [rbp + 0x80], xmm6
mov rcx, r15
call fcn.14023e390
test rax, rax
js 0x14000177f
mov r14, rax
mov dword [rbp + 0x54], esi
cmp rax, 0xf
ja 0x1400013c0
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], reloc.WS2_32.dll_ntohs
mov rcx, r12
mov rdx, r15
mov r8, r14
call fcn.14021e3b0
add r14, rbp
add r14, 0x80
jmp 0x140001434
mov qword [rbp + 0x98], reloc.WS2_32.dll_ntohs
mov rsi, r14
or rsi, 0xf
cmp rsi, 0x17
mov eax, reloc.WS2_32.dll_shutdown
cmovb rsi, rax
cmp rsi, 0xfff
jb 0x140001402
lea rcx, [rsi + 0x28]
call fcn.140140ff0
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14000140e
lea rcx, [rsi + 1]
call fcn.140140ff0
mov rbx, rax
mov qword [rbp + 0x80], rbx
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], rsi
mov rcx, rbx
mov rdx, r15
mov r8, r14
call fcn.14021e3b0
add r14, rbx
mov byte [r14], 0
cmp qword [rbp + 0x98], 0x10
mov rcx, r12
jb 0x14000144c
mov rcx, qword [rbp + 0x80]
mov rbx, qword [rbp + 0x90]
add rbx, rcx
mov rdx, rbx
mov r8b, reloc.WLDAP32.dll_Ordinal_32
call fcn.140145ff0
cmp rax, rbx
mov r14, rdi
je 0x140001490
mov rcx, rax
nop dword [rax]
inc rcx
cmp rcx, rbx
je 0x140001490
movzx edx, byte [rcx]
cmp dl, 0x20
je 0x140001470
mov byte [rax], dl
inc rax
jmp 0x140001470
mov rsi, qword [rbp + 0x90]
cmp qword [rbp + 0x98], 0x10
mov rcx, r12
jb 0x1400014ab
mov rcx, qword [rbp + 0x80]
mov rdx, rax
sub rdx, rcx
sub rbx, rax
mov rdi, rsi
sub rdi, rdx
cmp rdi, rbx
cmovae rdi, rbx
mov r8, rsi
sub r8, rdi
sub r8, rdx
inc r8
lea rdx, [rax + rdi]
mov rcx, rax
call fcn.14021e3b0
cmp qword [rbp + 0x98], 0x10
mov rbx, r12
jb 0x1400014ed
mov rbx, qword [rbp + 0x80]
sub rsi, rdi
mov qword [rbp + 0x90], rsi
je 0x140001514
xor edi, edi
nop dword [rax + rax]
movzx ecx, byte [rbx + rdi]
call fcn.14023fc4c
mov byte [rbx + rdi], al
inc rdi
cmp rsi, rdi
jne 0x140001500
lea rcx, [rbp - 0x50]
mov esi, dword [rbp + 0x54]
mov edx, esi
call fcn.140002520
cmp byte [rbp + 0xa8], 1
jne 0x140001546
mov rcx, qword [rbp + 0xb0]
mov rdx, r14
call fcn.140006b40
mov rcx, qword [rbp + 0xb0]
cmp rax, qword [rcx]
jne 0x140001586
mov byte [rbp + 0x60], 0
mov qword [rbp + 0x68], 0
lea rcx, [rbp + 0xa8]
mov rdx, r14
call fcn.140001bd0
movzx edx, byte [rax]
movzx ecx, byte [rbp + 0x60]
mov byte [rax], cl
mov byte [rbp + 0x60], dl
mov rcx, qword [rax + 8]
mov rbx, qword [rbp + 0x68]
mov qword [rax + 8], rbx
mov qword [rbp + 0x68], rcx
lea rcx, [rbp + 0x68]
call fcn.1400026c0
mov qword [rbp + 0x78], 0
mov byte [rbp + 0x70], 3
mov rcx, r12
call fcn.140003100
mov qword [rbp + 0x78], rax
lea rcx, [rbp + 0xa8]
mov rdx, r14
call fcn.140001bd0
mov rcx, rax
lea rdx, [rbp - 0x50]
call fcn.140001bd0
movzx edx, byte [rax]
movzx ecx, byte [rbp + 0x70]
mov byte [rax], cl
mov byte [rbp + 0x70], dl
mov rcx, qword [rax + 8]
mov rbx, qword [rbp + 0x78]
mov qword [rax + 8], rbx
mov qword [rbp + 0x78], rcx
lea rcx, [rbp + 0x78]
call fcn.1400026c0
mov rax, qword [rbp - 0x38]
cmp rax, 0x10
jb 0x14000161d
mov rcx, qword [rbp - 0x50]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140001618
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400016d9
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.140141034
mov rax, qword [rbp + 0x98]
cmp rax, 0x10
jb 0x140001349
mov rcx, qword [rbp + 0x80]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140001344
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jb 0x14000133a
jmp 0x1400016d9
mov rax, qword [rbp - 0x18]
cmp rax, 0x10
mov rdi, qword [rbp - 8]
mov rsi, qword [rbp - 0x10]
jb 0x1400016a3
mov rcx, qword [rbp - 0x30]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14000169e
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400016d9
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.140141034
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x1400012dc
mov rdx, qword [rbp + 0x40]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x1400012d7
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jb 0x1400012d0
call fcn.140231990
movzx eax, byte [rbp + 0xa8]
test eax, eax
mov rsi, qword [rbp + 0x58]
je 0x140001788
cmp eax, 2
je 0x14000170b
cmp eax, 1
jne 0x14000171b
mov rax, qword [rbp + 0xb0]
cmp qword [rax + 8], 0
jne 0x14000171b
jmp 0x140001788
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rax]
cmp rcx, qword [rax + 8]
je 0x140001788
mov r8d, 0x10000
mov rcx, rdi
xor edx, edx
call fcn.14021ea60
mov dword [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
lea rcx, [rbp + 0xa8]
lea rdx, [rbp - 0x30]
mov r8d, 0xffffffff
mov r9b, reloc.WLDAP32.dll_Ordinal_32
call fcn.140001e00
mov rsi, qword [rbp + 0x58]
mov qword [rsi + 8], 0
mov byte [rsi], 3
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call fcn.140140ff0
movups xmm0, xmmword [rbp - 0x30]
movups xmm1, xmmword [rbp - 0x20]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov qword [rsi + 8], rax
jmp 0x140001793
call fcn.1400026a0
mov rsi, qword [rbp + 0x58]
mov byte [rsi], 0
mov qword [rsi + 8], 0
movzx edx, byte [rbp + 0xa8]
lea rcx, [rbp + 0xb0]
call fcn.1400026c0
lea rax, vtable.api::smbios::parser.0
mov qword [rbp], rax
mov rcx, qword [rbp + 0x18]
cmp rcx, qword [rbp + 0x20]
je 0x1400017bf
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 8]
test rax, rax
je 0x1400017d4
mov rcx, rax
call fcn.140141034
mov rcx, qword [rbp + 0x18]
mov qword [rbp + 0x10], 0
test rcx, rcx
je 0x140001812
mov rdx, qword [rbp + 0x28]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x14000180d
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x1400016d9
add rdx, 0x27
mov rcx, rax
call fcn.140141034
mov rax, rsi
movaps xmm6, xmmword [rbp + 0xc0]
add rsp, 0x158
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret