Function at 0x100867a0
Capabilities:
Get system information on windows

Disassembly:
sub esp, 0x74
push ebx
push esi
push edi
mov edi, edi
nop
push ecx
pop ecx
push edx
pop edx
mov dl, dl
push ebx
pop ebx
mov dh, dh
mov ebx, ebx
mov bl, bl
mov eax, eax
push edx
pop edx
push ecx
pop ecx
lea eax, [esp + 0x5c]
push eax
call dword [sym.imp.KERNEL32.DLL_GetSystemInfo]
mov bl, bl
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x10], ecx
mov edx, edx
mov ebx, dword [sym.imp.KERNEL32.DLL_GetSystemTimeAsFileTime]
lea edx, [esp + 0x1c]
push edx
call ebx
mov ah, ah
mov edi, dword [esp + 0x84]
push 0
push 0
push edi
push 0
push 0x400
call fcn.10052640
add esp, 0x14
mov esi, eax
mov ch, ch
test esi, esi
jne 0x10086812
pop edi
pop esi
mov eax, 0xfa
pop ebx
add esp, 0x74
ret
push ebp
mov ebp, dword [sym.imp.KERNEL32.DLL_GetProcessTimes]
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x3c]
push eax
push esi
call ebp
test eax, eax
jne 0x1008684c
push esi
call fcn.10036e00
add esp, 4
mov eax, eax
pop ebp
pop edi
pop esi
mov eax, 0xfa
pop ebx
add esp, 0x74
ret
mov dh, dh
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x50], ecx
mov dl, dl
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x54], edx
mov eax, eax
mov dh, dh
mov eax, dword [esp + 0x18]
mov dword [esp + 0x48], eax
mov dl, dl
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x4c], ecx
mov eax, eax
mov dh, dh
mov edx, dword [esp + 0x20]
mov dword [esp + 0x58], edx
mov dl, dl
mov eax, dword [esp + 0x24]
mov dword [esp + 0x5c], eax
mov eax, eax
push ecx
pop ecx
xchg ebx, eax
xchg ebx, eax
push esi
call fcn.10036e00
add esp, 4
mov bl, bl
push 0x3e8
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov ah, ah
push 0
push 0
push edi
push 0
push 0x400
call fcn.10052640
mov esi, eax
add esp, 0x14
mov dword [esp + 0x10], esi
push edx
pop edx
test esi, esi
je 0x100868f0
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x3c]
push ecx
push esi
call ebp
test eax, eax
jne 0x100868fd
push esi
call fcn.10036e00
add esp, 4
mov ebp, ebp
pop ebp
pop edi
pop esi
mov eax, 0xfa
pop ebx
add esp, 0x74
ret
lea edx, [esp + 0x20]
push edx
call ebx
mov dh, dh
mov dh, dh
mov eax, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov dl, dl
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x44], ecx
mov eax, eax
mov dh, dh
mov esi, dword [esp + 0x18]
mov dl, dl
mov edi, dword [esp + 0x1c]
mov eax, eax
mov dh, dh
mov ebx, dword [esp + 0x20]
mov dl, dl
mov ebp, dword [esp + 0x24]
mov eax, eax
mov edx, dword [esp + 0x10]
push edx
call fcn.10036e00
add esp, 4
mov dl, dl
mov bl, bl
mov eax, dword [esp + 0x14]
add esi, dword [esp + 0x40]
cdq
adc edi, dword [esp + 0x44]
push edx
push eax
push edi
push esi
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], edx
call fcn.100f7760
mov ecx, dword [esp + 0x4c]
mov esi, eax
mov eax, dword [esp + 0x48]
add eax, dword [esp + 0x50]
mov edi, edx
mov edx, dword [esp + 0x3c]
adc ecx, dword [esp + 0x54]
push edx
mov edx, dword [esp + 0x3c]
push edx
push ecx
push eax
call fcn.100f7760
fnstcw word [esp + 0x10]
sub esi, eax
sbb edi, edx
sub ebx, dword [esp + 0x58]
mov dword [esp + 0x50], esi
sbb ebp, dword [esp + 0x5c]
mov dword [esp + 0x54], edi
fild qword [esp + 0x50]
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebp
fild qword [esp + 0x58]
movzx eax, word [esp + 0x10]
or eax, 0xc00
mov dword [esp + 0x14], eax
fdivp st(1)
pop ebp
pop edi
pop esi
pop ebx
fmul qword [0x1015a7f8]
fldcw word [esp + 4]
fistp qword [esp + 0x48]
mov eax, dword [esp + 0x48]
fldcw word [esp]
add esp, 0x74
ret