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

Disassembly:
mov eax, 0x431f34
call fcn.00430710
mov eax, 0xa06c
call fcn.00430730
movsx eax, word [0x43ac86]
movsx ecx, byte [0x43ac7d]
push ebx
push esi
push edi
push 0x61dffff
push dword [0x43aca0]
or eax, ecx
mov dword [0x43ac98], eax
call fcn.0040b087
mov esi, dword [0x435130]
add dword [0x43acb4], eax
pop ecx
mov al, byte [esi]
pop ecx
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
xor ebx, ebx
mov eax, esp
lea ecx, [ebp - 0x2c]
push ebx
push ecx
push ebx
push 0x2001f
push ebx
push ebx
push ebx
push esi
push eax
call fcn.0042d836
pop ecx
pop ecx
push eax
push 0x80000001
push 0x10
call fcn.0040f588
pop ecx
call eax
test eax, eax
jne 0x417ed9
push 0xdb2bffff
push 0xc4ebffff
call fcn.0040af6d
cmp word [0x43ac94], bx
pop ecx
pop ecx
mov byte [0x43ac7f], al
je 0x41784e
cmp dword [0x43aca0], ebx
je 0x41784e
push 1
pop eax
jmp 0x417850
xor eax, eax
add word [0x43ac8a], ax
push 0xa74dffff
movsx eax, byte [0x43ac7b]
push eax
mov dword [ebp - 0x24], ebx
call fcn.0040af94
push dword [0x43acac]
mov word [0x43ac82], ax
push 0x3603ffff
call fcn.0040b0f0
add word [0x43ac84], ax
add esp, 0x10
call dword [sym.imp.USER32.dll_GetCursor]
add word [0x43ac8a], ax
mov edi, 0x1000
mov dword [ebp - 0x1c], edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
add byte [0x43ac7a], al
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
add dword [0x43aca4], eax
lea eax, [ebp - 0x78]
push eax
push ebx
push ebx
lea eax, [ebp - 0x1c]
push ebx
push eax
lea eax, [ebp - 0x2078]
push eax
push ebx
push dword [ebp - 0x2c]
push 0x12
call fcn.0040f588
pop ecx
call eax
test eax, eax
jne 0x417ed9
push dword [0x43ac98]
mov byte [0x43ac79], 1
push 0xa8d3ffff
call fcn.0040b002
push dword [0x43aca0]
mov dword [0x43aca8], eax
push 0x3abbffff
call fcn.0040afcb
add word [0x43ac8e], ax
push 0xa713ffff
push 0x82d3ffff
call fcn.0040af6d
add esp, 0x18
mov word [0x43ac8a], ax
lea eax, [ebp - 0x10]
push eax
push 0x2001f
lea eax, [ebp - 0x2078]
push ebx
push eax
push dword [ebp - 0x2c]
push 0x13
call fcn.0040f588
pop ecx
call eax
test eax, eax
jne 0x417e73
cmp dword [0x43aca0], ebx
mov dword [ebp - 0x28], ebx
setne al
add word [0x43ac94], ax
mov eax, dword [0x43acac]
imul eax, eax, 0x6a0bffff
mov dword [0x43ac9c], eax
movsx eax, word [0x43ac94]
push eax
movsx eax, byte [0x43ac7e]
push eax
call fcn.0040aeeb
add dword [0x43aca8], eax
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetVersion]
push 0xa68bffff
push 0xfe71ffff
mov byte [0x43ac80], al
mov dword [ebp - 0x18], edi
call fcn.0040af94
mov ecx, dword [0x43ac98]
mov byte [0x43ac7d], al
movsx ax, byte [0x43ac7f]
push 0x277ffff
sub ecx, eax
push dword [0x43aca4]
add word [0x43ac90], cx
mov dword [ebp - 0x14], 0x8000
call fcn.0040b002
add dword [0x43acb0], eax
push 0x3a29ffff
movsx eax, word [0x43ac90]
push eax
call fcn.0040b087
push 0xbd8dffff
push 0xb98fffff
mov dword [0x43acac], eax
call fcn.0040b0ac
add esp, 0x20
add word [0x43ac86], ax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0xa078]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x18]
push ebx
push eax
lea eax, [ebp - 0x1078]
push eax
push ebx
push dword [ebp - 0x10]
push 0x16
call fcn.0040f588
pop ecx
call eax
test eax, eax
jne 0x417e66
push dword [0x43ac98]
push 0x2769ffff
call fcn.0040af6d
cmp dword [ebp - 0x30], 1
pop ecx
pop ecx
mov dword [0x43aca0], eax
jne 0x417dfc
movsx eax, byte [0x43ac78]
push 0x2c33ffff
push eax
call fcn.0040b0f0
add dword [0x43ac98], eax
mov al, byte [ebp - 0x1d]
pop ecx
mov byte [ebp - 0x40], al
pop ecx
push ebx
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push dword [ebp - 0x14]
lea eax, [ebp - 0xa078]
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], ebx
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_char_const___unsigned_int_]
movsx eax, word [0x43ac88]
push eax
push 0x5373ffff
call fcn.0040aeeb
pop ecx
mov dword [0x43aca0], eax
pop ecx
lea eax, [ebp - 0x50]
push 8
push ebx
push eax
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::substr_unsigned_int__unsigned_int_]
movsx eax, word [0x43ac8e]
push eax
push 0x10cdffff
mov byte [ebp - 4], 1
call fcn.0040af32
add word [0x43ac90], ax
mov al, byte [0x43ac88]
mov esi, dword [0x435134]
sub byte [0x43ac78], al
mov dword [0x43aca4], 0x7b5bffff
pop ecx
mov al, byte [esi]
pop ecx
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x50]
push eax
push esi
push dword [ebp - 0x48]
push ebx
call dword [sym.imp.MSVCP60.dll_public:_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::compare_unsigned_int__unsigned_int__char_const___unsigned_int_const]
cmp eax, ebx
jne 0x417cb9
movsx eax, word [0x43ac8e]
push 0xdfe5ffff
push eax
call fcn.0040af6d
push dword [0x43aca8]
add word [0x43ac88], ax
push dword [0x43aca4]
call fcn.0040b0f0
add byte [0x43ac78], al
add esp, 0x10
cmp dword [ebp - 0x38], 0x34
jae 0x417c8c
push 0x72e3ffff
push 0x7933ffff
call fcn.0040af32
add byte [0x43ac79], al
cmp word [0x43ac88], bx
pop ecx
pop ecx
je 0x417bb5
cmp byte [0x43ac80], bl
mov byte [0x43ac81], 1
jne 0x417bbb
mov byte [0x43ac81], bl
cmp dword [0x43acbc], ebx
jne 0x417bcf
cmp dword [0x43acb0], ebx
jne 0x417bcf
xor eax, eax
jmp 0x417bd2
push 1
pop eax
add byte [0x43ac7a], al
lea eax, [ebp - 0x60]
push ebx
push eax
call fcn.00404f31
push dword [0x43acbc]
mov byte [ebp - 4], 2
push dword [0x43aca0]
call fcn.0040b037
mov dword [0x43acb4], eax
lea eax, [ebp - 0x60]
push eax
call fcn.0040bf80
movsx eax, byte [0x43ac79]
movsx ecx, byte [0x43ac7a]
and eax, ecx
add esp, 0x14
add dword [0x43aca8], eax
mov al, byte [0x43ac8e]
dec al
push 0xffffffffffffffff
mov byte [0x43ac7f], al
call dword [sym.imp.USER32.dll_IsCharAlphaA]
mov word [0x43ac82], ax
mov eax, dword [ebp - 0x5c]
cmp eax, ebx
jne 0x417c44
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
mov ecx, dword [ebp - 0x58]
inc ecx
push ecx
push eax
push 1
lea eax, [ebp - 0x1078]
push ebx
push eax
push dword [ebp - 0x10]
push 0x15
call fcn.0040f588
pop ecx
call eax
movsx eax, byte [0x43ac81]
push eax
movsx eax, word [0x43ac90]
push eax
call fcn.0040aeeb
pop ecx
mov dword [0x43ac98], eax
pop ecx
mov byte [ebp - 4], 1
push 1
lea ecx, [ebp - 0x60]
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
movsx eax, byte [0x43ac7a]
push 0x6b9bffff
push eax
call fcn.0040af32
dec word [0x43ac88]
or word [0x43ac8a], 0xffff
pop ecx
mov dword [0x43aca8], eax
pop ecx
jmp 0x417ddf
mov esi, dword [0x435138]
mov al, byte [esi]
add al, 0x76
movzx eax, al
add eax, 3
and al, 0xfc
call fcn.00430730
mov eax, esp
push esi
push eax
call fcn.0042d836
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
add esp, 0xc
lea ecx, [ebp - 0x50]
push eax
push esi
push dword [ebp - 0x48]
push ebx
call dword [sym.imp.MSVCP60.dll_public:_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::compare_unsigned_int__unsigned_int__char_const___unsigned_int_const]
cmp eax, ebx
jne 0x417ddf
movsx eax, byte [0x43ac79]
push eax
push 0xfa7dffff
call fcn.0040af94
cmp dword [ebp - 0x38], 0x34
pop ecx
pop ecx
mov byte [0x43ac7b], al
jae 0x417dc7
push 0x4071ffff
push 0xd11ffff
call fcn.0040afcb
mov byte [0x43ac80], al
or al, 0xff
sub al, byte [0x43ac86]
push 1
add byte [0x43ac79], al
lea eax, [ebp - 0x70]
push eax
call fcn.00404f31
movsx eax, word [0x43ac90]
add eax, dword [0x43ac98]
mov byte [ebp - 4], 3
add dword [0x43ac9c], eax
lea eax, [ebp - 0x70]
push eax
call fcn.0040bf80
push 0xcb05ffff
push 0x17d5ffff
call fcn.0040b087
add word [0x43ac94], ax
mov eax, dword [ebp - 0x6c]
add esp, 0x1c
cmp eax, ebx
jne 0x417d90
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
mov ecx, dword [ebp - 0x68]
inc ecx
push ecx
push eax
push 1
lea eax, [ebp - 0x1078]
push ebx
push eax
push dword [ebp - 0x10]
push 0x15
call fcn.0040f588
pop ecx
call eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 1
lea ecx, [ebp - 0x70]
mov byte [0x43ac7e], al
mov byte [ebp - 4], 1
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push dword [0x43ac9c]
push 0x5a09ffff
call fcn.0040b0f0
add byte [0x43ac7f], al
pop ecx
pop ecx
push 1
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], bl
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
or dword [ebp - 4], 0xffffffff
push 1
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
or word [0x43ac82], 0xffff
or word [0x43ac94], 0xffff
push 0xed41ffff
push 0x27c9ffff
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x14], 0x8000
call fcn.0040b0ac
add word [0x43ac82], ax
pop ecx
movsx eax, byte [0x43ac7c]
imul eax, eax, 0x962fffff
mov dword [0x43ac98], eax
pop ecx
lea eax, [ebp - 0x14]
inc dword [ebp - 0x28]
push eax
lea eax, [ebp - 0xa078]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x18]
push ebx
push eax
lea eax, [ebp - 0x1078]
push eax
push dword [ebp - 0x28]
jmp 0x417a34
push dword [ebp - 0x10]
push 0xf
call fcn.0040f588
pop ecx
call eax
movsx eax, word [0x43ac8a]
sub eax, 0x1f020001
mov dword [0x43acb0], 0xb0700001
mov dword [0x43acac], eax
movsx eax, byte [0x43ac7d]
push eax
push 0x19ddffff
call fcn.0040b002
inc dword [ebp - 0x24]
push eax
push 0x762bffff
mov dword [0x43aca4], eax
mov dword [ebp - 0x1c], edi
call fcn.0040afcb
add esp, 0x10
add byte [0x43ac80], al
lea eax, [ebp - 0x78]
push eax
push ebx
push ebx
lea eax, [ebp - 0x1c]
push ebx
push eax
lea eax, [ebp - 0x2078]
push eax
push dword [ebp - 0x24]
jmp 0x4178cc
movsx eax, byte [0x43ac7e]
push eax
push dword [0x43ac9c]
call fcn.0040b087
push 0x8049ffff
push 0x5175ffff
mov dword [0x43ac98], eax
call fcn.0040b0f0
mov ecx, dword [ebp - 0xc]
add esp, 0x10
add byte [0x43ac7d], al
lea esp, [ebp - 0xa084]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret