Function at 0x4185c0
Capabilities:
Check for debugger via api
Get uefi variable
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xac
mov dword [ebp - 0x18], 0x6e27
mov dword [ebp - 0x34], 0x4286
mov dword [ebp - 0x24], 0x8751
mov dword [ebp - 0x48], 0x9b89
mov dword [ebp - 0x1c], 0x1f1d
mov dword [ebp - 0x10], 0x15ba9
mov dword [ebp - 0x28], 0x30ca
mov dword [ebp - 8], 0x17138
mov dword [ebp - 0x84], 0x15ec2
mov dword [ebp - 0x20], 0x10faa
mov dword [ebp - 4], 0xe213
mov dword [ebp - 0x50], 0x9f25
mov dword [ebp - 0x5c], 0x8c72
mov dword [ebp - 0x14], 0x16d2f
mov dword [ebp - 0x98], 0x33a0
mov dword [ebp - 0x3c], 0xfa25
mov dword [ebp - 0x78], 0xd97c
mov dword [ebp - 0x58], 0x17c03
mov dword [ebp - 0xc], 0x10cb3
mov dword [ebp - 0x2c], 0x962b
mov dword [ebp - 0x40], 0xb83f
mov dword [ebp - 0x30], 0x1010c
mov dword [ebp - 0x8c], 0xd461
mov dword [ebp - 0x38], 0x5dd4
mov dword [ebp - 0x9c], 0x5dc0
mov eax, dword [ebp - 0x84]
sub eax, 0xb712
push eax
mov ecx, dword [ebp - 0x38]
add ecx, 0xa235
push ecx
mov edx, dword [ebp - 0x10]
sub edx, 0x15a0
push edx
mov eax, dword [ebp - 0x30]
sub eax, 0xd3f4
push eax
mov ecx, dword [ebp - 0x40]
sub ecx, 0x514e
push ecx
mov edx, dword [ebp - 0x18]
add edx, 0xc68d
push edx
mov eax, dword [ebp - 0x38]
add eax, 0x11a36
push eax
mov ecx, dword [ebp - 0x50]
sub ecx, 0x1474
push ecx
mov edx, dword [ebp - 0x18]
add edx, 0xd1aa
push edx
mov eax, dword [ebp - 0x58]
sub eax, 0x747a
push eax
call fcn.00415f80
add esp, 0x28
mov dword [ebp - 0x44], 0
jmp 0x418701
mov ecx, dword [ebp - 0x44]
add ecx, 1
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp + 0x20]
sub edx, 0x1bee
cmp dword [ebp - 0x44], edx
jge 0x4188cd
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x28]
jge 0x418724
mov dword [ebp - 0x64], 1
jmp 0x41872b
mov dword [ebp - 0x64], 0
mov ecx, dword [ebp + 8]
cmp ecx, dword [ebp - 0x10]
jge 0x41873c
mov dword [ebp - 0x68], 1
jmp 0x418743
mov dword [ebp - 0x68], 0
mov edx, dword [ebp - 0x64]
and edx, dword [ebp - 0x68]
je 0x4188c8
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp + 0x1c]
jne 0x4188c8
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0x48]
jne 0x4188c8
mov edx, dword [ebp - 0x18]
cmp edx, dword [ebp - 0x48]
jne 0x4188c8
mov eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x40]
mov ecx, dword [ebp + 8]
sub ecx, dword [ebp - 0x1c]
or eax, ecx
je 0x418892
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp + 0x14]
jne 0x418892
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x20]
jne 0x418892
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x34]
jne 0x418892
push 0x4935
push 0x55dc
push 0x4b4a
push 0x63da
push 0x1017f
push 0xc8a5
push 0x2d
push 0x585c
push 0x4a28
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryA]
add esp, 0x24
mov edx, dword [ebp - 0x34]
cmp edx, dword [ebp + 0xc]
jge 0x4187ef
mov dword [ebp - 0x6c], 1
jmp 0x4187f6
mov dword [ebp - 0x6c], 0
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, dword [ebp - 0xc]
jge 0x418810
mov dword [ebp - 0x70], 1
jmp 0x418817
mov dword [ebp - 0x70], 0
mov edx, dword [ebp + 0x1c]
add edx, 1
mov dword [ebp + 0x1c], edx
mov eax, dword [ebp + 0x1c]
imul eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x24]
jge 0x418835
mov dword [ebp - 0x74], 1
jmp 0x41883c
mov dword [ebp - 0x74], 0
mov ecx, dword [ebp - 0x6c]
and ecx, dword [ebp - 0x70]
and ecx, dword [ebp - 0x74]
je 0x418892
mov edx, dword [ebp - 0x1c]
add edx, 1
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 8]
jge 0x418892
mov ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 8]
jne 0x418892
mov edx, dword [ebp + 0x14]
cmp edx, dword [ebp - 0x20]
jne 0x418892
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp + 0x18]
jne 0x418892
mov ecx, dword [ebp - 0x78]
cmp ecx, dword [ebp - 4]
jne 0x418892
mov edx, dword [ebp - 0x50]
cmp edx, dword [ebp + 0x1c]
jne 0x418892
call dword [sym.imp.KERNEL32.dll_GetFirmwareEnvironmentVariableW]
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
push 0x4d07
push 0x14207
push 0x12c12
push 0x138a6
push 0x515d
push 0x2f2f
push 0x1556b
push 0x459b
push 0x6f11
call dword [sym.imp.KERNEL32.dll_ConvertThreadToFiber]
add esp, 0x24
jmp 0x4186f8
mov dword [ebp - 0x4c], 0
jmp 0x4188df
mov ecx, dword [ebp - 0x4c]
add ecx, 1
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x5c]
sub edx, 0x8c71
cmp dword [ebp - 0x4c], edx
jge 0x4189d4
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x58]
jge 0x418902
mov dword [ebp - 0x7c], 1
jmp 0x418909
mov dword [ebp - 0x7c], 0
mov ecx, dword [ebp - 0x78]
add ecx, dword [ebp - 0x14]
cmp ecx, dword [ebp - 0x18]
jge 0x41891d
mov dword [ebp - 0x80], 1
jmp 0x418924
mov dword [ebp - 0x80], 0
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x30]
or edx, dword [ebp - 0x7c]
or edx, dword [ebp - 0x80]
je 0x4189cf
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x24]
jne 0x4189cf
mov ecx, dword [ebp - 0x50]
cmp ecx, dword [ebp - 4]
jne 0x4189cf
mov edx, dword [ebp - 4]
cmp edx, dword [ebp + 0x14]
jne 0x4189cf
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
mov eax, dword [ebp - 4]
sub eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x2c]
sub ecx, 1
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0x2c]
cmp edx, dword [ebp - 0x1c]
jge 0x4189cf
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp + 8]
jne 0x4189cf
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x20]
jne 0x4189cf
mov edx, dword [ebp - 0x14]
cmp edx, dword [ebp - 0x3c]
jne 0x4189cf
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x34]
jne 0x4189cf
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x28]
jne 0x4189cf
mov edx, dword [ebp + 8]
add edx, 1
mov dword [ebp + 8], edx
push 0x15059
push 0x141c1
push 0x171e9
push 0x1425c
push 0xe4af
call dword [sym.imp.KERNEL32.dll_CheckRemoteDebuggerPresent]
add esp, 0x14
jmp 0x4188d6
mov dword [ebp - 0x54], 0
jmp 0x4189e6
mov eax, dword [ebp - 0x54]
add eax, 1
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x20]
sub ecx, 0x10fa9
cmp dword [ebp - 0x54], ecx
jge 0x418b76
mov edx, dword [ebp - 0x24]
imul edx, dword [ebp - 4]
cmp edx, dword [ebp - 0x9c]
jge 0x418a13
mov dword [ebp - 0x88], 1
jmp 0x418a1d
mov dword [ebp - 0x88], 0
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x84]
or eax, dword [ebp - 0x88]
je 0x418b71
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp - 0x38]
jne 0x418b71
mov edx, dword [ebp - 0x5c]
cmp edx, dword [ebp - 0x58]
jne 0x418b71
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x14]
xor ecx, dword [ebp - 8]
je 0x418b71
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp + 8]
jne 0x418b71
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x8c]
jne 0x418b71
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 4]
jne 0x418b71
push 0x1786d
push 0x7a1b
push 0x15a0e
push 0xcdce
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
add esp, 0x10
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0xa0], edx
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0x28]
add ecx, 1
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0xa0]
cmp edx, dword [ebp - 0xa4]
jge 0x418ad8
mov dword [ebp - 0x90], 1
jmp 0x418ae2
mov dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x2c]
and eax, dword [ebp + 0x18]
mov dword [ebp - 0xa8], eax
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0xac], ecx
mov edx, dword [ebp + 0x18]
add edx, 1
mov dword [ebp + 0x18], edx
mov eax, dword [ebp - 0xa8]
cmp eax, dword [ebp - 0xac]
jge 0x418b1a
mov dword [ebp - 0x94], 1
jmp 0x418b24
mov dword [ebp - 0x94], 0
mov ecx, dword [ebp + 8]
or ecx, dword [ebp - 0x8c]
and ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x90]
and edx, dword [ebp - 0x94]
or ecx, edx
je 0x418b54
mov eax, dword [ebp - 0x40]
and eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 0x30]
jge 0x418b54
mov ecx, dword [ebp - 0xc]
sub ecx, 1
mov dword [ebp - 0xc], ecx
push 0x16a0
push 0x5fd1
push 0xf45a
push 0xa17f
call dword [sym.imp.KERNEL32.dll_ConvertDefaultLocale]
add esp, 0x10
jmp 0x4189dd
mov dword [ebp - 0x60], 0
jmp 0x418b88
mov edx, dword [ebp - 0x60]
add edx, 1
mov dword [ebp - 0x60], edx
mov eax, dword [ebp + 0x1c]
sub eax, 0x11741
cmp dword [ebp - 0x60], eax
jge 0x418ba0
mov ecx, dword [ebp + 0x14]
add ecx, 1
mov dword [ebp + 0x14], ecx
jmp 0x418b7f
mov esp, ebp
pop ebp
ret