Function at 0x40742f
Capabilities:
Delete file
Encode data using base64
Get geographical location
Set uefi variable

Disassembly:
push 0xfc
mov eax, 0x43e1dc
call fcn.0042bb26
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x4c], eax
xor ebx, ebx
mov dword [ebp - 4], ebx
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x48], ebx
call fcn.0040965a
test eax, eax
je 0x407484
push 4
lea eax, [ebp - 0x44]
push eax
push 0x20001009
mov esi, 0x400
push esi
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
push 0x20
lea eax, [ebp - 0x9c]
push eax
push 0x58
push esi
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
lea eax, [ebp - 0x98]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x44], esp
push 0x40
push str.nizrprzxz777777_r_t_t_r_r
call fcn.004081ed
lea edi, [ebp - 0x108]
call fcn.00427366
mov byte [ebp - 4], 1
call fcn.00427666
mov byte [ebp - 4], 2
cmp dword [eax + 0x18], 0x10
jb 0x4074c2
mov eax, dword [eax + 4]
jmp 0x4074c5
add eax, 4
push eax
lea ecx, [ebp - 0x30]
call fcn.00403193
push 0
push 1
lea ecx, [ebp - 0x98]
call fcn.004035bd
lea esi, [ebp - 0x108]
mov byte [ebp - 4], 5
call fcn.00404654
cmp dword [ebp - 0x40], 0
je 0x40780a
mov edi, dword [ebp - 0x48]
dec dword [ebp - 0x40]
inc dword [ebp - 0x48]
lea eax, [ebp + 8]
call fcn.004082f1
mov al, byte [eax]
mov byte [ebp + ebx - 0x34], al
inc ebx
mov dword [ebp - 0x38], ebx
cmp ebx, 3
jne 0x4075ff
mov al, byte [ebp - 0x34]
mov cl, byte [ebp - 0x33]
shr al, 2
mov byte [ebp - 0x3c], al
mov al, byte [ebp - 0x34]
and al, bl
shl al, 4
shr cl, 4
add al, cl
mov byte [ebp - 0x3b], al
call fcn.004295cd
cdq
push 0xa
pop ecx
idiv ecx
mov esi, edx
call fcn.004295cd
cdq
push 0xa
pop ecx
idiv ecx
cmp esi, edx
setl al
test al, al
je 0x40756d
movzx eax, al
mov dword [ebp - 0x38], eax
fild dword [ebp - 0x38]
call fcn.004397d0
fstp dword [ebp - 0x38]
fld dword [ebp - 0x38]
jmp 0x40757a
fldz
call fcn.004396a0
fstp dword [ebp - 0x38]
fld dword [ebp - 0x38]
call fcn.004398c0
test eax, eax
je 0x40758d
call fcn.0040535a
call fcn.004053e8
mov al, byte [ebp - 0x33]
mov cl, byte [ebp - 0x32]
and al, 0xf
shl al, 2
shr cl, 6
add al, cl
mov byte [ebp - 0x3a], al
mov al, byte [ebp - 0x32]
and al, 0x3f
mov byte [ebp - 0x39], al
xor esi, esi
movzx edi, byte [ebp + esi - 0x3c]
lea eax, [ebp - 0x30]
call fcn.004082f1
mov al, byte [eax]
mov edi, dword [ebp - 0x4c]
mov byte [ebp - 0x44], al
push dword [ebp - 0x44]
xor ebx, ebx
inc ebx
call fcn.004085fd
inc esi
cmp esi, 4
jl 0x4075aa
and dword [ebp - 0x38], 0
call fcn.004295cd
cdq
push 0x14
pop ecx
idiv ecx
mov edi, edx
inc edi
call fcn.004295cd
cdq
idiv edi
cmp edx, edi
jg 0x4075f7
mov eax, edi
cdq
idiv edi
test edx, edx
je 0x4075fc
call fcn.00405476
mov ebx, dword [ebp - 0x38]
cmp dword [ebp - 0x40], 0
jne 0x4074f6
test ebx, ebx
je 0x40780a
push 3
pop edi
cmp ebx, edi
jge 0x40765c
sub edi, ebx
push edi
xor esi, esi
lea eax, [ebp + ebx - 0x34]
push esi
push eax
call fcn.00431920
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
push esi
shr ebx, 0x18
call fcn.0042a8e7
imul eax, eax, 0x63
pop ecx
cmp ebx, eax
jbe 0x407659
push esi
push esi
push esi
push esi
push esi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
call fcn.00426054
call fcn.0040556e
dec edi
jne 0x40762b
mov bl, byte [ebp - 0x34]
mov al, bl
shr al, 2
mov byte [ebp - 0x3c], al
call fcn.004295cd
cdq
push 0x14
pop ecx
idiv ecx
mov edi, edx
inc edi
call fcn.004295cd
cdq
idiv edi
cmp edx, edi
jg 0x40768a
mov eax, edi
cdq
idiv edi
test edx, edx
je 0x4076e4
push 4
pop ecx
push 5
pop esi
mov dword [ebp - 0x60], 1
mov dword [ebp - 0x5c], 2
mov dword [ebp - 0x58], 3
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x74], 6
mov dword [ebp - 0x70], 7
mov dword [ebp - 0x6c], 8
mov dword [ebp - 0x68], 9
mov dword [ebp - 0x64], 0xa
xor eax, eax
add eax, ecx
cmp eax, 0x14
jl 0x4076d0
mov edi, esi
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
dec edi
jne 0x4076d9
jmp 0x4076e7
push 5
pop esi
mov al, byte [ebp - 0x33]
and bl, 3
shr al, 4
shl bl, 4
add bl, al
mov byte [ebp - 0x3b], bl
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
push 0
shr edi, 0x18
call fcn.0042a8e7
imul eax, eax, 0x63
pop ecx
cmp edi, eax
jbe 0x40771a
push 0
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 4], esi
mov al, byte [ebp - 0x33]
mov bl, byte [ebp - 0x32]
and al, 0xf
mov cl, bl
shl al, 2
shr cl, 6
add al, cl
mov byte [ebp - 0x3a], al
call fcn.004295cd
cdq
push 0x14
pop ecx
idiv ecx
mov esi, edx
inc esi
call fcn.004295cd
cdq
idiv esi
cmp edx, esi
jg 0x407755
mov eax, esi
cdq
idiv esi
test edx, edx
je 0x40775f
call fcn.0040b4a9
call fcn.0040560e
xor esi, esi
and bl, 0x3f
push esi
mov byte [ebp - 0x39], bl
call fcn.0042a8e7
mov eax, dword [ebp - 0x38]
inc eax
cmp eax, esi
pop ecx
mov dword [ebp - 0x48], eax
jle 0x4077ef
movzx edi, byte [ebp + esi - 0x3c]
lea eax, [ebp - 0x30]
call fcn.004082f1
mov al, byte [eax]
mov edi, dword [ebp - 0x4c]
mov byte [ebp - 0x44], al
push dword [ebp - 0x44]
xor ebx, ebx
inc ebx
call fcn.004085fd
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x40], eax
fild dword [ebp - 0x40]
test eax, eax
jge 0x4077af
fadd qword [0x44b078]
call fcn.004396a0
fstp qword [ebp - 0x7c]
xor edi, edi
push edi
call fcn.0042a8e7
mov dword [ebp - 0x40], eax
fild dword [ebp - 0x40]
pop ecx
test eax, eax
jge 0x4077d0
fadd qword [0x44b078]
fcomp qword [ebp - 0x7c]
fnstsw ax
test ah, 5
jp 0x4077e9
push edi
push edi
push edi
push edi
call dword [sym.imp.KERNEL32.dll_SetFirmwareEnvironmentVariableA]
call fcn.00426054
inc esi
cmp esi, dword [ebp - 0x48]
jl 0x407779
push 3
pop esi
cmp dword [ebp - 0x38], esi
jge 0x40780a
sub esi, dword [ebp - 0x38]
mov edi, dword [ebp - 0x4c]
xor ebx, ebx
push 0x3d
inc ebx
call fcn.004085fd
dec esi
jne 0x4077fa
push 0
push 1
lea ecx, [ebp - 0x30]
call fcn.004035bd
push 0
push 1
lea ecx, [ebp + 8]
call fcn.004035bd
xor eax, eax
call fcn.0042bba9
ret 0x20