Function at 0x10024996
Capabilities:
Create pipe
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10081e62
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x190
push esi
mov dword [ebp - 0x134], 1
mov dword [ebp - 0x130], 1
mov dword [ebp - 0x12c], 1
mov dword [ebp - 0x128], 1
lea ecx, [ebp - 0x69]
call fcn.1000acc3
push eax
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x134]
push eax
lea ecx, [ebp - 0x190]
call fcn.10017862
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017828
and dword [ebp - 4], 0
mov dword [ebp - 0x120], 0xd444182b
mov dword [ebp - 0x11c], 0xd444182b
mov dword [ebp - 0x118], 0xd444182b
mov dword [ebp - 0x114], 0xd444182b
lea ecx, [ebp - 0x6a]
call fcn.1000acc3
push eax
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x120]
push eax
lea ecx, [ebp - 0x180]
call fcn.10017862
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x48]
call fcn.10017828
mov byte [ebp - 4], 1
mov dword [ebp - 0x98], 2
mov dword [ebp - 0xe0], 0xfffffffa
mov dword [ebp - 0xa8], 7
mov dword [ebp - 0x15c], 0x19f8c517
mov dword [ebp - 0x158], 0x19f8c517
mov dword [ebp - 0x154], 0x19f8c517
mov dword [ebp - 0x150], 0x19f8c517
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
and dword [eax], 0
jmp 0x10024ae1
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x8c]
mov dword [ecx], eax
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
cmp dword [eax], 3
jg 0x10024d63
mov dword [ebp - 0x30], 0xfffffff7
mov dword [ebp - 0xb4], 0xe60e7790
mov dword [ebp - 0x88], 0xe60be628
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
mov esi, eax
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
mov ecx, dword [esi]
mov dword [eax], ecx
mov dword [ebp - 0x30], 3
jmp 0x10024b4d
mov eax, dword [ebp - 0x30]
dec eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jl 0x10024d5e
mov dword [ebp - 0x4c], 1
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
mov eax, dword [eax]
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 0
je 0x10024ba1
push 1
lea ecx, [ebp - 0x48]
call fcn.10017853
push 1
lea ecx, [ebp - 0x68]
call fcn.10017853
imul esi, dword [eax], 0xffffffff
push 3
lea ecx, [ebp - 0x48]
call fcn.10017853
cmp esi, dword [eax]
jg 0x10024bc5
mov dword [ebp - 0x78], 1
jmp 0x10024bc9
and dword [ebp - 0x78], 0
cmp dword [ebp - 0x78], 0xc6fe
jle 0x10024be7
mov eax, 0xd365
test eax, eax
je 0x10024be7
mov dword [ebp - 0xac], 1
jmp 0x10024bee
and dword [ebp - 0xac], 0
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x98], eax
mov esi, dword [ebp - 0x98]
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
cmp dword [eax], esi
jge 0x10024c24
mov dword [ebp - 0xf4], 1
jmp 0x10024c2b
and dword [ebp - 0xf4], 0
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0xae65c342
jb 0x10024c5a
mov dword [ebp - 0x80], 1
jmp 0x10024c5e
and dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x88], eax
mov esi, dword [ebp - 0x88]
push 3
lea ecx, [ebp - 0x48]
call fcn.10017853
cmp esi, dword [eax]
jg 0x10024c96
cmp dword [ebp - 0x4c], 0
jne 0x10024c96
and dword [ebp - 0xa0], 0
jmp 0x10024ca0
mov dword [ebp - 0xa0], 1
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
mov ecx, dword [ebp - 0xa0]
cmp ecx, dword [eax]
jge 0x10024cc7
mov dword [ebp - 0x54], 1
jmp 0x10024ccb
and dword [ebp - 0x54], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x54]
mov dword [ebp + eax - 0x15c], ecx
imul esi, dword [ebp - 0x54], 0xaead
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
imul esi, dword [eax]
test esi, esi
je 0x10024d17
mov byte [ebp - 0x27], 0
movzx eax, byte [ebp - 0x27]
test eax, eax
je 0x10024d15
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAdjustment]
jmp 0x10024d40
mov byte [ebp - 0x29], 0
movzx eax, byte [ebp - 0x29]
test eax, eax
je 0x10024d35
push 0x625
push 0x1946
push 0
call dword [sym.imp.KERNEL32.dll_SetHandleInformation]
cmp dword [ebp - 0x30], 0
je 0x10024d40
jmp 0x10024b46
push 2
lea ecx, [ebp - 0x48]
call fcn.10017853
push dword [eax]
lea ecx, [ebp - 0x68]
call fcn.10017853
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
jmp 0x10024b46
jmp 0x10024ac0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.1001784e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x68]
call fcn.1001784e
movzx eax, byte [ebp + 0x14]
test eax, eax
je 0x1002503a
mov eax, dword [ebp + 8]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0x38], 0x17571177
mov dword [ebp - 0x38], 0
jmp 0x10024db0
mov eax, dword [ebp - 0x38]
dec eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xffffffea
jle 0x10024dd4
mov byte [ebp - 0x26], 0
movzx eax, byte [ebp - 0x26]
test eax, eax
je 0x10024dca
push 0
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp dword [ebp - 0x38], 0
je 0x10024dd2
jmp 0x10024dd4
jmp 0x10024da9
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x18], 0
jmp 0x10024df4
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xfffffff3
jl 0x10024ff3
mov dword [ebp - 0x14], 0xeb71
mov dword [ebp - 0x1c], 1
mov dword [ebp - 0x58], 1
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x14], eax
jge 0x10024e27
mov dword [ebp - 0xd8], 1
jmp 0x10024e2e
and dword [ebp - 0xd8], 0
cmp dword [ebp - 0x18], 0
je 0x10024e47
push 0xfffffffffffffffc
pop eax
test eax, eax
je 0x10024e47
mov dword [ebp - 0x90], 1
jmp 0x10024e4e
and dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x90]
cmp eax, dword [ebp - 0x14]
je 0x10024e68
mov dword [ebp - 0xc4], 1
jmp 0x10024e6f
and dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x16c], eax
cmp dword [ebp - 0x18], 0
je 0x10024e8f
xor eax, eax
inc eax
je 0x10024e8f
mov dword [ebp - 0xb0], 1
jmp 0x10024e96
and dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0xb0]
add eax, dword [ebp - 0x18]
je 0x10024eb3
cmp dword [ebp - 0x14], 0
je 0x10024eb3
mov dword [ebp - 0x74], 1
jmp 0x10024eb7
and dword [ebp - 0x74], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x74], eax
jne 0x10024ec8
mov dword [ebp - 0x7c], 1
jmp 0x10024ecc
and dword [ebp - 0x7c], 0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0xec]
cmp eax, dword [ebp - 0xcc]
jl 0x10024eff
mov dword [ebp - 0x84], 1
jmp 0x10024f06
and dword [ebp - 0x84], 0
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x84]
imul eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x58]
jne 0x10024f1e
cmp dword [ebp - 0x1c], 0
je 0x10024f96
mov dword [ebp - 0xf8], 0x42b6
mov dword [ebp - 0xd4], 0x68e10d32
cmp dword [ebp - 0xf8], 0xb607
jl 0x10024f47
mov dword [ebp - 0x70], 1
jmp 0x10024f4b
and dword [ebp - 0x70], 0
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0x1c], 0
jmp 0x10024f64
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x3b
jl 0x10024f94
mov byte [ebp - 0x28], 0
movzx eax, byte [ebp - 0x28]
test eax, eax
je 0x10024f8a
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CloseEnhMetaFile]
cmp dword [ebp - 0x18], 0
je 0x10024f92
jmp 0x10024f5d
jmp 0x10024f5d
jmp 0x10024fe8
mov dword [ebp - 0x14], 0x16
jmp 0x10024fa6
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x1f
jl 0x10024fc3
mov dword [ebp - 0xb8], 1
cmp dword [ebp - 0xb8], 0
je 0x10024fc1
jmp 0x10024fc3
jmp 0x10024f9f
mov byte [ebp - 0x25], 0
movzx eax, byte [ebp - 0x25]
test eax, eax
je 0x10024fe8
push 0x8d0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetPolyFillMode]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x58], eax
jmp 0x10024ded
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0x3c]
mov dword [eax], 0
jmp 0x10025015
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x3c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x3c]
cmp dword [eax], 2
jge 0x10025035
mov eax, dword [ebp - 0x3c]
push dword [eax]
mov ecx, dword [ebp - 0xf0]
call fcn.10017853
mov dword [eax], 0x8d08f492
jmp 0x1002500a
jmp 0x1002531e
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xc0], eax
push 2
lea ecx, [ebp - 0x178]
call fcn.100177e6
mov dword [ebp - 4], 2
mov dword [ebp - 0x160], 0x38ecf54c
push 1
lea ecx, [ebp - 0x140]
call fcn.100177e6
mov byte [ebp - 4], 3
mov dword [ebp - 0x10], 0
jmp 0x1002508b
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100250a7
push dword [ebp - 0x10]
lea ecx, [ebp - 0x178]
call fcn.10017853
mov dword [eax], 0xb90d
jmp 0x10025084
mov dword [ebp - 0x10], 0
jmp 0x100250b7
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100250cd
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x19c], 0xd23b6182
jmp 0x100250b0
mov dword [ebp - 0x10], 0
jmp 0x100250dd
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 1
jge 0x100250f9
push dword [ebp - 0x10]
lea ecx, [ebp - 0x140]
call fcn.10017853
mov dword [eax], 0xddd1
jmp 0x100250d6
push 0
lea ecx, [ebp - 0x140]
call fcn.10017853
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x94]
mov dword [ecx], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x140]
call fcn.1001784e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x178]
call fcn.1001784e
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0x34], eax
and dword [ebp - 0x10c], 0
and dword [ebp - 0x108], 0
and dword [ebp - 0x104], 0
and dword [ebp - 0x100], 0
lea ecx, [ebp - 0x59]
call fcn.1000acc3
push eax
lea eax, [ebp - 0xfc]
push eax
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x188]
call fcn.10017862
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x14c]
call fcn.10017828
mov dword [ebp - 4], 4
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x24], 0
jmp 0x100251b0
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jg 0x1002523e
mov dword [ebp - 0x168], 0xf2e96673
mov dword [ebp - 0xbc], 0xdbd0176d
push dword [ebp - 0x24]
lea ecx, [ebp - 0x14c]
call fcn.10017853
mov ecx, dword [ebp - 0x24]
mov eax, dword [eax]
lea eax, [ecx + eax + 1]
test eax, eax
jne 0x100251f8
cmp dword [ebp - 0x24], 0
jne 0x100251f8
and dword [ebp - 0x9c], 0
jmp 0x10025202
mov dword [ebp - 0x9c], 1
push dword [ebp - 0x24]
lea ecx, [ebp - 0x14c]
call fcn.10017853
mov eax, dword [eax]
cmp eax, dword [ebp - 0x9c]
jl 0x10025226
mov dword [ebp - 0xa4], 1
jmp 0x1002522d
and dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xbc], eax
jmp 0x100251a9
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.1001784e
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0x20], 0xfffffff8
mov dword [ebp - 0x50], 0
jmp 0x10025270
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 1
jge 0x10025286
mov eax, dword [ebp - 0x50]
mov dword [ebp + eax*4 - 0x164], 0xfffffffd
jmp 0x10025269
mov dword [ebp - 0x20], 0
jmp 0x10025296
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x100252bb
mov byte [ebp - 0x2a], 0
movzx eax, byte [ebp - 0x2a]
test eax, eax
je 0x100252b9
push 0x1f04
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreatePipe]
jmp 0x1002528f
mov dword [ebp - 0x20], 0xfffffffb
jmp 0x100252cb
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x10
jge 0x100252e8
mov dword [ebp - 0xc8], 0xae77ab39
cmp dword [ebp - 0xc8], 0
je 0x100252e6
jmp 0x100252e8
jmp 0x100252c4
mov eax, dword [ebp - 0x34]
mov dword [eax], 0
jmp 0x100252fe
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x34]
mov dword [ecx], eax
mov eax, dword [ebp - 0x34]
cmp dword [eax], 3
jge 0x1002531e
mov eax, dword [ebp - 0x34]
push dword [eax]
mov ecx, dword [ebp - 0xd0]
call fcn.10017853
mov dword [eax], 0xd5feaf86
jmp 0x100252f3
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret