Function at 0x1004c100
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2c
cmp dword [0x101012e4], 0
push esi
je 0x1004c125
push str.sys_page_size__0
push str.assertion_failed:__s
call fcn.1004d580
add esp, 8
lea eax, [esp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov ecx, dword [esp + 0x10]
mov dword [0x101012e4], ecx
cmp ecx, 0x200
jae 0x1004c15a
push str.sys_page_size___2__LARGEALIGNMENT
push str.assertion_failed:__s
call fcn.1004d580
mov ecx, dword [0x101012e4]
add esp, 8
lea eax, [ecx - 1]
test ecx, eax
je 0x1004c173
push str._sys_page_size___sys_page_size___1____0
push str.assertion_failed:__s
call fcn.1004d580
add esp, 8
mov ecx, 0x101012f8
call fcn.1004c070
cmp dword [0x101012f8], 0
mov eax, dword [0x101012e4]
mov dword [0x101012f0], eax
mov dword [0x101012f4], eax
je 0x1004c1b8
mov dword [0x1010131c], 0
mov dword [0x10101318], 0
mov dword [0x10101334], 0
jmp 0x1004c310
lea ecx, [eax - 0x18]
shr ecx, 6
cmp ecx, 0x3fffffff
jbe 0x1004c1e4
push 4
push ecx
push str.......glibgmem.c:421
push str._s:_overflow_allocating__u_u_bytes
push 4
push str.Glib
call sym.glib_2.dll_g_log
add esp, 0x18
jmp 0x1004c1e2
lea esi, [ecx*4]
test esi, esi
je 0x1004c224
push esi
push 1
call dword [0x100ffd88]
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x1004c208
mov eax, dword [0x101012f4]
jmp 0x1004c226
push esi
push str.......glibgmem.c:195
push str._s:_failed_to_allocate__u_bytes
push 4
push str.Glib
call sym.glib_2.dll_g_log
add esp, 0x14
jmp 0x1004c222
xor ecx, ecx
mov dword [0x1010131c], ecx
lea ecx, [eax - 0x18]
shr ecx, 6
cmp ecx, 0x3fffffff
jbe 0x1004c258
push 4
push ecx
push str.......glibgmem.c:421
push str._s:_overflow_allocating__u_u_bytes
push 4
push str.Glib
call sym.glib_2.dll_g_log
add esp, 0x18
jmp 0x1004c256
lea esi, [ecx*4]
test esi, esi
je 0x1004c298
push esi
push 1
call dword [0x100ffd88]
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x1004c27c
mov eax, dword [0x101012f4]
jmp 0x1004c29a
push esi
push str.......glibgmem.c:195
push str._s:_failed_to_allocate__u_bytes
push 4
push str.Glib
call sym.glib_2.dll_g_log
add esp, 0x14
jmp 0x1004c296
xor ecx, ecx
add eax, 0xffffffe8
shr eax, 6
mov dword [0x10101318], ecx
cmp eax, 0x3fffffff
jbe 0x1004c2d2
push 4
push eax
push str.......glibgmem.c:421
push str._s:_overflow_allocating__u_u_bytes
push 4
push str.Glib
call sym.glib_2.dll_g_log
add esp, 0x18
lea esp, [esp]
jmp 0x1004c2d0
lea esi, [eax*4]
test esi, esi
je 0x1004c309
push esi
push 1
call dword [0x100ffd88]
add esp, 8
test eax, eax
jne 0x1004c30b
push esi
push str.......glibgmem.c:195
push str._s:_failed_to_allocate__u_bytes
push 4
push str.Glib
call sym.glib_2.dll_g_log
add esp, 0x14
jmp 0x1004c307
xor eax, eax
mov dword [0x10101334], eax
push 0x10101310
call dword [0x101015d8]
push 0x1010132c
mov dword [0x10101320], 0
mov dword [0x10101324], 7
mov dword [0x10101328], 0
call dword [0x101015d8]
mov eax, dword [0x10101324]
mov dword [0x10101338], 0
cmp eax, 7
jb 0x1004c396
lea eax, [esp + 4]
push eax
call sym.glib_2.dll_g_get_current_time
mov eax, 0x10624dd3
imul dword [esp + 0xc]
mov eax, dword [esp + 8]
imul eax, eax, 0x3e8
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
add esp, 4
add ecx, eax
mov dword [0x10101328], ecx
mov dword [0x10101324], 0
jmp 0x1004c39c
inc eax
mov dword [0x10101324], eax
mov eax, dword [0x101012f4]
add eax, 0xffffffe8
shr eax, 3
cmp dword [0x101012f8], 0
mov dword [0x1010130c], eax
jne 0x1004c3be
cmp dword [0x101012fc], 0
je 0x1004c3c8
mov dword [0x1010130c], 0
pop esi
mov esp, ebp
pop ebp
ret