Function at 0x1001e967
Capabilities:
Get system information on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10087523
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xa0
push ebx
push esi
push edi
mov dword [esp + 0x30], edx
mov edi, ecx
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x6c]
mov dword [esp + 0x58], 0xac12
push eax
lea eax, [esp + 0x58]
mov dword [esp + 0x70], 0xfffffffd
push eax
lea eax, [esp + 0x58]
mov dword [esp + 0x5c], 0xf7919adb
push eax
push 0x558b
push 0xf2e
push 0x58af
xor ebx, ebx
mov dword [esp + 0x80], 0x1f6f49c2
push ebx
push 0x3562
lea eax, [esp + 0x78]
mov dword [esp + 0x70], 0xffffffff
push eax
push 0x7bf7
push 0x328
push 0x52f7
push 0x2b0b
call fcn.1001ef40
lea eax, [esp + 0x66]
mov byte [esp + 0x66], bl
push eax
push ebx
push 0x6d0e
call fcn.1002169a
add esp, 0x44
cmp dword [edi + 0x10], ebx
jne 0x1001ea28
xor al, al
jmp 0x1001eeed
push 2
lea ecx, [esp + 0x74]
call fcn.1001b841
push 0x496a
lea eax, [esp + 0xa8]
mov dword [esp + 0xb8], ebx
push eax
lea eax, [esp + 0x78]
mov dword [esp + 0x18], 0xbeb0647d
push eax
push 0x2495
push ebx
push 0xfd9
call fcn.10028ab0
xor ebx, ebx
add esp, 0x18
inc ebx
mov dword [esp + 0x10], ebx
js 0x1001ea98
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x70]
cmp dword [eax + ecx*4], 0
jne 0x1001ea98
mov byte [esp + 0x1b], 0
cmp byte [esp + 0x1b], 0
je 0x1001ea92
push 0
call fcn.10026bcf
pop ecx
dec dword [esp + 0x10]
jns 0x1001ea70
or dword [esp + 0xb4], 0xffffffff
lea ecx, [esp + 0x70]
call fcn.1001c062
push 0x4585
lea eax, [esp + 0x34]
push eax
push 0
call fcn.1001f1dd
add esp, 0xc
mov dword [esp + 0x20], 0x1824a8c6
mov dword [esp + 0x10], ebx
mov dword [esp + 0x1c], 0xfa1a8f1
mov dword [esp + 0x14], 0xb6b7be2d
push 3
mov dword [esp + 0x24], 0
pop esi
jmp 0x1001eb85
mov dword [esp + 0x10], 0
jmp 0x1001eb03
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x34], 7
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jl 0x1001eaf3
mov dword [esp + 0x38], 0xffffffe8
jmp 0x1001eb65
mov dword [esp + 0x14], 0x717be9fb
mov dword [esp + 0x10], 0
jmp 0x1001eb36
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x58], 0xccb03629
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x1001eb26
mov dword [esp + 0x58], 0
jmp 0x1001eb5a
mov dword [esp + 0x14], 0x250d
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], eax
inc dword [esp + 0x58]
cmp dword [esp + 0x58], 0x1c
jle 0x1001eb46
inc dword [esp + 0x38]
cmp dword [esp + 0x38], 0xfffffffa
je 0x1001eb14
mov ecx, dword [esp + 0x38]
xor edx, edx
mov eax, dword [esp + 0x38]
cmp ecx, eax
setge dl
neg edx
mov dword [esp + 0x10], edx
inc dword [esp + 0x20]
cmp dword [esp + 0x20], 0xf
jle 0x1001eae9
mov dword [esp + 0x20], esi
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setl cl
mov dword [esp + 0x10], ecx
xor ecx, ecx
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
neg eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
cmp eax, 0x8254
setl cl
add ecx, dword [esp + 0x1c]
jne 0x1001ebdb
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x1c], 0
je 0x1001ec55
push ebx
lea ecx, [esp + 0x80]
call fcn.1001b841
push 0
mov dword [esp + 0xb8], ebx
lea edx, [esp + 0x80]
mov dword [esp + 0x18], 0
lea ecx, [esp + 0xa4]
push 0x17e7
call fcn.1001e29b
pop ecx
pop ecx
mov ecx, dword [esp + 0x7c]
xor edx, edx
cmp dword [ecx], edx
mov eax, dword [ecx]
mov dword [esp + 0x1c], eax
sete dl
mov eax, dword [esp + 0x20]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [esp + 0x14], ecx
lea ecx, [esp + 0x7c]
or dword [esp + 0xb4], 0xffffffff
call fcn.1001c062
jmp 0x1001ec69
mov dword [esp + 0x14], 0x4e5477a
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x28], eax
cmp dword [edi + 0x14], 0x10
jb 0x1001ec73
mov esi, dword [edi]
jmp 0x1001ec75
mov esi, edi
cmp dword [edi + 0x14], 0x10
jb 0x1001ec7f
mov ecx, dword [edi]
jmp 0x1001ec81
mov ecx, edi
mov eax, dword [edi + 0x10]
add eax, ecx
cmp esi, eax
je 0x1001eeeb
mov al, byte [esi]
cmp al, 0x30
jl 0x1001ed4f
cmp al, 0x39
jg 0x1001ed4f
push 2
pop ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x24], 0xb457102d
mov dword [esp + 0x24], 0x6748f69f
mov dword [esp + 0x24], 0x14b733c6
mov dword [esp + 0x24], 0x6b6eb6b9
mov dword [esp + 0x24], 0xaa29c146
mov dword [esp + 0x24], 0xfffffff6
mov dword [esp + 0x24], 0x182abbf9
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x6c], 0x5a519d81
mov dword [esp + 0x10], 0
jmp 0x1001ed10
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x94], 0x865b49d5
inc dword [esp + 0x10]
cmp dword [esp + 0x10], ecx
jl 0x1001ecfd
lea eax, [esp + 0x6c]
mov edx, 0x7b83
push ebx
push eax
mov ecx, 0x3a23
call fcn.1001e29b
mov edx, dword [esp + 0x38]
movsx eax, byte [esi]
pop ecx
pop ecx
imul ecx, dword [edx], 0xa
mov dword [esp + 0x94], 0x4145c174
add ecx, 0xffffffd0
add eax, ecx
inc esi
mov dword [edx], eax
jmp 0x1001ec75
mov dword [esp + 0x3c], 0
lea ecx, [esp + 0x88]
mov dword [esp + 0x40], 0
push 2
mov dword [esp + 0x48], 0
pop esi
mov dword [esp + 0x48], 0
mov dword [esp + 0x20], 0xcd53bc6e
mov dword [esp + 0x1c], 0xffff
push esi
call fcn.1001b841
push 0xe2
lea eax, [esp + 0x8c]
mov dword [esp + 0xb8], esi
push eax
lea eax, [esp + 0xa4]
mov dword [esp + 0x1c], 0xffffffff
push eax
mov dword [esp + 0x34], 0xfffffffe
mov dword [esp + 0x30], 0x9e13c95
push 0
call fcn.10027114
mov eax, dword [esp + 0x50]
xor ecx, ecx
mov dword [esp + 0x4c], eax
add esp, 0x10
mov dword [esp + 0x20], eax
cmp dword [esp + 0x20], ecx
jne 0x1001ee06
inc dword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
inc eax
jne 0x1001ee06
mov byte [esp + 0x1b], cl
cmp byte [esp + 0x1b], cl
je 0x1001eebc
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
jmp 0x1001eebc
mov dword [esp + 0x10], ecx
lea eax, [esp + 0x2f]
push ecx
mov dword [esp + 0x28], ecx
push eax
mov dword [esp + 0x30], 0x8dc5
mov dword [esp + 0x1c], 0xb35f1971
mov byte [esp + 0x37], cl
push 0x29b7
call fcn.10022164
mov eax, dword [esp + 0x28]
add esp, 0xc
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x3c]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x3c]
sub edx, eax
mov eax, dword [esp + 0x88]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x7d6b
setne cl
xor edx, edx
mov dword [eax], ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
cmp eax, ecx
setl dl
mov dword [esp + 0x40], edx
cmp edx, dword [esp + 0x10]
jle 0x1001ee85
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
xor edx, edx
mov eax, dword [esp + 0x28]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
cmp ecx, eax
setle dl
cmp edx, 0x5c6a81d6
jl 0x1001eeb8
cmp dword [esp + 0x28], ecx
jne 0x1001eeb8
xor ebx, ebx
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x14]
xor ecx, ecx
imul eax, dword [esp + 0x1c]
cmp eax, 0x7e12fd89
setl cl
mov dword [esp + 0x28], ecx
lea ecx, [esp + 0x88]
call fcn.1001c062
mov eax, dword [esp + 0x30]
and dword [eax], 0
jmp 0x1001ea21
mov al, bl
mov ecx, dword [esp + 0xac]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret