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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov esi, 0x58ad60
push dword [ebx]
call fcn.00516145
mov dword [0x58ad10], eax
cmp dword [0x58ad10], 0
je 0x50ca9e
cmp edi, 2
jne 0x50c36c
push 0x76
push dword [ebx]
call sub.USER32.dll_GetDlgItem
mov dword [0x58ad38], eax
push 0x55ad5b
push 0
push 0xc
push dword [0x58ad38]
call sub.USER32.dll_SendMessageA
cmp dword [ebp + 0x1c], 0
je 0x50c403
push 0x76
push dword [ebx]
call sub.USER32.dll_GetDlgItem
mov dword [0x58ad38], eax
push 0xea60
push 0xea60
push 0xb1
push dword [0x58ad38]
call sub.USER32.dll_SendMessageA
push 0
push 0
push 0xb7
push dword [0x58ad38]
call sub.USER32.dll_SendMessageA
mov byte [esi], 0
push dword [0x58ad38]
call sub.USER32.dll_GetWindowTextLengthA
test eax, eax
jle 0x50c3d2
push 0x55ad5f
push esi
call fcn.005394dc
add esp, 8
push dword [ebp + 0x1c]
push esi
call fcn.005394dc
add esp, 8
push esi
push 0
push 0xc2
push dword [0x58ad38]
call sub.USER32.dll_SendMessageA
push dword [0x58ad38]
call sub.USER32.dll_UpdateWindow
push dword [ebx]
call fcn.0050b8c8
push dword [ebx]
call sub.USER32.dll_GetDC
mov dword [0x58ad3c], eax
cmp dword [0x58ad3c], 0
je 0x50ca9e
mov eax, dword [0x58ad10]
push dword [eax + 0x7a0]
push dword [0x58ad3c]
call sub.GDI32.dll_SelectObject
mov dword [0x58ad24], eax
push dword [0x54d2e4]
push dword [0x58ad3c]
call sub.GDI32.dll_SetTextColor
mov dword [0x58ad14], eax
push dword [0x54d2d0]
push dword [0x58ad3c]
call sub.GDI32.dll_SetBkColor
mov dword [0x58ad18], eax
test edi, edi
je 0x50c5d4
push 0x67
push dword [ebx]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowTextLengthA
push eax
lea edx, [ebx + 0x234]
push edx
call fcn.005395b8
pop ecx
pop ecx
cmp ecx, eax
je 0x50c4a1
lea eax, [ebx + 0x234]
push eax
push 0
push 0xc
push 0x67
push dword [ebx]
call sub.USER32.dll_SendDlgItemMessageA
mov eax, dword [ebx + 0x35c]
test eax, eax
jbe 0x50c4d0
push 1
push 0
push 1
push 1
push 0
push 0
push esi
mov dword [ebp - 8], eax
xor edx, edx
mov dword [ebp - 4], edx
fild qword [ebp - 8]
add esp, 0xfffffff4
fstp xword [esp]
call fcn.004d83fe
jmp 0x50c4de
push esi
push edi
mov edi, esi
mov esi, 0x55ad63
mov eax, edi
movsd dword es:[edi], dword [esi]
pop edi
pop esi
push 0x69
push dword [ebx]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowTextLengthA
push eax
push esi
call fcn.005395b8
pop ecx
pop edx
cmp edx, eax
je 0x50c508
push esi
push 0
push 0xc
push 0x69
push dword [ebx]
call sub.USER32.dll_SendDlgItemMessageA
lea ecx, [ebx + 4]
push esi
push edi
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
cmp dword [ebx + 0x36c], 0
je 0x50c574
lea eax, [ebx + 0x68]
push eax
lea edx, [ebx + 4]
push edx
call fcn.0053977c
add esp, 8
test eax, eax
je 0x50c574
push 0x55ad68
push esi
call fcn.005394dc
add esp, 8
lea ecx, [ebx + 0x68]
push ecx
push esi
call fcn.005394dc
add esp, 8
push 0x55ad6c
push esi
call fcn.005394dc
add esp, 8
push 0x6b
push dword [ebx]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowTextLengthA
push eax
push esi
call fcn.005395b8
pop ecx
pop edx
cmp edx, eax
je 0x50c59e
push esi
push 0
push 0xc
push 0x6b
push dword [ebx]
call sub.USER32.dll_SendDlgItemMessageA
push 0x6d
push dword [ebx]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowTextLengthA
push eax
lea eax, [ebx + 0x130]
push eax
call fcn.005395b8
pop ecx
pop ecx
cmp ecx, eax
je 0x50c5d4
lea eax, [ebx + 0x130]
push eax
push 0
push 0xc
push 0x6d
push dword [ebx]
call sub.USER32.dll_SendDlgItemMessageA
cmp dword [ebp + 0x18], 0
jne 0x50c5e2
test edi, edi
je 0x50c938
xor edx, edx
mov dword [0x58ad40], edx
xor ecx, ecx
mov dword [0x58ad20], ecx
xor eax, eax
mov dword [0x58ad1c], eax
mov eax, dword [ebx + 0x37c]
test eax, eax
jle 0x50c611
mov edx, dword [ebx + 0x380]
sub edx, eax
mov dword [0x58ad1c], edx
mov byte [esi], 0
cmp dword [0x58ad1c], 0
jbe 0x50c7c3
cmp dword [ebx + 0x350], 0
jbe 0x50c7c3
cmp dword [ebx + 0x33c], 4
jne 0x50c782
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebx + 0x384]
mov dword [0x58ad5c], eax
cmp dword [0x58ad5c], 0x7d0
jbe 0x50c782
mov ecx, dword [0x58ad5c]
mov dword [ebp - 8], ecx
xor eax, eax
mov dword [ebp - 4], eax
fild qword [ebp - 8]
fld xword [0x50caa8]
fmulp st(1)
fstp xword [0x58ad44]
wait
fld xword [0x58ad44]
fcomp dword [0x50cab4]
fnstsw ax
sahf
jae 0x50c6a7
xor edx, edx
mov dword [0x58ad44], edx
mov dword [0x58ad48], 0x80000000
mov word [0x58ad4c], 0x3fff
mov ecx, dword [ebx + 0x350]
mov dword [ebp - 8], ecx
xor eax, eax
mov dword [ebp - 4], eax
fild qword [ebp - 8]
mov edx, dword [ebx + 0x388]
mov dword [ebp - 0x10], edx
xor ecx, ecx
mov dword [ebp - 0xc], ecx
fild qword [ebp - 0x10]
fsubp st(1)
fstp xword [0x58ad50]
wait
fld xword [0x58ad50]
fcomp dword [0x50cab8]
fnstsw ax
sahf
jae 0x50c6f8
xor edx, edx
mov dword [0x58ad50], edx
mov dword [0x58ad54], edx
mov word [0x58ad58], dx
fld xword [0x58ad50]
fld xword [0x58ad44]
fdivp st(1)
call fcn.00542680
mov dword [0x58ad20], eax
cmp dword [0x58ad20], 0
ja 0x50c72a
cmp dword [ebx + 0x38c], 2
jae 0x50c72a
inc dword [ebx + 0x38c]
jmp 0x50c761
xor edx, edx
mov dword [ebx + 0x38c], edx
mov edx, dword [ebx + 0x364]
mov eax, dword [0x58ad20]
cmp edx, eax
ja 0x50c74d
sub eax, edx
shr eax, 1
add dword [ebx + 0x364], eax
jmp 0x50c761
mov ecx, dword [ebx + 0x364]
sub ecx, dword [0x58ad20]
shr ecx, 1
sub dword [ebx + 0x364], ecx
call sub.KERNEL32.dll_GetTickCount
mov dword [ebx + 0x384], eax
mov eax, dword [ebx + 0x350]
mov dword [ebx + 0x388], eax
mov dword [0x58ad40], 1
mov eax, dword [ebx + 0x364]
mov dword [0x58ad20], eax
push 1
push 0
push 1
push 1
push 0
push 0
push esi
mov dword [ebp - 8], eax
xor edx, edx
mov dword [ebp - 4], edx
fild qword [ebp - 8]
add esp, 0xfffffff4
fstp xword [esp]
call fcn.004d83fe
cmp byte [esi], 0
je 0x50c7c3
push str._Sec
push esi
call fcn.005394dc
add esp, 8
push 0x58ad28
push 0x74
push dword [ebx]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowRect
push 2
push 0x58ad28
push dword [ebx]
push 0
call sub.USER32.dll_MapWindowPoints
push 0
push esi
call fcn.005395b8
pop ecx
push eax
push esi
push 0x58ad28
push 6
push dword [0x58ad2c]
push dword [0x58ad28]
push dword [0x58ad3c]
call sub.GDI32.dll_ExtTextOutA
mov byte [esi], 0
cmp dword [0x58ad1c], 0
jbe 0x50c8eb
cmp dword [ebx + 0x35c], 0
jbe 0x50c8eb
cmp dword [ebx + 0x364], 0
jbe 0x50c8eb
cmp dword [ebx + 0x344], 0
je 0x50c84d
xor ecx, ecx
mov dword [0x58ad1c], ecx
jmp 0x50c8a3
cmp dword [0x58ad40], 0
je 0x50c897
mov ecx, dword [ebx + 0x35c]
sub ecx, dword [ebx + 0x350]
mov dword [0x58ad1c], ecx
mov eax, ecx
xor edx, edx
div dword [ebx + 0x364]
mov dword [0x58ad1c], eax
cmp dword [0x58ad1c], 0
ja 0x50c88a
mov dword [0x58ad1c], 1
mov eax, dword [0x58ad1c]
mov dword [ebx + 0x390], eax
jmp 0x50c8a3
mov edx, dword [ebx + 0x390]
mov dword [0x58ad1c], edx
cmp dword [0x58ad1c], 0
ja 0x50c8b6
mov dword [0x58ad1c], 1
push 3
push dword [0x58ad1c]
push 0x55ad75
call fcn.004a8254
push esi
push edi
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x58ad28
push 0x72
push dword [ebx]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowRect
push 2
push 0x58ad28
push dword [ebx]
push 0
call sub.USER32.dll_MapWindowPoints
push 0
push esi
call fcn.005395b8
pop ecx
push eax
push esi
push 0x58ad28
push 6
push dword [0x58ad2c]
push dword [0x58ad28]
push dword [0x58ad3c]
call sub.GDI32.dll_ExtTextOutA
cmp dword [ebp + 0x10], 0
jne 0x50c946
test edi, edi
je 0x50ca05
mov byte [esi], 0
push 1
push 0
push 1
push 1
push 0
push 0
push esi
mov eax, dword [ebx + 0x350]
mov dword [ebp - 8], eax
xor edx, edx
mov dword [ebp - 4], edx
fild qword [ebp - 8]
add esp, 0xfffffff4
fstp xword [esp]
call fcn.004d83fe
mov eax, dword [ebx + 0x37c]
test eax, eax
jle 0x50c9b8
mov edx, dword [ebx + 0x380]
sub edx, eax
mov dword [0x58ad1c], edx
test edx, edx
jbe 0x50c9b8
push str._in
push esi
call fcn.005394dc
add esp, 8
push 3
push dword [0x58ad1c]
push 0x55ad7f
call fcn.004a8254
push eax
push esi
call fcn.005394dc
add esp, 8
push 0x58ad28
push 0x70
push dword [ebx]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowRect
push 2
push 0x58ad28
push dword [ebx]
push 0
call sub.USER32.dll_MapWindowPoints
push 0
push esi
call fcn.005395b8
pop ecx
push eax
push esi
push 0x58ad28
push 6
push dword [0x58ad2c]
push dword [0x58ad28]
push dword [0x58ad3c]
call sub.GDI32.dll_ExtTextOutA
cmp dword [ebp + 0x14], 0
jne 0x50ca0f
test edi, edi
je 0x50ca5e
push 0x58ad28
push 0x6e
push dword [ebx]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowRect
push 2
push 0x58ad28
push dword [ebx]
push 0
call sub.USER32.dll_MapWindowPoints
push 0
push dword [ebx + 0x358]
push dword [0x58ad34]
push dword [0x58ad30]
push dword [0x58ad2c]
push dword [0x58ad28]
push dword [0x58ad3c]
call fcn.0050b95e
push dword [0x58ad14]
push dword [0x58ad3c]
call sub.GDI32.dll_SetTextColor
push dword [0x58ad18]
push dword [0x58ad3c]
call sub.GDI32.dll_SetBkColor
push dword [0x58ad24]
push dword [0x58ad3c]
call sub.GDI32.dll_SelectObject
push dword [0x58ad3c]
push dword [ebx]
call sub.USER32.dll_ReleaseDC
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18