Function at 0x1003ff40
Capabilities:
Check for time delay via gettickcount
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [0x100e41c4]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x101e70b5], 0
push ebx
push esi
push edi
mov ebx, edx
mov edi, ecx
je 0x1004005e
cmp byte [edi + 0x30c], 0
je 0x1004022c
mov eax, dword fs:[0x2c]
mov ecx, dword [0x101ee45c]
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10232bc0]
cmp eax, dword [ecx + 4]
jle 0x1003ffbd
push 0x10232bc0
call fcn.1008db1d
add esp, 4
cmp dword [0x10232bc0], 0xffffffff
jne 0x1003ffbd
call esi
push 0x10232bc0
mov dword [0x10232e04], eax
call fcn.1008dade
add esp, 4
call esi
mov edx, dword [0x10232e04]
mov ecx, eax
sub ecx, edx
cmp ecx, 0xc8
jb 0x1003ffd8
mov dword [0x10232e04], eax
jmp 0x1003ffe0
cmp edx, eax
jne 0x1004022c
mov esi, dword [ebp + 8]
lea eax, [edi + 0x274]
push 2
push ecx
mov dword [esp], 0
push eax
movzx eax, byte [edi + 0xb0]
push esi
push ebx
push eax
movzx eax, byte [edi + 0xac]
push eax
call dword [0x101ef0f0]
mov ecx, dword [0x101eef1c]
add esp, 0x1c
mov byte [edi + 0x78], 1
test ecx, ecx
je 0x1004002a
mov eax, dword [0x101eeffc]
test eax, eax
je 0x1004002a
mov dword [ecx], ebx
mov dword [eax], esi
mov eax, dword [0x101ef12c]
mov dword [eax], ebx
mov eax, dword [0x101eef24]
mov dword [eax], esi
lea eax, [edi + 0x308]
push eax
push edi
mov byte [edi + 0x79], 0
call dword [0x101eefd0]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1008d9f1
mov esp, ebp
pop ebp
ret
mov eax, str.DKMZY
lea ecx, [ebp - 0x10]
sub eax, 0x32634904
push eax
call fcn.1007cd60
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x100400e1
test edi, edi
je 0x1004022c
cmp byte [edi + 0x2c0], 0
je 0x1004022c
mov eax, dword [0x101ef12c]
mov ecx, dword [ebp + 8]
mov byte [edi + 0x58], 1
push 2
mov dword [eax], ebx
mov eax, dword [0x101eef24]
push ecx
mov dword [esp], 0
mov dword [eax], ecx
mov eax, dword [0x101ef064]
add eax, edi
push eax
movzx eax, byte [edi + 0x90]
push ecx
push ebx
push eax
movzx eax, byte [edi + 0x8c]
push eax
call dword [0x101ef0f0]
mov eax, dword [0x101ef100]
add eax, edi
mov byte [edi + 0x59], 0
push eax
jmp 0x10040222
cmp byte [0x101e70ba], 0
je 0x10040147
cmp byte [edi + 0x308], 0
je 0x1004022c
mov eax, dword [0x101ef064]
mov esi, dword [ebp + 8]
add eax, edi
push 2
push ecx
mov dword [esp], 0
push eax
movzx eax, byte [edi + 0xb4]
push esi
push ebx
push eax
movzx eax, byte [edi + 0xb0]
push eax
call dword [0x101ef0f0]
mov eax, dword [0x101ef12c]
mov byte [edi + 0x74], 1
mov dword [eax], ebx
mov eax, dword [0x101eef24]
mov dword [eax], esi
mov eax, dword [0x101ef100]
add eax, edi
mov byte [edi + 0x75], 0
push eax
jmp 0x10040222
cmp byte [0x101e70bb], 0
je 0x100401b2
cmp byte [edi + 0x318], 0
je 0x1004022c
mov ecx, dword [0x101ef000]
mov eax, dword [0x101ef064]
mov esi, dword [ebp + 8]
add eax, edi
push 2
push ecx
mov dword [esp], 0
push eax
movzx eax, byte [ecx + edi + 4]
push esi
push ebx
push eax
movzx eax, byte [ecx + edi]
push eax
call dword [0x101ef0f0]
mov ecx, dword [0x101ef1b8]
mov eax, dword [0x101ef12c]
mov byte [ecx + edi], 1
mov dword [eax], ebx
mov eax, dword [0x101eef24]
mov dword [eax], esi
mov eax, dword [0x101ef100]
add eax, edi
mov byte [ecx + edi + 1], 0
push eax
jmp 0x10040222
cmp byte [0x101e70b6], 0
je 0x1004022c
cmp byte [edi + 0x160], 0
je 0x1004022c
movss xmm0, dword [edi + 0x14]
divss xmm0, dword [0x100d6858]
mov eax, dword [0x101ef064]
push 0
push ecx
mov dword [esp], 0
add eax, edi
push eax
mov esi, dword [ebp + 8]
push esi
push ebx
cvttss2si eax, xmm0
movss xmm0, dword [edi + 0x10]
divss xmm0, dword [0x100d6858]
push eax
cvttss2si eax, xmm0
push eax
call dword [0x101ef0f0]
mov eax, dword [0x101ef12c]
mov byte [edi + 0x2ec], 1
push edi
mov dword [eax], ebx
mov eax, dword [0x101eef24]
mov dword [eax], esi
mov byte [edi + 0x2ed], 0
push edi
call dword [0x101eefd0]
add esp, 0x24
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1008d9f1
mov esp, ebp
pop ebp
ret