Function at 0x180008460
Capabilities:
Get uefi variable
Hash data with md5
Set uefi variable

Disassembly:
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1040]
mov eax, 0x1140
call fcn.180025e10
sub rsp, rax
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x1170], rbx
mov qword [rsp + 0x1178], rsi
mov qword [rsp + 0x1180], rdi
mov rax, qword [0x180038010]
xor rax, rsp
mov qword [rbp + 0x1030], rax
call fcn.180003ac0
xor edi, edi
mov ebx, edi
xor eax, eax
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
mov qword [rbp], rax
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], rax
mov dword [rbp + 0x28], eax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
call fcn.1800094d0
mov qword [rsp + 0x58], rax
lea rsi, vtable.rt_utility::md5_checksum.0
mov r8d, ebx
lea rdx, str.Boot_04x
lea rcx, [rbp - 0x10]
call qword [sym.imp.USER32.dll_wsprintfW]
inc ebx
mov dword [rsp + 0x30], ebx
mov r9d, 0x800
lea r8, [rbp + 0x30]
lea rdx, str.8BE4DF61_93CA_11D2_AA0D_00E098032B8C
lea rcx, [rbp - 0x10]
call qword [sym.imp.KERNEL32.dll_GetFirmwareEnvironmentVariableW]
test eax, eax
je 0x1800087e8
mov qword [rbp - 0x70], rsi
xor eax, eax
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], 0x67452301
mov dword [rbp - 0x1c], 0xefcdab89
mov dword [rbp - 0x18], 0x98badcfe
mov dword [rbp - 0x14], 0x10325476
mov r8d, 0x800
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x70]
call fcn.180002960
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x70]
call fcn.180002750
nop
mov r13, qword [rsp + 0x58]
mov r14, r13
mov rbx, qword [r13 + 8]
mov r15, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x68]
cmp byte [rbx + 0x19], 0
jne 0x18000869f
nop
lea rdx, [rsp + 0x68]
cmp r15, 0x10
cmovae rdx, r12
lea rcx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x1800085dc
mov rcx, qword [rbx + 0x20]
mov rdi, qword [rbx + 0x30]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call fcn.180025e80
test eax, eax
jne 0x180008607
cmp rdi, rsi
jae 0x1800085ff
mov eax, 0xffffffff
jmp 0x180008607
xor eax, eax
cmp rdi, rsi
seta al
shr eax, 0x1f
test al, al
je 0x180008614
mov rbx, qword [rbx + 0x10]
jmp 0x18000861a
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x1800085c0
cmp r14, r13
je 0x18000869f
lea rdx, [r14 + 0x20]
cmp qword [r14 + 0x38], 0x10
jb 0x180008634
mov rdx, qword [r14 + 0x20]
lea rcx, [rsp + 0x68]
cmp r15, 0x10
cmovae rcx, r12
mov rbx, qword [r14 + 0x30]
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call fcn.180025e80
test eax, eax
jne 0x18000866c
cmp rsi, rbx
jae 0x180008664
mov eax, 0xffffffff
jmp 0x18000866c
xor eax, eax
cmp rsi, rbx
seta al
shr eax, 0x1f
test al, al
jne 0x18000869f
xor r9d, r9d
lea r8, [rsp + 0x50]
lea rdx, str.8BE4DF61_93CA_11D2_AA0D_00E098032B8C
lea rcx, [rbp - 0x10]
call qword [sym.imp.KERNEL32.dll_SetFirmwareEnvironmentVariableW]
mov r13, qword [rsp + 0x58]
mov r15, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x68]
mov rbx, r13
mov rdi, qword [r13 + 8]
cmp byte [rdi + 0x19], 0
jne 0x180008763
lea rdx, [rsp + 0x68]
cmp r15, 0x10
cmovae rdx, r12
lea rcx, [rdi + 0x20]
cmp qword [rdi + 0x38], 0x10
jb 0x1800086cc
mov rcx, qword [rdi + 0x20]
mov r14, qword [rdi + 0x30]
mov r8, r14
cmp rsi, r14
cmovb r8, rsi
call fcn.180025e80
test eax, eax
jne 0x1800086f7
cmp r14, rsi
jae 0x1800086ef
mov eax, 0xffffffff
jmp 0x1800086f7
xor eax, eax
cmp r14, rsi
seta al
shr eax, 0x1f
test al, al
je 0x180008704
mov rdi, qword [rdi + 0x10]
jmp 0x18000870a
mov rbx, rdi
mov rdi, qword [rdi]
cmp byte [rdi + 0x19], 0
je 0x1800086b0
cmp rbx, r13
je 0x180008763
lea rdx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x180008724
mov rdx, qword [rbx + 0x20]
lea rcx, [rsp + 0x68]
cmp r15, 0x10
cmovae rcx, r12
mov rdi, qword [rbx + 0x30]
mov r8, rsi
cmp rdi, rsi
cmovb r8, rdi
call fcn.180025e80
test eax, eax
jne 0x18000875c
cmp rsi, rdi
jae 0x180008754
mov eax, 0xffffffff
jmp 0x18000875c
xor eax, eax
cmp rsi, rdi
seta al
shr eax, 0x1f
test al, al
je 0x18000879c
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], rax
lea r8, [rsp + 0x40]
lea rcx, [rsp + 0x58]
call fcn.1800095a0
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
mov r8, rbx
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.1800096b0
mov rbx, qword [rsp + 0x38]
mov dword [rbx + 0x40], 1
mov rdx, qword [rbp - 0x80]
cmp rdx, 0x10
jb 0x1800087db
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800087d6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000883e
call fcn.18000f490
mov ebx, dword [rsp + 0x30]
cmp ebx, 0x64
jb 0x1800084ee
mov r9, qword [rsp + 0x58]
mov r8, qword [r9]
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.180008e20
mov edx, 0x48
mov rcx, qword [rsp + 0x58]
call fcn.18000f490
mov rcx, qword [rbp + 0x1030]
xor rcx, rsp
call fcn.18000ed70
lea r11, [rsp + 0x1140]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.180013bd8
nop
int3