Function at 0x427e50
Capabilities:
Check for software breakpoints
Get geographical location
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd20
mov eax, dword [0x42d110]
xor eax, ebp
mov dword [ebp - 8], eax
push esi
mov dword [ebp - 4], 0
jmp 0x427e76
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x365ea9e0
jge 0x427ec0
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0x60]
push edx
lea eax, [ebp - 0x58]
push eax
call sub.KERNEL32.dll_GetSystemTimes
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasesW]
cmp dword [ebp - 4], 0x176afc
jle 0x427ebe
cmp dword [0x42f734], 0xa
jne 0x427ebc
push 0
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
jmp 0x427ec0
jmp 0x427e6d
mov dword [ebp - 0x64], 0
jmp 0x427ed2
mov ecx, dword [ebp - 0x64]
add ecx, 1
mov dword [ebp - 0x64], ecx
cmp dword [ebp - 0x64], 0x5f6c74
jge 0x427ef2
cmp dword [ebp - 0x64], 0x562d05
jne 0x427ef0
mov edx, dword [0x42dd98]
mov dword [0x42fabc], edx
jmp 0x427ec9
cmp dword [0x42f734], 0x7c
jne 0x427f5f
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x88]
push ecx
lea edx, [ebp - 0x78]
push edx
push 0
call dword [sym.imp.ole32.dll_CreateDataCache]
push 0
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
push 0
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [0x42f734], 0x11
jne 0x427f49
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_GetBoundsRect]
push 0
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_ObjectPrivilegeAuditAlarmA]
cmp dword [0x42f734], 0x2d
jne 0x427f5f
lea eax, [ebp - 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_ResetEvent]
cmp dword [0x42f734], 0x110a
jne 0x428063
mov dword [0x42f720], 0
mov dword [0x42f724], 0
cmp dword [0x42f734], 0xcc
jne 0x427fa1
push 0
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [0x42ef00], 0x14
push 0
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CompareStringA]
push 0
lea ecx, [ebp - 0x4a0]
push ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
push 0
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CompareStringA]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_HeapCompact]
push 0
push 0
call fcn.0040232a
add esp, 8
mov eax, 0x42b918
lea ecx, [ebp - 0xcc8]
call fcn.004010d0
push 0
push 0
call fcn.0040232a
add esp, 8
mov edx, dword [0x42b918]
mov dword [ebp - 0xca8], edx
push 0x7fc
push 0
lea eax, [ebp - 0xca4]
push eax
call fcn.004047b0
add esp, 0xc
lea ecx, [ebp - 0x4a8]
mov dword [ebp - 0x4a4], ecx
push 0
push 0
call fcn.0040232a
add esp, 8
push 0
call fcn.00402491
add esp, 4
push 0
call fcn.00402031
add esp, 4
lea esi, [ebp - 0xcc8]
call fcn.00401110
call fcn.004272a0
mov dword [ebp - 0xccc], 0
jmp 0x428083
mov edx, dword [ebp - 0xccc]
add edx, 1
mov dword [ebp - 0xccc], edx
mov eax, dword [ebp - 0xccc]
cmp eax, dword [0x42f734]
jae 0x4280de
mov ecx, dword [0x42fabc]
mov dword [ebp - 0xcd0], ecx
mov eax, 0xa231
add dword [ebp - 0xcd0], eax
mov edx, dword [0x42f18c]
add edx, dword [ebp - 0xccc]
mov eax, dword [ebp - 0xcd0]
add eax, dword [ebp - 0xccc]
mov cl, byte [eax]
mov byte [edx], cl
cmp dword [0x42f734], 0x5ab
jne 0x4280dc
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_VirtualFree]
jmp 0x428074
call fcn.00427bd0
call fcn.004272d0
mov eax, 0x42dda0
call fcn.00427e10
mov dword [ebp - 0xcd4], 0
jmp 0x42810d
mov edx, dword [ebp - 0xcd4]
add edx, 1
mov dword [ebp - 0xcd4], edx
cmp dword [ebp - 0xcd4], 0x15a63d
jge 0x428136
cmp dword [ebp - 0xcd4], 0xbd9cb
jne 0x428134
mov eax, dword [0x42f18c]
add eax, 0
mov dword [0x42f18c], eax
jmp 0x4280fe
jmp dword [0x42f18c]