Function at 0x4d05e0
Capabilities:
Execute anti-debugging instructions
Get system information on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x314
mov eax, dword [0x62d040]
xor eax, esp
mov dword [esp + 0x310], eax
mov eax, dword [0x5cf234]
push ebx
mov dword [esp + 0xd0], eax
mov eax, dword [0x5cf238]
push esi
mov dword [esp + 0xd8], eax
mov eax, dword [0x5cf23c]
push edi
mov dword [esp + 0xe0], eax
mov eax, dword [0x5cf240]
push 0x2e
mov dword [esp + 0xe8], eax
lea eax, [esp + 0xec]
push 0
push eax
call fcn.00580ff0
add esp, 0xc
cmp dword [0x6358ec], 0
je 0x4d066a
cmp dword [0x635824], 0
je 0x4d066a
lea ecx, [esp + 0x18]
call fcn.004d11e0
lea esp, [esp]
test al, al
je 0x4d066a
fld qword [esp + 0x18]
jmp 0x4d068c
mov eax, dword [0x6358cc]
mov eax, dword [eax + 8]
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
test eax, eax
jns 0x4d0684
fadd qword [0x61c8f0]
fstp qword [esp + 0x18]
fld qword [esp + 0x18]
fdiv qword [0x61c8c0]
mov ax, word [0x6319a4]
mov word [esp + 0x64], ax
mov eax, 0x25
push 0
mov word [esp + 0x8c], ax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 2
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x4b
push eax
mov dword [esp + 0x8c], 0
fstp qword [esp + 0x2c]
fld dword [0x633f3c]
fadd dword [0x633f40]
fmul qword [0x61c8a0]
fstp qword [esp + 0x84]
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0702
lea eax, [esp + 0x118]
jmp 0x4d0719
push 0
push 2
lea eax, [esp + 0x68]
push eax
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x6358b4]
call dword [sym.imp.USER32.dll_SendMessageW]
movzx eax, word [0x6319a4]
fld qword [esp + 0x18]
mov word [esp + 0x64], ax
mov eax, dword [0x635828]
mov dword [esp + 0x60], 0x4b
mov dword [esp + 0x78], 1
mov dword [esp + 0x88], 6
mov dword [esp + 0x8c], 0x61116c
mov dword [esp + 0x90], 0x4b
fstp qword [esp + 0x70]
fild dword [0x635828]
test eax, eax
jns 0x4d0784
fadd qword [0x61c8f0]
fstp qword ds:[esp + 0x18]
fld qword [esp + 0x18]
fdiv qword [0x61c8c0]
movzx eax, word [0x6319a4]
push 0
mov word [esp + 0x98], ax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 4
lea eax, [esp + 0x70]
mov dword [esp + 0xb8], 1
push eax
mov dword [esp + 0xcc], 8
mov dword [esp + 0xd0], str._GHz
fstp qword [esp + 0xb4]
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d07f2
lea eax, [esp + 0x118]
jmp 0x4d080e
push 0
push 4
lea eax, [esp + 0x68]
push eax
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x6358f0]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x633610]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0863
lea eax, [esp + 0x118]
jmp 0x4d0893
mov eax, dword [0x633610]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x635924]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x633618]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
lea ecx, [ecx]
test al, al
je 0x4d08ed
lea eax, [esp + 0x118]
jmp 0x4d091d
mov eax, dword [0x633618]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x635848]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x633614]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0972
lea eax, [esp + 0x118]
jmp 0x4d09a2
mov eax, dword [0x633614]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x63580c]
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0x30
lea eax, [esp + 0x28]
push eax
push 3
call dword [sym.imp.ntdll.dll_NtQuerySystemInformation]
test eax, eax
js 0x4d09f0
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0xd8]
sub ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
sbb eax, dword [esp + 0x24]
push 0
push ecx
push eax
push ecx
mov ecx, 2
call fcn.00501720
lea eax, [esp + 0xd8]
push eax
push 0
push 0xc
push dword [0x635814]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x6358b8], 1
jbe 0x4d0a8b
mov eax, dword [0x6358c4]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0a56
lea eax, [esp + 0x118]
push eax
jmp 0x4d0a90
mov eax, dword [0x6358c4]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
jmp 0x4d0a90
push 0x600670
push 0
push 0xc
push dword [0x6358d0]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x6358b8], 1
jbe 0x4d0b2b
mov eax, dword [0x63581c]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0af4
lea eax, [esp + 0x118]
push eax
jmp 0x4d0b30
mov eax, dword [0x63581c]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
jmp 0x4d0b30
push 0x600670
push 0
push 0xc
push dword [0x63583c]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x6358b8], 1
jbe 0x4d0bcb
mov eax, dword [0x635900]
mov ecx, dword [0x635904]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], ecx
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0b96
lea eax, [esp + 0x118]
push eax
jmp 0x4d0bd0
mov eax, dword [0x635900]
mov ecx, dword [0x635904]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], ecx
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
jmp 0x4d0bd0
push 0x600670
push 0
push 0xc
push dword [0x6358e0]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x6358b8], 1
jbe 0x4d0c6b
mov eax, dword [0x6358e8]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0c34
lea eax, [esp + 0x118]
push eax
jmp 0x4d0c70
mov eax, dword [0x6358e8]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
jmp 0x4d0c70
push 0x600670
push 0
push 0xc
push dword [0x63592c]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x635854]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
lea ecx, [ecx]
test al, al
je 0x4d0ccd
lea eax, [esp + 0x118]
jmp 0x4d0cfd
mov eax, dword [0x635854]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x635840]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x635860]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0d52
lea eax, [esp + 0x118]
jmp 0x4d0d82
mov eax, dword [0x635860]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x6358dc]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x63585c]
push 0
mov dword [esp + 0x74], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 1
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x88], 0
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0dd7
lea eax, [esp + 0x118]
jmp 0x4d0e08
mov eax, dword [0x63585c]
push 0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x24]
push 1
push eax
mov dword [esp + 0x2c], 0x10009
mov dword [esp + 0x40], 0
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x635928]
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, ds:[esp + 0x58]
push eax
call dword [sym.imp.ntdll.dll_RtlQueryPerformanceCounter]
xor ecx, ecx
lea eax, [esp + 0x14]
lock or dword [eax], ecx
rdtsc
mov dword [esp + 0xc], eax
mov edi, edx
lea eax, [esp + 0x14]
lock or dword [eax], ecx
xor eax, eax
push ebx
cpuid
mov esi, ebx
pop ebx
nop
lea ebx, [esp + 0x20]
mov dword [ebx], eax
lea eax, [esp + 0x14]
mov dword [ebx + 4], esi
mov dword [ebx + 8], ecx
xor ecx, ecx
mov dword [ebx + 0xc], edx
lock or dword [eax], ecx
rdtsc
mov dword [esp + 0x10], eax
lea eax, [esp + 0x18]
mov dword [esp + 0x14], edx
lock or dword [eax], ecx
lea eax, [esp + 0x50]
push eax
call dword [sym.imp.ntdll.dll_RtlQueryPerformanceCounter]
mov esi, dword [esp + 0x50]
sub esi, dword [esp + 0x58]
mov ebx, dword [esp + 0x54]
mov eax, dword [esp + 0xc]
sbb ebx, dword [esp + 0x5c]
or eax, edi
jne 0x4d0eb0
mov eax, dword [esp + 0x10]
or eax, dword [esp + 0x14]
jne 0x4d0eb0
lea ecx, [ecx]
cmp dword [esp + 0x20], eax
jne 0x4d0eb0
cmp dword [esp + 0x2c], eax
jne 0x4d0eb0
xor esi, esi
xor ebx, ebx
mov eax, dword [0x633a28]
push 0
mov dword [esp + 0xa4], eax
lea eax, [esp + 0x11c]
push 0x200
push eax
push 3
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0x10009
push eax
mov dword [esp + 0x84], esi
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], 1
mov dword [esp + 0x9c], 6
mov dword [esp + 0xa0], 0x611180
mov dword [esp + 0xa4], 0x10009
mov dword [esp + 0xb8], 0
call sym.SystemInformer.exe_PhFormatToBuffer
test al, al
je 0x4d0f32
lea eax, [esp + 0x118]
jmp 0x4d0f59
push 0
push 1
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0x10009
push eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ebx
call sym.SystemInformer.exe_PhFormat
push eax
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov eax, dword [eax + 4]
push eax
push 0
push 0xc
push dword [0x635820]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [esp + 0x31c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0057ee0f
mov esp, ebp
pop ebp
ret