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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
cmp dword [ebx + 0x698], 0
je 0x447bd6
push ebx
call fcn.00448a80
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp byte [ebx + 0x3b5], 0
jne 0x448092
movzx edi, byte [ebx + 0x149]
movsx esi, word [ebx + 0x144]
imul edx, edi, 0x15d38
test esi, esi
js 0x447c6c
cmp esi, dword [edx + 0xd2f384]
jge 0x447c6c
movsx ecx, word [ebx + 0x146]
test ecx, ecx
js 0x447c6c
mov eax, dword [edx + 0xd2f388]
cmp ecx, eax
jge 0x447c6c
imul eax, ecx
add eax, dword [edx + 0xd2f380]
test byte [eax + esi], 1
je 0x447c6c
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x317
push eax
lea eax, [ebp - 0x10]
mov ecx, 0xa9b83c
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x447c58
cmp dword [eax + 0x10], 0x317
jle 0x447c5a
mov eax, ecx
cmp eax, ecx
jne 0x448073
push 0x317
jmp 0x448059
lea eax, [ebp + 8]
mov dword [ebp + 8], edi
push eax
lea eax, [ebp - 0x10]
mov ecx, 0x9f436c
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0x9f436c]
cmp byte [eax + 0xd], 0
jne 0x447c95
cmp edi, dword [eax + 0x10]
jge 0x447c97
mov eax, ecx
cmp eax, ecx
je 0x448023
mov eax, dword [eax + 0x50]
cmp eax, 0xffffffff
je 0x448023
test eax, eax
je 0x448023
cmp dword [ebx + 0x71c], 0
je 0x447d01
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x2fb
push eax
lea eax, [ebp - 0x10]
mov ecx, 0xa9b83c
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x447ced
cmp dword [eax + 0x10], 0x2fb
jle 0x447cef
mov eax, ecx
cmp eax, ecx
jne 0x448073
push 0x2fb
jmp 0x448059
mov esi, dword [ebp + 0xc]
push 0
push esi
call fcn.00434ac0
push 1
push esi
mov edi, eax
call fcn.00434ac0
xor ecx, ecx
mov dword [ebp - 4], eax
test edi, edi
mov dword [ebp + 8], 0
lea eax, [ebp + 8]
cmovg ecx, edi
push ecx
push eax
push ebx
call fcn.00448240
test al, al
jne 0x447d7b
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x318
push eax
lea eax, [ebp - 0x10]
mov ecx, 0xa9b83c
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x447d67
cmp dword [eax + 0x10], 0x318
jle 0x447d69
mov eax, ecx
cmp eax, ecx
jne 0x448073
push 0x318
jmp 0x448059
cmp byte [ebx + 0xce], 0x22
jne 0x447e6e
mov ecx, dword [ebx + 0x324]
xor edx, edx
add ecx, 6
mov dword [ebp + 0xc], 0xffff
mov eax, ecx
nop dword [eax]
movzx esi, word [eax + 2]
lea edi, [eax - 6]
cmp si, word [ebp + 0xc]
je 0x447db8
cmp esi, 0x4d
je 0x447e06
cmp word [eax], 0x4d
je 0x447e06
inc edx
add eax, 0x14
cmp edx, 0x3c
jl 0x447da0
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x318
push eax
lea eax, [ebp - 0x10]
mov ecx, 0xa9b83c
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x447df2
cmp dword [eax + 0x10], 0x318
jle 0x447df4
mov eax, ecx
cmp eax, ecx
jne 0x448073
push 0x318
jmp 0x448059
test edi, edi
je 0x447dc1
xor eax, eax
mov esi, 0xffff
movzx edx, word [ecx + 2]
cmp dx, si
je 0x447e2d
cmp edx, 0x4d
je 0x447f6e
cmp word [ecx], 0x4d
je 0x447f6e
inc eax
add ecx, 0x14
cmp eax, 0x3c
jl 0x447e11
mov ecx, 8
movzx ecx, word [ecx]
mov edx, dword [ebx]
mov eax, ecx
shr eax, 8
mov byte [ebp - 9], al
mov eax, edx
shr eax, 8
mov byte [ebp - 7], al
lea eax, [ebp - 0xc]
push edx
push eax
mov word [ebp - 0xc], 0x8c1
mov byte [ebp - 0xa], 0x19
mov byte [ebp - 8], cl
mov byte [ebp - 6], dl
mov byte [ebp - 5], 0
call fcn.005168d0
cmp dword [ebp - 4], 1
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
jne 0x447ea2
mov eax, dword [ebx + 0x644]
cmp dword [eax*4 + 0x63748c], 1
jne 0x447ea2
mov dword [ebx + 0x6bc], 1
call esi
add eax, dword [0x63749c]
mov dword [ebx + 0x6c0], eax
mov eax, dword [ebp + 8]
mov dword [ebx + 0x698], 1
mov dword [ebx + 0x6a0], eax
call esi
push dword [ebx]
mov dword [ebx + 0x6a4], eax
movsx eax, word [ebx + 0x144]
mov dword [ebx + 0x6a8], eax
movsx eax, word [ebx + 0x146]
mov dword [ebx + 0x6ac], eax
movzx eax, byte [ebx + 0x149]
mov dword [ebx + 0x6b0], eax
call fcn.0044a0c0
mov eax, dword [ebx + 0x644]
mov ecx, 0xa9b83c
mov dword [ebx + 0x6b4], 0
mov dword [ebx + 0x6b8], 0
mov dword [ebp + 8], 0x31b
imul eax, dword [eax*4 + 0x637474], 0x258
mov dword [ebx + 0x69c], eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x447f47
cmp dword [eax + 0x10], 0x31b
jle 0x447f49
mov eax, ecx
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
cmp eax, ecx
jne 0x447f76
push 0x31b
push str.Could_not_find_message__d_
push 0xa9b7bc
call esi
add esp, 0xc
mov eax, 0xa9b7bc
jmp 0x447f79
add ecx, 2
jmp 0x447e3b
add eax, 0x18
push eax
push 0
push 0
push 0
push 0
push 0
push 1
push dword [ebx]
push 0xb90558
call fcn.004cdc70
mov eax, dword [ebx + 0x644]
add esp, 0x24
mov edi, dword [eax*4 + 0x637474]
test edi, edi
jle 0x448018
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x319
push eax
lea eax, [ebp - 0x10]
mov ecx, 0xa9b83c
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x447fd7
cmp dword [eax + 0x10], 0x319
jle 0x447fd9
mov eax, ecx
cmp eax, ecx
jne 0x447ff8
push 0x319
push str.Could_not_find_message__d_
push 0xa9b7bc
call esi
add esp, 0xc
mov eax, 0xa9b7bc
jmp 0x447ffb
add eax, 0x18
push edi
push eax
push 0
push 0
push 0
push 0
push 0
push 1
push dword [ebx]
push 0xb90558
call fcn.004cdc70
add esp, 0x28
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x24
push eax
lea eax, [ebp - 0x10]
mov ecx, 0xa9b83c
push eax
call fcn.00405650
mov eax, dword [ebp - 8]
mov ecx, dword [0xa9b83c]
cmp byte [eax + 0xd], 0
jne 0x448051
cmp dword [eax + 0x10], 0x24
jle 0x448053
mov eax, ecx
cmp eax, ecx
jne 0x448073
push 0x24
push str.Could_not_find_message__d_
push 0xa9b7bc
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov eax, 0xa9b7bc
jmp 0x448076
add eax, 0x18
push eax
push 0
push 0
push 0
push 0
push 0
push 1
push dword [ebx]
push 0xb90558
call fcn.004cdc70
add esp, 0x24
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 8