Function at 0x1009f120
Capabilities:
Get system information on windows

Disassembly:
sub esp, 0x74
push ebx
push esi
push edi
mov ecx, ecx
push eax
pop eax
push ecx
pop ecx
mov bh, bh
xchg ebx, eax
xchg ebx, eax
mov bh, bh
mov dh, dh
mov cl, cl
mov eax, eax
push ecx
pop ecx
nop
push ecx
pop ecx
lea eax, [esp + 0x5c]
push eax
call dword [sym.imp.KERNEL32.DLL_GetSystemInfo]
mov edx, edx
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 bh, bh
mov edi, dword [esp + 0x84]
push 0
push 0
push edi
push 0
push 0x400
call fcn.100682b0
add esp, 0x14
mov esi, eax
mov esi, esi
test esi, esi
jne 0x1009f192
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 0x1009f1cc
push esi
call fcn.1004bef0
add esp, 4
push edx
pop edx
pop ebp
pop edi
pop esi
mov eax, 0xfa
pop ebx
add esp, 0x74
ret
mov edi, edi
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x50], ecx
mov esi, esi
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x54], edx
mov ch, ch
mov edi, edi
mov eax, dword [esp + 0x18]
mov dword [esp + 0x48], eax
mov esi, esi
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x4c], ecx
mov ch, ch
mov edi, edi
mov edx, dword [esp + 0x20]
mov dword [esp + 0x58], edx
mov esi, esi
mov eax, dword [esp + 0x24]
mov dword [esp + 0x5c], eax
mov ch, ch
mov dh, dh
xchg ebx, eax
xchg ebx, eax
push esi
call fcn.1004bef0
add esp, 4
mov al, al
push 0x3e8
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov ah, ah
push 0
push 0
push edi
push 0
push 0x400
call fcn.100682b0
mov esi, eax
add esp, 0x14
mov dword [esp + 0x10], esi
push eax
pop eax
test esi, esi
je 0x1009f270
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 0x1009f27d
push esi
call fcn.1004bef0
add esp, 4
mov dh, dh
pop ebp
pop edi
pop esi
mov eax, 0xfa
pop ebx
add esp, 0x74
ret
lea edx, [esp + 0x20]
push edx
call ebx
mov ebp, ebp
mov edi, edi
mov eax, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov esi, esi
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x44], ecx
mov ch, ch
mov edi, edi
mov esi, dword [esp + 0x18]
mov esi, esi
mov edi, dword [esp + 0x1c]
mov ch, ch
mov edi, edi
mov ebx, dword [esp + 0x20]
mov esi, esi
mov ebp, dword [esp + 0x24]
mov ch, ch
mov edx, dword [esp + 0x10]
push edx
call fcn.1004bef0
add esp, 4
mov cl, cl
mov dh, dh
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.10119da0
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.10119da0
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 [0x10181840]
fldcw word [esp + 4]
fistp qword [esp + 0x48]
mov eax, dword [esp + 0x48]
fldcw word [esp]
add esp, 0x74
ret