Function at 0x40186a
Capabilities:
Check for time delay via gettickcount
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x3dc
mov eax, dword [0x42b094]
xor eax, esp
mov dword [esp + 0x3d8], eax
mov eax, dword [0x42c440]
push ebx
push ebp
xor ebp, ebp
cmp eax, ebp
push esi
push edi
jl 0x401e55
cmp eax, dword [0x42c450]
jg 0x401e55
xor esi, esi
inc esi
cmp dword [0x44e2e6], esi
jne 0x4018f1
movzx eax, word [0x44e020]
push eax
mov ecx, 0x44dff8
mov edi, 0x44e2d0
mov dword [0x44dff0], ebp
call fcn.00403b66
test eax, eax
je 0x4018e1
mov dword [0x44dff0], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x44e0ec], eax
push 0x3e8
jmp 0x4018e6
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x401e70
push 0x44e178
mov ecx, 0x42c450
call fcn.00402a56
test eax, eax
je 0x401e3b
mov eax, dword [0x42cee4]
mov ebx, 0x44e278
mov esi, 0x42cf68
mov edi, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0x3c6
movsd dword es:[edi], dword [esi]
mov dword [0x44e0f4], eax
lea eax, [esp + 0x24]
push ebp
push eax
movsd dword es:[edi], dword [esi]
call fcn.00412aa0
mov eax, dword [0x44dff0]
add esp, 0xc
cmp eax, 1
jne 0x4019d3
xor eax, eax
movzx ecx, word [eax + 0x44dff4]
mov word [esp + eax + 0xd2], cx
inc eax
inc eax
cmp cx, bp
jne 0x401945
xor eax, eax
movzx ecx, word [eax + 0x44e042]
mov word [esp + eax + 0x112], cx
inc eax
inc eax
cmp cx, bp
jne 0x40195d
xor eax, eax
movzx ecx, word [eax + 0x44e024]
mov word [esp + eax + 0xd6], cx
inc eax
inc eax
cmp cx, bp
jne 0x401975
mov esi, 0x426b68
mov edi, 0x43dff0
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov ecx, 0xf1
lea esi, [esp + 0x20]
mov edi, 0x43dff4
rep movsd dword es:[edi], dword [esi]
push 1
movsw word es:[edi], word [esi]
push 0x43dff0
mov esi, 0x44e2d0
mov dword [0x42c448], 0x3ca
call fcn.00403c46
mov dword [0x44dff0], 2
jmp 0x401e2e
cmp eax, 2
jne 0x4019fe
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
sub eax, dword [0x44e0ec]
cmp eax, 0x1388
jbe 0x401e70
mov dword [0x44dff0], ebp
call esi
jmp 0x401e61
cmp eax, 3
jne 0x401b4e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x44e0ec]
cmp eax, 0x3e8
jbe 0x401e70
cmp dword [0x42c440], 6
mov eax, 0xb4
lea ecx, [eax - 0x32]
jne 0x401a37
push 0x32
mov eax, 0x320
pop ecx
push ecx
push eax
sub esp, 0x10
mov edi, esp
mov esi, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, 0x42c450
movsd dword es:[edi], dword [esi]
call fcn.00402ab0
test eax, eax
je 0x401ac4
mov eax, dword [0x42c440]
cmp eax, 5
ja 0x401aa6
push 0x426b70
mov esi, 0x42cf78
push esi
call fcn.00410e8b
pop ecx
pop ecx
test eax, eax
je 0x401a8b
xor eax, eax
movzx ecx, word [eax + 0x42cf78]
mov word [eax + 0x44e1f8], cx
inc eax
inc eax
cmp cx, bp
jne 0x401a74
jmp 0x401adb
push 0x426b78
push esi
call fcn.00410e8b
pop ecx
pop ecx
test eax, eax
je 0x401adb
mov dword [esp + 0x38], 1
jmp 0x401adb
cmp eax, 6
jne 0x401adb
xor eax, eax
movzx ecx, word [eax + 0x42cf78]
mov word [eax + 0x44e1f8], cx
inc eax
inc eax
cmp cx, bp
jne 0x401aad
jmp 0x401adb
xor eax, eax
movzx ecx, word [eax + 0x426bac]
mov word [eax + 0x44e1f8], cx
inc eax
inc eax
cmp cx, bp
jne 0x401ac6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, 0x426b84
mov edi, 0x43dff0
movsd dword es:[edi], dword [esi]
mov dword [0x44e0ec], eax
movsb byte es:[edi], byte [esi]
xor eax, eax
movzx ecx, word [eax + 0x44e178]
mov word [esp + eax + 0x3c], cx
inc eax
inc eax
cmp cx, bp
jne 0x401af4
xor eax, eax
movzx ecx, word [eax + 0x44e1f8]
mov word [esp + eax + 0x78], cx
inc eax
inc eax
cmp cx, bp
jne 0x401b09
mov ecx, 0xf1
lea esi, [esp + 0x20]
mov edi, 0x43dff4
rep movsd dword es:[edi], dword [esi]
push 1
movsw word es:[edi], word [esi]
push 0x43dff0
mov esi, 0x44e2d0
mov dword [0x42c448], 0x3ca
call fcn.00403c46
jmp 0x401e70
cmp eax, 4
jne 0x401e70
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, 0x3e8
cdq
idiv dword [0x44e0dc]
sub ecx, dword [0x44e0ec]
cmp ecx, eax
jbe 0x401e70
mov eax, dword [0x44e280]
sub eax, dword [0x44e278]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x18], eax
mov eax, dword [0x44e284]
sub eax, dword [0x44e27c]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x1c], eax
mov eax, dword [0x42c440]
cmp eax, 6
jne 0x401bae
push ebp
mov esi, ebx
jmp 0x401c01
cmp eax, 5
ja 0x401bf7
cmp dword [0x44e0f0], 3
jne 0x401bf7
mov eax, dword [0x44e2c8]
mov esi, 0x426b8c
mov edi, 0x43dff0
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
cmp eax, ebp
je 0x401e70
push 0x42c448
call eax
mov eax, dword [0x44e2cc]
pop ecx
cmp eax, ebp
je 0x401e70
push 0x43dff4
call eax
pop ecx
jmp 0x401e06
push dword [0x44e0f4]
lea esi, [esp + 0x14]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, 0x44e2a8
movsd dword es:[edi], dword [esi]
call fcn.0040315f
cmp eax, ebp
je 0x401e70
mov ebx, dword [0x44e2a8]
cmp ebx, ebp
je 0x401e70
mov eax, dword [0x42c440]
cmp eax, ebp
jne 0x401c67
push 0xd0
mov edi, 0x140
push edi
push ebp
push 0x10e
push ebx
mov esi, 0x44e290
push esi
call fcn.0040266d
push 0x14
push ebp
push 0xbc
push 0x21c
push 0x104
jmp 0x401dc9
cmp eax, 1
jne 0x401c9d
push 0xd0
mov edi, 0x140
push edi
push ebp
push 0x64
push ebx
mov esi, 0x44e290
push esi
call fcn.0040266d
push 0x14
push ebp
push 0xbc
push 0x203
push 0xe6
jmp 0x401dc9
cmp eax, 2
je 0x401d9d
cmp eax, 3
je 0x401d9d
mov esi, 0x44e290
cmp eax, 4
jne 0x401d02
push 0xad
mov edi, 0x140
push edi
push 6
push 0x10e
push ebx
push esi
call fcn.0040266d
push ebp
push 0xf0
push 0x14
push 6
push 0x2a8
push ebx
push esi
push 0x50
pop edx
call fcn.004027cd
push 0x14
push ebp
push 0x9b
push 0x24e
push 0x14a
jmp 0x401dc9
cmp eax, 5
jne 0x401d48
push 0xd0
mov edi, 0x140
push edi
push ebp
push 0x69
push ebx
push esi
call fcn.0040266d
push ebp
push 0x8c
push 0x14
push ebp
push 0x1b3
push ebx
push esi
mov edx, 0xb4
call fcn.004027cd
push 0x14
push ebp
push 0xbc
push 0x1ea
jmp 0x401c93
cmp eax, 6
jne 0x401d76
push 0xdc
mov edi, 0x190
push edi
push ebp
push 0x5a
push ebx
push esi
call fcn.0040266d
push 0x17
push ebp
push 0xc5
push 0x226
push 0xfa
jmp 0x401dc9
push 0xc8
mov edi, 0x154
push edi
push ebp
push 0x78
push ebx
push esi
call fcn.0040266d
push 0x1e
push ebp
push 0xaa
push 0x226
jmp 0x401cf8
push 0xbc
mov edi, 0x140
push edi
push ebp
push 0x6e
push ebx
mov esi, 0x44e290
push esi
call fcn.0040266d
push 0x14
push ebp
push 0xa8
push 0x186
push 0x82
push ebx
push esi
mov edx, edi
call fcn.004027cd
push 0x42c448
push 0x43dff4
push dword [0x44e0e4]
mov esi, 0x426b8c
push dword [0x44e294]
mov edi, 0x43dff0
push dword [0x44e290]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
call fcn.004074d0
add esp, 0x14
test eax, eax
jne 0x401e70
mov eax, dword [0x42c448]
dec eax
cmp eax, 0xfffa
ja 0x401e70
add dword [0x42c448], 4
push ebp
push 0x43dff0
mov esi, 0x44e2d0
call fcn.00403c46
test eax, eax
je 0x401e70
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x44e0ec], eax
jmp 0x401e70
mov dword [0x44e278], ebp
mov dword [0x44e27c], ebp
mov dword [0x44e280], ebp
mov dword [0x44e284], ebp
jmp 0x401e70
mov dword [0x44dff0], ebp
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, 0x44e2d0
mov dword [0x44e0ec], eax
call fcn.00403c20
mov ecx, dword [esp + 0x3e8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
xor eax, eax
call fcn.00410738
add esp, 0x3dc
ret