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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb4
push ebx
mov ebx, ecx
mov dword [ebp - 4], 0
push esi
push edi
mov cl, byte [ebx + 0xb1]
test cl, cl
jne 0x4d0e9f
cmp dword [ebx + 0x110], 0
jne 0x4d0e9f
mov edx, dword [0x7bc9cc]
mov esi, 0x7bc9cc
cmp byte [ebx + 0xa4], cl
je 0x4d0e2d
cmp dword [ebx + 0xfc], 0
je 0x4d0a01
mov ecx, dword [0x7bad78]
mov eax, ecx
sub eax, edx
cmp eax, 0xb4
jb 0x4d0a01
mov eax, edx
lock cmpxchg dword [esi], ecx
cmp eax, edx
jne 0x4d0a01
mov eax, dword [ebp + 0x10]
mov byte [eax], 1
cmp byte [ebx + 0xa4], 0
je 0x4d0e2d
cmp byte [0x7bc9d4], 0
jne 0x4d0e2d
mov eax, dword [ebx + 0x10c]
test eax, eax
jne 0x4d0a50
mov eax, dword [ebx + 0x104]
test eax, eax
je 0x4d0dfc
push 0
push 0
push 0
push 0
push str.SteamHTTPClient
call eax
mov dword [ebx + 0x10c], eax
test eax, eax
je 0x4d0dfc
cmp dword [ebx + 0x100], 0
je 0x4d0dfc
mov edi, dword [ebp + 8]
mov esi, 0x6cca60
mov edx, esi
mov ecx, esi
mov eax, dword [edi + 0x68]
test eax, eax
cmovne edx, eax
mov eax, dword [edi + 0x64]
test eax, eax
push edx
cmovne ecx, eax
cmp byte [edi + 0xfa], 0
push ecx
mov eax, 0x6cf950
cmove eax, esi
push eax
lea eax, [ebp - 0x24]
push str.http_s:___s_s
push eax
call fcn.004b5200
add esp, 0x14
mov dword [ebp - 0x44], 1
xor eax, eax
mov dword [ebp - 0x40], 3
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
push 4
push dword [ebp - 0x24]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
call fcn.004cdd70
mov eax, dword [0x7bad78]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc], eax
call edi
mov esi, dword [ebx + 0x100]
lea ecx, [ebp - 0x64]
mov dword [ebp - 8], eax
call fcn.00453d70
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x44]
push ecx
push eax
push dword [ebx + 0x10c]
call esi
mov dword [ebp + 0x10], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call edi
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x1c], eax
test ecx, ecx
jne 0x4d0bb2
cmp esi, 0x2ee6
jne 0x4d0b6c
mov esi, dword [ebx + 0x100]
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x40], 2
call fcn.00453d70
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x44]
push ecx
push eax
push dword [ebx + 0x10c]
call esi
mov edi, eax
mov dword [ebp + 0x10], edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov ecx, edi
test edi, edi
jne 0x4d0bb2
cmp esi, 0x2eef
jne 0x4d0bad
mov esi, dword [ebx + 0x100]
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x30], 1
call fcn.00453d70
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x44]
push ecx
push eax
push dword [ebx + 0x10c]
call esi
mov edi, eax
mov dword [ebp + 0x10], edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov ecx, edi
test edi, edi
jne 0x4d0bb2
mov edi, dword [ebp - 0x14]
jmp 0x4d0bbf
mov edi, dword [ebp - 0x14]
test edi, edi
je 0x4d0bbf
cmp word [edi], 0
jne 0x4d0bcc
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 8]
cmp eax, 0x3e8
jae 0x4d0bed
mov eax, dword [0x7bc9cc]
mov edx, dword [ebp - 0xc]
cmp eax, edx
jae 0x4d0bea
cmp byte [0x7bc9d4], 0
jne 0x4d0bea
mov edi, 0x7bc9cc
lock cmpxchg dword [edi], edx
mov edi, dword [ebp - 0x14]
test ecx, ecx
je 0x4d0db7
mov eax, dword [ebp - 0x10]
mov dword [ebp + 0x10], eax
test eax, eax
je 0x4d0c37
push 4
push 0
push 0
push eax
call fcn.00534900
mov esi, eax
push esi
call fcn.005383bb
push 0
mov edi, eax
push esi
push edi
push dword [ebp + 0x10]
mov dword [ebp - 8], edi
call fcn.00534900
mov eax, 1
mov dword [ebp + 0x10], edi
mov edi, dword [ebp - 0x14]
add esp, 0x24
mov dword [ebp - 4], eax
jmp 0x4d0c47
mov eax, dword [ebp + 8]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
mov dword [ebp + 0x10], 0x6d8be8
test edi, edi
je 0x4d0c7b
push 4
push 0
or eax, 2
push 0
push edi
mov dword [ebp - 4], eax
call fcn.00534900
mov esi, eax
push esi
call fcn.005383bb
push 0
push esi
mov esi, eax
mov dword [ebp - 0xc], eax
push esi
push edi
call fcn.00534900
add esp, 0x24
mov edi, esi
jmp 0x4d0c83
mov esi, dword [ebp + 8]
mov edi, 0x6d8be8
push 0
push 0
lea ecx, [ebp - 0x8c]
call fcn.00457a50
push dword [ebp + 0x10]
push edi
push str.Auto_proxy_finds:__s___s_n
lea ecx, [eax + 0x20]
push ecx
lea ecx, [eax + 8]
push ecx
push eax
push 5
push 4
push 0
push 0x1f
push 0
push 0
call fcn.00450b00
mov eax, dword [ebp - 4]
add esp, 0x30
test al, 2
je 0x4d0cd1
and eax, 0xfffffffd
push esi
mov dword [ebp - 4], eax
call fcn.005383c4
mov eax, dword [ebp - 4]
add esp, 4
test al, 1
je 0x4d0ce0
push dword [ebp - 8]
call fcn.005383c4
add esp, 4
mov eax, dword [ebp - 0x10]
mov esi, dword [sym.imp.KERNEL32.dll_GlobalFree]
test eax, eax
je 0x4d0cf0
push eax
call esi
cmp dword [ebp - 0x14], 0
je 0x4d0d97
mov edi, dword [ebp + 8]
mov ecx, dword [ebx + 0xa8]
push edi
call fcn.004b9720
mov edi, dword [ebp - 0x14]
mov ebx, 0x6cca60
mov dword [ebp + 0x10], eax
xor eax, eax
test edi, edi
mov byte [ebp + 0xb], 0
cmovne ebx, eax
test ebx, ebx
jne 0x4d0d4e
push 4
push ebx
push ebx
push edi
mov byte [ebp + 0xb], 1
call fcn.00534900
mov esi, eax
push esi
call fcn.005383bb
push 0
mov ebx, eax
push esi
push ebx
push edi
call fcn.00534900
mov esi, dword [sym.imp.KERNEL32.dll_GlobalFree]
add esp, 0x24
mov ecx, dword [ebp + 0xc]
lea eax, [ecx + 0x16]
push eax
push dword [ebp + 0x10]
push ebx
call fcn.004bd9c0
cmp byte [ebp + 0xb], 0
je 0x4d0d6d
push ebx
call fcn.005383c4
add esp, 4
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4d0d77
push eax
call esi
lea ecx, [ebp - 0x64]
mov bl, 1
call fcn.00451c40
push dword [ebp - 0x24]
call fcn.005383c4
add esp, 4
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea ecx, [ebp - 0x64]
xor bl, bl
call fcn.00451c40
push dword [ebp - 0x24]
call fcn.005383c4
add esp, 4
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push 0
lea ecx, [ebp - 0x8c]
call fcn.00457a50
push esi
push str.Auto_proxy_check_failed__last_errror___d_n
lea ecx, [eax + 0x20]
push ecx
lea ecx, [eax + 8]
push ecx
push eax
push 1
push 4
push 0
push 0x1f
push 0
push 0
call fcn.00450b00
add esp, 0x2c
lea ecx, [ebp - 0x64]
call fcn.00451c40
push dword [ebp - 0x24]
call fcn.005383c4
add esp, 4
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00457a50
push str.Auto_proxy_complete_n
lea ecx, [eax + 0x20]
push ecx
lea ecx, [eax + 8]
push ecx
push eax
push 5
push 4
push 0
push 0x1f
push 0
push 0
call fcn.00450b00
add esp, 0x28
mov edi, dword [ebp + 8]
mov eax, 0x60
mov esi, 0x78
cmp byte [edi + 0xfa], 0
cmove esi, eax
add esi, ebx
mov ecx, esi
call fcn.004be170
test al, al
je 0x4d0e94
lea eax, [ebx + 0x90]
mov ecx, ebx
push eax
push edi
call fcn.004d12d0
test al, al
jne 0x4d0e94
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi]
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xb4]
mov esi, 0x6cca60
test eax, eax
mov edi, esi
cmovne edi, eax
test cl, cl
je 0x4d0ef7
push 4
push 0
push 0
push edi
mov byte [ebp + 0x13], 1
call fcn.00534ac0
xor ecx, ecx
mov esi, eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.005383bb
push 0
push esi
push eax
push edi
mov dword [ebp - 8], eax
call fcn.00534ac0
mov edi, dword [ebp - 8]
add esp, 0x24
mov esi, 0x6cca60
jmp 0x4d0f08
mov edi, dword [ebx + 0x110]
mov dword [ebp - 8], 0
mov byte [ebp + 0x13], 0
mov eax, dword [ebx + 0x10c]
mov dword [ebp - 4], edi
test eax, eax
jne 0x4d0f40
mov eax, dword [ebx + 0x104]
test eax, eax
je 0x4d10b1
push 0
push 0
push 0
push 0
push str.SteamHTTPClient
call eax
mov dword [ebx + 0x10c], eax
test eax, eax
je 0x4d10b1
cmp dword [ebx + 0x100], 0
je 0x4d10b1
mov ecx, dword [ebp + 8]
mov edx, esi
mov eax, dword [ecx + 0x68]
test eax, eax
cmovne edx, eax
mov eax, dword [ecx + 0x64]
test eax, eax
mov ecx, esi
push edx
cmovne ecx, eax
mov eax, 0x6cf950
push ecx
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0xfa], 0
cmove eax, esi
push eax
lea eax, [ebp - 0x2c]
push str.http_s:___s_s
push eax
call fcn.0049e1d0
mov eax, dword [ebx + 0x100]
add esp, 0x14
cmp byte [ebp - 0x1d], 0
mov dword [ebp - 0x44], 2
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0xc], eax
jge 0x4d0fcd
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
jne 0x4d0fd0
mov eax, 0x6cca60
jmp 0x4d0fd7
lea ecx, [ebp - 0x2c]
test ecx, ecx
mov eax, esi
cmovne eax, ecx
push 4
push 0
push 0
push eax
mov dword [ebp - 0x1c], eax
call fcn.00534ac0
xor ecx, ecx
mov esi, eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.005383bb
push 0
mov edi, eax
push esi
push edi
push dword [ebp - 0x1c]
call fcn.00534ac0
add esp, 0x24
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x44]
push eax
push edi
push dword [ebx + 0x10c]
call dword [ebp - 0xc]
push edi
mov esi, eax
call fcn.005383c4
add esp, 4
test esi, esi
jne 0x4d112e
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x2eef
jne 0x4d109a
cmp byte [ebp - 0x1d], 0
mov esi, dword [ebx + 0x100]
mov dword [ebp - 0x30], 1
jge 0x4d1062
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x4d1065
mov eax, 0x6cca60
jmp 0x4d1065
lea eax, [ebp - 0x2c]
push 4
push eax
lea ecx, [ebp - 0x64]
call fcn.004cdd70
mov ecx, eax
call fcn.00453d70
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x44]
push ecx
push eax
push dword [ebx + 0x10c]
call esi
lea ecx, [ebp - 0x64]
mov esi, eax
call fcn.00451c40
test esi, esi
jne 0x4d112e
cmp byte [ebp - 0x1d], 0
jge 0x4d10b1
call fcn.00521c10
push 0
push dword [ebp - 0x2c]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
push dword [ebp - 4]
and dword [ebp - 0x50], 0xff0fffff
xor eax, eax
push str.Failed_to_evaluate_PAC_URL__ls_n
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x4c]
mov byte [ebp - 0x4d], 0
and dword [ebp - 0x50], 0xfff00000
push eax
lea eax, [ebp - 0x54]
mov dword [ebp - 0x54], 0
push eax
push 1
push 4
push 0
push 0x1f
push 0
push 0
mov dword [ebp - 0x38], 3
call fcn.00450b00
add esp, 0x2c
xor bl, bl
cmp byte [ebp + 0x13], 0
je 0x4d1123
push dword [ebp - 8]
call fcn.005383c4
add esp, 4
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [ebp - 0x1d], 0
jge 0x4d1142
mov edi, dword [ebp - 0x2c]
test edi, edi
jne 0x4d1145
mov edi, 0x6cca60
jmp 0x4d1145
lea edi, [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0xb4]
test eax, eax
mov esi, str._direct_
push 0
push 0
cmovne esi, eax
call fcn.00457a50
push edi
push esi
push dword [ebp - 4]
lea ecx, [eax + 0x20]
push str.Explicit_PAC_URL__ls_returned__ls_for__s_n
push ecx
lea ecx, [eax + 8]
push ecx
push eax
push 5
push 4
push 0
push 0x1f
push 0
push 0
call fcn.00450b00
mov eax, dword [ebp - 0x10]
add esp, 0x34
mov esi, dword [sym.imp.KERNEL32.dll_GlobalFree]
test eax, eax
je 0x4d1198
push eax
call esi
cmp dword [ebp - 0x14], 0
je 0x4d1219
push dword [ebp + 8]
mov ecx, dword [ebx + 0xa8]
call fcn.004b9720
mov edi, dword [ebp - 0x14]
mov ebx, 0x6cca60
mov dword [ebp - 0xc], eax
xor eax, eax
test edi, edi
mov byte [ebp + 0xb], 0
cmovne ebx, eax
test ebx, ebx
jne 0x4d11f1
push 4
push ebx
push ebx
push edi
mov byte [ebp + 0xb], 1
call fcn.00534900
mov esi, eax
push esi
call fcn.005383bb
push 0
mov ebx, eax
push esi
push ebx
push edi
call fcn.00534900
mov esi, dword [sym.imp.KERNEL32.dll_GlobalFree]
add esp, 0x24
mov ecx, dword [ebp + 0xc]
lea eax, [ecx + 0x16]
push eax
push dword [ebp - 0xc]
push ebx
call fcn.004bd9c0
cmp byte [ebp + 0xb], 0
je 0x4d1210
push ebx
call fcn.005383c4
add esp, 4
push dword [ebp - 0x14]
call esi
mov bl, 1
jmp 0x4d121b
xor bl, bl
cmp byte [ebp - 0x1d], 0
jge 0x4d1112
call fcn.00521c10
push 0
push dword [ebp - 0x2c]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
jmp 0x4d1112