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

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x4ac2d4
push eax
mov dword fs:[0], esp
sub esp, 0x24
push ebx
push ebp
mov ebp, ecx
push esi
xor esi, esi
push edi
cmp dword [ebp + 0x5c], esi
jne 0x44debf
mov eax, 1
jmp 0x44e2e3
push 0x410
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], esi
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0x3c], esi
je 0x44deef
mov ecx, eax
call fcn.00463630
mov edi, eax
jmp 0x44def1
xor edi, edi
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
push eax
mov eax, dword [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x50]
push edx
push eax
mov eax, dword [esp + 0x54]
mov edx, dword [ecx]
mov ecx, edi
push edx
push eax
mov dword [esp + 0x54], 0xffffffff
call fcn.00464540
mov ecx, dword [ebp + 0x5c]
push ecx
mov ecx, edi
call fcn.004644d0
mov ebx, dword [esp + 0x5c]
mov dl, byte [esp + 0x48]
push ebx
mov byte [esp + 0x28], dl
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], esi
call dword [sym.imp.MSVCRT.dll_wcslen]
mov esi, eax
add esp, 4
cmp esi, 0x7ffffffd
jbe 0x44df5d
call dword [sym.imp.MSVCP60.dll_void___cdecl_std::_Xlen_void_]
mov eax, dword [esp + 0x28]
test eax, eax
je 0x44df87
mov cl, byte [eax - 1]
test cl, cl
je 0x44df87
cmp cl, 0xff
je 0x44df87
test esi, esi
jne 0x44dfb2
dec cl
push esi
mov byte [eax - 1], cl
lea ecx, [esp + 0x28]
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::_Tidy_bool_]
jmp 0x44dfe6
test esi, esi
jne 0x44df99
push 1
lea ecx, [esp + 0x28]
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::_Tidy_bool_]
jmp 0x44dfe6
mov ecx, dword [esp + 0x30]
cmp ecx, 0x1f
ja 0x44dfa6
cmp ecx, esi
jae 0x44dfc1
push 1
lea ecx, [esp + 0x28]
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::_Tidy_bool_]
push esi
lea ecx, [esp + 0x28]
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::_Copy_unsigned_int_]
mov eax, dword [esp + 0x28]
test esi, esi
mov ecx, ebx
jbe 0x44dfdc
mov edx, esi
mov bx, word [ecx]
add ecx, 2
mov word [eax], bx
add eax, 2
dec edx
jne 0x44dfc9
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], esi
mov word [eax + esi*2], 0
push 0
push 0
push 0
lea eax, [esp + 0x30]
push 0
push eax
mov ecx, edi
mov dword [esp + 0x50], 1
call fcn.00463e70
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x3c], 0xffffffff
test eax, eax
sete bl
xor esi, esi
cmp ecx, esi
je 0x44e037
mov al, byte [ecx - 1]
test al, al
je 0x44e02b
cmp al, 0xff
je 0x44e02b
dec al
mov byte [ecx - 1], al
jmp 0x44e037
add ecx, 0xfffffffe
push ecx
call fcn.0049c000
add esp, 4
test bl, bl
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
je 0x44e05f
mov ecx, edi
call fcn.00464a70
mov ecx, edi
call fcn.00464a90
mov eax, 1
jmp 0x44e2e3
push esi
mov ecx, edi
call fcn.00464a10
push esi
push esi
push esi
push esi
push esi
mov ecx, edi
call fcn.00464f30
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esp + 0x60]
mov edx, dword [ebp + 0x5c]
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0x60]
mov esi, dword [ecx]
mov ebp, dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
push esi
lea ecx, [esp + 0x20]
push 0
push ecx
push 2
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
call ebp
cmp eax, 0x102
je 0x44e19a
test eax, eax
jne 0x44e17a
mov ecx, edi
call fcn.00467d10
mov ebx, eax
cmp ebx, 0x507b
je 0x44e1a4
mov ecx, edi
call fcn.00467d20
cmp eax, 0x2746
je 0x44e25e
mov ecx, edi
call fcn.00467d20
cmp eax, 0x2745
je 0x44e25e
lea edx, [esp + 0x14]
mov ecx, edi
push edx
call fcn.00465700
test eax, eax
je 0x44e13f
mov eax, dword [esp + 0x14]
cmp eax, 0x12d
je 0x44e111
cmp eax, 0x12e
jne 0x44e13f
push str._PROXY_RESULT__proxy_redirecting
push 0x4d1048
call fcn.00453980
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x58]
sub eax, esi
cmp eax, dword [ecx]
jae 0x44e27f
mov esi, eax
jmp 0x44e183
lea edx, [esp + 0x14]
mov ecx, edi
push edx
call fcn.00465700
test eax, eax
je 0x44e169
mov eax, dword [esp + 0x14]
cmp eax, 0xc8
je 0x44e225
cmp eax, 0xce
je 0x44e225
mov ecx, edi
call fcn.00467d10
test eax, eax
jne 0x44e241
jmp 0x44e183
cmp eax, 1
je 0x44e265
push esi
lea eax, [esp + 0x20]
push 0
push eax
push 2
call ebp
cmp eax, 0x102
jne 0x44e0ae
push str._PROXY_RESULT__connect_proxy_timeout
jmp 0x44e26a
push str._PROXY_RESULT__auth_failed
push 0x4d1048
call fcn.00453980
mov esi, dword [esp + 0x6c]
add esp, 8
mov ecx, edi
push esi
push str.Proxy_Authenticate
call fcn.00466c30
cmp eax, 1
jne 0x44e21b
mov ebp, dword [sym.imp.MSVCRT.dll__stricmp]
push str.NTLM
push esi
call ebp
add esp, 8
test eax, eax
jne 0x44e1f8
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x10], 3
mov dword [ecx], 2
jmp 0x44e27f
push str.Negotiate
push esi
call ebp
add esp, 8
test eax, eax
jne 0x44e21b
mov edx, dword [esp + 0x48]
mov dword [esp + 0x10], 3
mov dword [edx], 3
jmp 0x44e27f
mov dword [esp + 0x10], 2
jmp 0x44e27f
push str._PROXY_RESULT__proxy_success
push 0x4d1048
call fcn.00453980
add esp, 8
mov dword [esp + 0x10], 0
jmp 0x44e27f
push ebx
mov ecx, edi
call fcn.00467d10
push eax
push str._PROXY_RESULT__proxy_connect_fail__d___d
push 0x4d1048
call fcn.00453980
add esp, 0x10
jmp 0x44e277
push str._PROXY_RESULT__proxy_timeouts_failed
jmp 0x44e26a
push str._PROXY_RESULT__exit
push 0x4d1048
call fcn.00453980
add esp, 8
mov dword [esp + 0x10], 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x58]
sub eax, ebx
mov ecx, dword [edx]
cmp eax, ecx
jbe 0x44e29d
mov dword [edx], 0
jmp 0x44e2a1
sub ecx, eax
mov dword [edx], ecx
mov ecx, edi
call fcn.00464a70
mov ecx, edi
call fcn.00464a90
test edi, edi
je 0x44e2bb
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
push str._PROXY_RESULT_return
push 0x4d1048
call fcn.00453980
add esp, 8
push str.__________________________________________________
push 0x4d1048
call fcn.00453980
mov eax, dword [esp + 0x18]
add esp, 8
mov ecx, dword [esp + 0x34]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x30
ret 0x24