Function at 0x489910
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x48
mov eax, dword [0x57a040]
xor eax, esp
mov dword [esp + 0x44], eax
cmp dword [0xbdccfc], 1
push esi
mov esi, dword [ebp + 8]
push edi
jne 0x489c4b
mov ecx, dword [0x9d2b50]
mov edi, dword [esi + 0x2f8]
mov eax, dword [ecx]
cmp eax, ecx
je 0x489c4b
mov edx, dword [ebp + 0xc]
nop
cmp dword [eax + 0x18], edx
jne 0x489966
cmp edi, dword [eax + 0x1c]
jl 0x489966
mov ecx, dword [eax + 0x20]
cmp edi, ecx
jle 0x4899c2
cmp ecx, 0xffffffff
je 0x4899c2
mov ecx, dword [eax + 8]
cmp byte [ecx + 0xd], 0
je 0x48998c
mov ecx, dword [eax + 4]
cmp byte [ecx + 0xd], 0
jne 0x489988
cmp eax, dword [ecx + 8]
jne 0x489988
mov eax, ecx
mov ecx, dword [ecx + 4]
cmp byte [ecx + 0xd], 0
je 0x489978
mov eax, ecx
jmp 0x4899a5
mov eax, ecx
mov edx, dword [eax]
cmp byte [edx + 0xd], 0
jne 0x4899a2
mov ecx, dword [edx]
mov eax, edx
mov edx, ecx
cmp byte [ecx + 0xd], 0
je 0x489996
mov edx, dword [ebp + 0xc]
cmp eax, dword [0x9d2b50]
jne 0x489950
xor al, al
pop edi
pop esi
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.00529f01
mov esp, ebp
pop ebp
ret 8
movups xmm0, xmmword [eax + 0x14]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
movups xmmword [esp + 0x10], xmm0
movq xmm0, qword [eax + 0x24]
movq qword [esp + 0x20], xmm0
cmp dword [esi + 0xf1c], edx
je 0x489a09
mov dword [esi + 0xf1c], edx
mov dword [esi + 0xf18], 0
call edi
mov edx, dword [ebp + 0xc]
mov dword [esi + 0xf14], eax
mov dword [esi + 0xf20], 0
mov eax, dword [esi + 0xf18]
cmp eax, dword [esp + 0x24]
jle 0x489be7
cmp dword [esi + 0xf20], 0
jne 0x489acd
push edx
lea eax, [esi + 0x86]
push eax
lea eax, [esi + 0x7b]
push eax
push str._SpeedHackDetected___s___s__Skill:__d
push 1
call fcn.005262e0
add esp, 0x14
cmp dword [0xbdcd08], 1
jne 0x489ac3
lea eax, [esp + 8]
mov dword [esp + 8], 0x34b
push eax
lea eax, [esp + 0x38]
mov ecx, 0xa9b83c
push eax
call fcn.00405650
mov eax, dword [esp + 0x3c]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x489a7f
cmp dword [eax + 0x10], 0x34b
jle 0x489a81
mov eax, ecx
cmp eax, ecx
jne 0x489aa4
push 0x34b
push str.Could_not_find_message__d_
push 0xa9b7bc
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov eax, 0xa9b7bc
jmp 0x489aa7
add eax, 0x18
push eax
push 0
push 0
push 0
push 0
push 0
push 1
push dword [esi]
push 0xb90558
call fcn.004cdc70
add esp, 0x24
mov dword [esi + 0xf20], 1
mov eax, dword [0xbdcd00]
cmp eax, 1
jne 0x489b07
push 5
lea eax, [esp + 0xc]
mov dword [esp + 0xc], 0x2f105c3
push eax
push dword [esi]
mov byte [esp + 0x18], 0
call fcn.005192f0
mov al, 1
pop edi
pop esi
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.00529f01
mov esp, ebp
pop ebp
ret 8
cmp eax, 2
je 0x489af2
cmp eax, 3
jne 0x489b58
call edi
mov ecx, dword [esi + 0xf14]
add ecx, dword [0xbdcd04]
add ecx, dword [esp + 0x20]
cmp eax, ecx
jbe 0x489af2
mov dword [esi + 0xf18], 0
call edi
mov dword [esi + 0xf14], eax
mov al, 1
mov dword [esi + 0xf20], 0
pop edi
pop esi
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.00529f01
mov esp, ebp
pop ebp
ret 8
cmp eax, 4
jne 0x489bd5
movzx eax, word [esi]
mov ecx, 0x7509e0
movq xmm0, qword [esi + 0x7b]
mov word [esp + 0x38], ax
movzx eax, word [esi + 0x83]
mov word [esp + 0x42], ax
mov al, byte [esi + 0x85]
mov byte [esp + 0x44], al
lea eax, [esp + 0x34]
push 0x18
push eax
mov dword [esp + 0x3c], 0x60f18c1
mov dword [esp + 0x50], 1
movq qword [esp + 0x42], xmm0
call fcn.00440610
mov eax, dword [esi]
mov eax, dword [eax*4 + 0x20a514c]
cmp byte [eax + 0xa], 0
jg 0x489af2
mov word [eax + 0xa], 1
mov al, 1
pop edi
pop esi
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.00529f01
mov esp, ebp
pop ebp
ret 8
call edi
mov ecx, dword [esi + 0xf14]
add ecx, dword [esp + 0x20]
cmp eax, ecx
jbe 0x489c4b
jmp 0x489c39
call edi
mov ecx, dword [esi + 0xf14]
add ecx, dword [esp + 0x20]
cmp eax, ecx
jae 0x489c12
inc dword [esi + 0xf18]
xor al, al
pop edi
pop esi
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.00529f01
mov esp, ebp
pop ebp
ret 8
cmp dword [0xbdcd0c], 1
jne 0x489c39
push dword [esi + 0xf18]
push dword [esi + 0x2f8]
push dword [ebp + 0xc]
push str._SpeedHackTeste__Skill:__d__AttackSpeed:__d__Count:__d
push 1
call fcn.005262e0
add esp, 0x14
mov dword [esi + 0xf18], 0
call edi
mov dword [esi + 0xf14], eax
mov ecx, dword [esp + 0x4c]
xor al, al
pop edi
pop esi
xor ecx, esp
call fcn.00529f01
mov esp, ebp
pop ebp
ret 8