Function at 0x4ab373
Capabilities:
Check for time delay via gettickcount
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x23c
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
push dword [ebp + 0x18]
mov esi, 0x104
push dword [ebp + 0x20]
lea edi, [esp + 0x48]
push str.__s___exe__s
call fcn.004a9039
add esp, 0xc
push 0x8000
push dword [ebp + 0x14]
mov eax, edi
push eax
lea eax, [esp + 0x20]
push eax
call fcn.00458fb0
cmp dword [esp + 0x1c], 0xffffffff
jne 0x4ab3d6
mov edi, dword [ebp + 8]
lea esi, [esp + 0x14]
mov dword [edi], 2
call fcn.00459108
mov eax, edi
jmp 0x4ab4b5
push dword [ebp + 0x14]
lea eax, [esp + 0x18]
push dword [ebp + 0x10]
push eax
call fcn.0044a6d5
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
test al, al
jne 0x4ab635
mov al, byte [ebp + 0x1c]
neg al
sbb eax, eax
and eax, 0xff938290
add eax, 0x6ddd00
mov dword [esp + 0x3c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
jmp 0x4ab46b
lea esi, [esp + 0x14]
call fcn.0040606c
test al, al
jne 0x4ab475
mov eax, esi
push eax
call fcn.00406048
test eax, eax
jne 0x4ab475
push 0xc8
push ecx
mov ecx, dword [esp + 0x1c]
mov eax, esp
mov dword [eax], ecx
mov eax, dword [ebx]
lea ecx, [esp + 0x40]
push ecx
mov ecx, ebx
call dword [eax + 8]
cmp dword [eax], 1
je 0x4ab475
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, edi
cmp eax, dword [esp + 0x3c]
ja 0x4ab678
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
test al, al
je 0x4ab421
lea eax, [esp + 0x14]
call fcn.004ab35e
test al, al
jne 0x4ab619
lea esi, [esp + 0x14]
call fcn.0040606c
test al, al
jne 0x4ab619
push dword [esp + 0x2c]
mov ebx, dword [ebp + 8]
mov dword [ebx], 2
call fcn.0058f8c9
pop ecx
lea esi, [esp + 0x14]
call fcn.00459108
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
lea esi, [esp + 0x14]
call fcn.0040606c
test al, al
je 0x4ab627
push 1
lea eax, [esp + 0x17]
push eax
mov eax, esi
push eax
mov byte [esp + 0x1f], 0
call fcn.0040608a
cmp eax, 1
jne 0x4ab497
cmp byte [esp + 0x13], 0x80
jb 0x4ab540
and dword [esp + 0x20], 0
push 2
lea eax, [esp + 0x24]
push eax
mov eax, esi
push eax
call fcn.0040608a
movzx eax, word [esp + 0x20]
inc eax
push eax
lea esi, [esp + 0x30]
call fcn.00434f3d
movzx eax, word [esp + 0x20]
movzx esi, word [esp + 0x20]
mov edi, dword [esp + 0x2c]
add eax, eax
push eax
push edi
lea eax, [esp + 0x1c]
push eax
add esi, esi
call fcn.0040608a
cmp eax, esi
jne 0x4ab694
and word [esi + edi], 0
jmp 0x4ab544
mov edi, dword [esp + 0x2c]
movzx eax, byte [esp + 0x13]
cmp eax, 0x12
jg 0x4ab5c1
je 0x4ab5b8
test eax, eax
jl 0x4ab619
cmp eax, 1
jle 0x4ab6b0
push 2
pop esi
cmp eax, esi
je 0x4ab6a5
cmp eax, 0x10
je 0x4ab586
cmp eax, 0x11
jne 0x4ab619
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
jmp 0x4ab619
fld1
push 8
lea eax, [esp + 0x24]
fstp qword [esp + 0x24]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.0040608a
cmp eax, 8
jne 0x4ab69a
fld qword [esp + 0x20]
mov eax, dword [ebx]
push ecx
push ecx
mov ecx, ebx
fstp qword [esp]
call dword [eax + 0x24]
jmp 0x4ab619
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x2c]
jmp 0x4ab619
sub eax, 0x80
je 0x4ab606
dec eax
je 0x4ab5ef
dec eax
je 0x4ab5e0
dec eax
jne 0x4ab619
test edi, edi
mov eax, edi
jne 0x4ab5dc
mov eax, 0x5b07d8
push 2
jmp 0x4ab5fc
test edi, edi
mov eax, edi
jne 0x4ab5eb
mov eax, 0x5b07d8
push 1
jmp 0x4ab5fc
test edi, edi
mov eax, edi
jne 0x4ab5fa
mov eax, 0x5b07d8
push 0
mov edx, dword [ebx]
push eax
mov ecx, ebx
call dword [edx + 0x20]
jmp 0x4ab619
test edi, edi
mov eax, edi
jne 0x4ab611
mov eax, 0x5b07d8
mov edx, dword [ebx]
push eax
mov ecx, ebx
call dword [edx + 0x1c]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
test al, al
je 0x4ab4be
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
test al, al
je 0x4ab417
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
test al, al
je 0x4ab497
lea eax, [esp + 0x14]
call fcn.004ab35e
test al, al
je 0x4ab715
push 1
lea eax, [esp + 0x17]
push eax
lea eax, [esp + 0x1c]
push eax
mov byte [esp + 0x1f], 0xff
call fcn.0044a6d5
cmp byte [ebp + 0x1c], 0
jne 0x4ab715
xor esi, esi
jmp 0x4ab6f3
cmp dword [esp + 0x14], 0xffffffff
je 0x4ab497
push 1
push dword [esp + 0x18]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp 0x4ab497
push edi
jmp 0x4ab49b
mov ebx, dword [ebp + 8]
mov dword [ebx], esi
push edi
jmp 0x4ab4a4
mov ebx, dword [ebp + 8]
mov dword [ebx], 1
jmp 0x4ab69f
push dword [ebp + 0x14]
lea eax, [esp + 0x18]
push dword [ebp + 0x10]
push eax
call fcn.0040608a
cmp eax, dword [ebp + 0x14]
jne 0x4ab694
cmp byte [esp + 0x13], 1
mov ebx, dword [ebp + 8]
push edi
jne 0x4ab49e
and dword [ebx], 0
jmp 0x4ab4a4
mov eax, dword [ebx]
push 0xc8
lea ecx, [esp + 0x3c]
push ecx
mov ecx, ebx
call dword [eax + 4]
cmp esi, 5
je 0x4ab702
inc esi
lea eax, [esp + 0x14]
call fcn.004ab35e
test al, al
jne 0x4ab6dc
jmp 0x4ab715
cmp dword [esp + 0x14], 0xffffffff
je 0x4ab715
push 1
push dword [esp + 0x18]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ebx, dword [ebp + 8]
push dword [esp + 0x2c]
mov dword [ebx], 1
jmp 0x4ab4a4