Function at 0x110a2d40
Capabilities:
Check for time delay via gettickcount
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1118505d
mov eax, dword fs:[0]
push eax
sub esp, 0x150
mov eax, dword [0x111ec774]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp dword [edi + 0xf8], 0
mov dword [ebp - 0x118], edi
jne 0x110a2d86
mov al, 1
jmp 0x110a32ee
mov eax, dword [edi + 0x3c]
mov edx, dword [eax]
lea ebx, [edi + 0x3c]
mov ecx, ebx
call edx
test al, al
jne 0x110a2dad
push 0x252
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [ebx + 8], 0
jne 0x110a2ddf
lea eax, [ebp - 0x11c]
push eax
lea ecx, [ebp - 0x110]
push ecx
mov dword [ebp - 0x11c], 0x100
call dword [sym.imp.aDvapi32.DLL_GetUserNameA]
lea edx, [ebp - 0x110]
push edx
mov ecx, ebx
call fcn.110d16d0
lea ecx, [ebp - 0x13c]
call fcn.110d1930
cmp byte [edi + 0xe0], 0
mov dword [ebp - 4], 0
je 0x110a2e2e
cmp byte [edi + 0x60], 0
lea esi, [edi + 0x60]
je 0x110a2e2e
push esi
mov ecx, ebx
call fcn.110d01e0
test al, al
je 0x110a2e2e
mov ecx, ebx
call fcn.1101d360
push eax
push esi
lea eax, [ebp - 0x13c]
push 0x1119a64c
push eax
call fcn.110d1540
add esp, 0x10
jmp 0x110a2e3a
push ebx
lea ecx, [ebp - 0x13c]
call fcn.110d1640
cmp dword [ebp + 8], 3
mov byte [ebp - 0x111], 0
jne 0x110a32d6
mov ecx, dword [0x111efb7c]
mov dword [ebp - 0x11c], 0
test ecx, ecx
je 0x110a2e6d
mov edx, dword [ecx]
mov edx, dword [edx + 0x14]
lea eax, [ebp - 0x11c]
push eax
call edx
call fcn.11146010
mov ecx, dword [0x111efb7c]
mov esi, eax
test ecx, ecx
je 0x110a2e8c
mov eax, dword [ecx]
mov edx, dword [ebp - 0x11c]
mov eax, dword [eax + 0x18]
push edx
call eax
test esi, esi
je 0x110a2ecd
push 0x150
call fcn.111101b0
mov esi, eax
add esp, 4
mov dword [ebp - 0x128], esi
mov byte [ebp - 4], 1
test esi, esi
je 0x110a2f0a
mov ebx, dword [edi + 0x20]
lea ecx, [ebp - 0x13c]
call fcn.110094d0
mov ecx, dword [ebx + 4]
mov edx, dword [ebx + 8]
push eax
push ecx
push edx
mov ecx, esi
call fcn.110a0e40
jmp 0x110a2f0c
push 0x194
call fcn.111101b0
mov esi, eax
add esp, 4
mov dword [ebp - 0x128], esi
mov byte [ebp - 4], 2
test esi, esi
je 0x110a2f0a
mov ebx, dword [edi + 0x20]
lea ecx, [ebp - 0x13c]
call fcn.110094d0
mov ecx, dword [ebx + 8]
push eax
mov eax, dword [ebx + 4]
push eax
push ecx
mov ecx, esi
call fcn.110a24e0
jmp 0x110a2f0c
xor eax, eax
mov ebx, eax
mov byte [ebp - 4], 0
test ebx, ebx
je 0x110a32d6
mov edx, dword [edi + 0x2c]
mov eax, dword [edx]
lea esi, [edi + 0x2c]
mov ecx, esi
mov dword [ebp - 0x12c], esi
call eax
test al, al
jne 0x110a2f47
push 0x252
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [esi + 8], 0
jne 0x110a2f89
mov edx, dword [edi + 0x3c]
mov eax, dword [edx]
lea ecx, [edi + 0x3c]
call eax
test al, al
jne 0x110a2f72
push 0x255
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov eax, dword [edi + 0x48]
mov ecx, dword [edi + 0x20]
push 0x11195264
push 0x111a71bc
push eax
push esi
call fcn.110a1460
call dword [sym.imp.KeRneL32.DLl_GetTickCount]
push esi
mov ecx, ebx
mov dword [ebp - 0x128], eax
call fcn.1109f870
mov edx, dword [esi]
mov eax, dword [edx]
mov ecx, esi
call eax
test al, al
jne 0x110a2fc0
push 0x255
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov eax, dword [esi + 0xc]
mov edx, dword [ebx]
push eax
mov eax, dword [edx + 4]
mov ecx, ebx
call eax
mov byte [ebp - 0x111], al
test al, al
je 0x110a3268
mov eax, dword [edi + 0xf4]
mov esi, dword [eax]
cmp esi, eax
je 0x110a2ffc
mov ecx, dword [esi + 8]
mov edx, dword [ecx]
mov eax, dword [edx + 0x14]
push ebx
call eax
mov esi, dword [esi]
cmp esi, dword [edi + 0xf4]
jne 0x110a2fe7
mov edx, dword [ebx]
mov eax, dword [edx + 0x28]
push 1
mov ecx, ebx
call eax
lea ecx, [ebp - 0x14c]
call fcn.110d1930
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 3
call fcn.110d1930
lea esi, [edi + 0x4c]
lea edi, [ebp - 0x14c]
mov ecx, esi
mov byte [ebp - 4], 4
call fcn.1109f4d0
lea edi, [ebp - 0x15c]
mov ecx, esi
call fcn.1109f510
mov edx, dword [ebx]
mov edx, dword [edx + 0x10]
mov eax, edi
push eax
lea ecx, [ebp - 0x14c]
push ecx
mov ecx, ebx
call edx
mov esi, dword [ebp - 0x118]
mov eax, dword [esi + 0xf4]
mov ecx, dword [eax]
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x120], ecx
cmp ecx, eax
je 0x110a320a
jmp 0x110a3086
mov ecx, dword [ebp - 0x120]
mov edi, dword [ecx + 8]
mov ecx, dword [esi + 0x20]
call fcn.1109f7b0
test eax, eax
jle 0x110a31e0
mov eax, dword [edi]
mov edx, dword [eax + 4]
mov ecx, edi
call edx
push eax
mov eax, dword [ebp - 0x124]
push eax
push 0x111a72e0
call fcn.11147060
mov edx, dword [edi + 0x14]
mov eax, dword [edx]
add esp, 0xc
lea ecx, [edi + 0x14]
call eax
test al, al
jne 0x110a30dc
push 0x255
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [edi + 0x20], 0
je 0x110a3118
mov edx, dword [edi + 0x14]
mov eax, dword [edx]
lea ecx, [edi + 0x14]
call eax
test al, al
jne 0x110a3107
push 0x255
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov esi, dword [edi + 0x20]
push esi
push 0x111a72d0
call fcn.11147060
add esp, 8
mov edx, dword [edi + 0x24]
mov eax, dword [edx]
lea ecx, [edi + 0x24]
call eax
test al, al
jne 0x110a313d
push 0x255
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [edi + 0x30], 0
je 0x110a3179
mov edx, dword [edi + 0x24]
mov eax, dword [edx]
lea ecx, [edi + 0x24]
call eax
test al, al
jne 0x110a3168
push 0x255
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov esi, dword [edi + 0x30]
push esi
push 0x111a72c0
call fcn.11147060
add esp, 8
mov edx, dword [edi + 0x34]
mov eax, dword [edx]
lea ecx, [edi + 0x34]
call eax
test al, al
jne 0x110a319e
push 0x255
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
cmp dword [edi + 0x40], 0
je 0x110a31da
mov edx, dword [edi + 0x34]
mov eax, dword [edx]
lea ecx, [edi + 0x34]
call eax
test al, al
jne 0x110a31c9
push 0x255
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov esi, dword [edi + 0x40]
push esi
push 0x111a72b0
call fcn.11147060
add esp, 8
mov esi, dword [ebp - 0x118]
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
push ebx
mov ecx, edi
call eax
mov ecx, dword [ebp - 0x120]
mov eax, dword [ecx]
inc dword [ebp - 0x124]
mov dword [ebp - 0x120], eax
cmp eax, dword [esi + 0xf4]
jne 0x110a3080
mov edx, dword [ebx]
mov eax, dword [edx + 0x28]
push 0
mov ecx, ebx
call eax
mov edx, dword [ebx]
mov eax, dword [edx + 8]
mov ecx, ebx
call eax
mov edx, dword [ebx]
mov byte [ebp - 0x111], al
mov eax, dword [edx]
push 1
mov ecx, ebx
call eax
cmp byte [ebp - 0x111], 0
je 0x110a323e
mov ecx, dword [esi + 0x20]
mov byte [ecx + 0x55], 1
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 3
call fcn.110d0a10
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0
call fcn.110d0a10
mov esi, dword [ebp - 0x12c]
mov edi, dword [ebp - 0x118]
call dword [sym.imp.KeRneL32.DLl_GetTickCount]
cmp byte [ebp - 0x111], 0
mov ebx, eax
je 0x110a329b
mov ecx, dword [edi + 0x20]
call fcn.1109f7b0
test eax, eax
je 0x110a32d6
sub ebx, dword [ebp - 0x128]
push ebx
push 0x111a7294
call fcn.11147060
add esp, 8
jmp 0x110a32d6
mov edx, dword [esi]
mov eax, dword [edx]
mov ecx, esi
call eax
test al, al
jne 0x110a32be
push 0x250
push 0x11195b24
push 0x11195b1c
call fcn.11029a70
add esp, 0xc
mov esi, dword [esi + 0xc]
call dword [sym.imp.KeRneL32.DLl_GetLastError]
push eax
push esi
push 0x111a7270
call fcn.11147060
add esp, 0xc
lea ecx, [ebp - 0x13c]
mov dword [ebp - 4], 0xffffffff
call fcn.110d0a10
mov al, byte [ebp - 0x111]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.11162bb7
mov esp, ebp
pop ebp
ret 4