Function at 0x4d2bc0
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 0x4d30d6
cmp dword [ebx + 0x110], 0
jne 0x4d30d6
mov edx, dword [0x7db69c]
mov esi, 0x7db69c
cmp byte [ebx + 0xa4], cl
je 0x4d305d
cmp dword [ebx + 0xfc], 0
je 0x4d2c31
mov ecx, dword [0x7d9a88]
mov eax, ecx
sub eax, edx
cmp eax, 0xb4
jb 0x4d2c31
mov eax, edx
lock cmpxchg dword [esi], ecx
cmp eax, edx
jne 0x4d2c31
mov eax, dword [ebp + 0x10]
mov byte [eax], 1
cmp byte [ebx + 0xa4], 0
je 0x4d305d
cmp byte [0x7db6a4], 0
jne 0x4d305d
mov eax, dword [ebx + 0x10c]
test eax, eax
jne 0x4d2c80
mov eax, dword [ebx + 0x104]
test eax, eax
je 0x4d302c
push 0
push 0
push 0
push 0
push str.SteamHTTPClient
call eax
mov dword [ebx + 0x10c], eax
test eax, eax
je 0x4d302c
cmp dword [ebx + 0x100], 0
je 0x4d302c
mov edi, dword [ebp + 8]
mov esi, 0x6e2a60
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 + 0x102], 0
push ecx
mov eax, 0x6e5944
cmove eax, esi
push eax
lea eax, [ebp - 0x24]
push str.http_s:___s_s
push eax
call fcn.004b62b0
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.0046b410
mov eax, dword [0x7d9a88]
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.00453d90
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 0x4d2de2
cmp esi, 0x2ee6
jne 0x4d2d9c
mov esi, dword [ebx + 0x100]
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x40], 2
call fcn.00453d90
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 0x4d2de2
cmp esi, 0x2eef
jne 0x4d2ddd
mov esi, dword [ebx + 0x100]
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x30], 1
call fcn.00453d90
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 0x4d2de2
mov edi, dword [ebp - 0x14]
jmp 0x4d2def
mov edi, dword [ebp - 0x14]
test edi, edi
je 0x4d2def
cmp word [edi], 0
jne 0x4d2dfc
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 8]
cmp eax, 0x3e8
jae 0x4d2e1d
mov eax, dword [0x7db69c]
mov edx, dword [ebp - 0xc]
cmp eax, edx
jae 0x4d2e1a
cmp byte [0x7db6a4], 0
jne 0x4d2e1a
mov edi, 0x7db69c
lock cmpxchg dword [edi], edx
mov edi, dword [ebp - 0x14]
test ecx, ecx
je 0x4d2fe7
mov eax, dword [ebp - 0x10]
mov dword [ebp + 0x10], eax
test eax, eax
je 0x4d2e67
push 4
push 0
push 0
push eax
call fcn.005496f0
mov esi, eax
push esi
call fcn.0054d1fb
push 0
mov edi, eax
push esi
push edi
push dword [ebp + 0x10]
mov dword [ebp - 8], edi
call fcn.005496f0
mov eax, 1
mov dword [ebp + 0x10], edi
mov edi, dword [ebp - 0x14]
add esp, 0x24
mov dword [ebp - 4], eax
jmp 0x4d2e77
mov eax, dword [ebp + 8]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
mov dword [ebp + 0x10], 0x6eec68
test edi, edi
je 0x4d2eab
push 4
push 0
or eax, 2
push 0
push edi
mov dword [ebp - 4], eax
call fcn.005496f0
mov esi, eax
push esi
call fcn.0054d1fb
push 0
push esi
mov esi, eax
mov dword [ebp - 0xc], eax
push esi
push edi
call fcn.005496f0
add esp, 0x24
mov edi, esi
jmp 0x4d2eb3
mov esi, dword [ebp + 8]
mov edi, 0x6eec68
push 0
push 0
lea ecx, [ebp - 0x8c]
call fcn.00457a70
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.00450b10
mov eax, dword [ebp - 4]
add esp, 0x30
test al, 2
je 0x4d2f01
and eax, 0xfffffffd
push esi
mov dword [ebp - 4], eax
call fcn.0054d204
mov eax, dword [ebp - 4]
add esp, 4
test al, 1
je 0x4d2f10
push dword [ebp - 8]
call fcn.0054d204
add esp, 4
mov eax, dword [ebp - 0x10]
mov esi, dword [sym.imp.KERNEL32.dll_GlobalFree]
test eax, eax
je 0x4d2f20
push eax
call esi
cmp dword [ebp - 0x14], 0
je 0x4d2fc7
mov edi, dword [ebp + 8]
mov ecx, dword [ebx + 0xa8]
push edi
call fcn.004ba7f0
mov edi, dword [ebp - 0x14]
mov ebx, 0x6e2a60
mov dword [ebp + 0x10], eax
xor eax, eax
test edi, edi
mov byte [ebp + 0xb], 0
cmovne ebx, eax
test ebx, ebx
jne 0x4d2f7e
push 4
push ebx
push ebx
push edi
mov byte [ebp + 0xb], 1
call fcn.005496f0
mov esi, eax
push esi
call fcn.0054d1fb
push 0
mov ebx, eax
push esi
push ebx
push edi
call fcn.005496f0
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.004c08d0
cmp byte [ebp + 0xb], 0
je 0x4d2f9d
push ebx
call fcn.0054d204
add esp, 4
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4d2fa7
push eax
call esi
lea ecx, [ebp - 0x64]
mov bl, 1
call fcn.00451c50
push dword [ebp - 0x24]
call fcn.0054d204
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.00451c50
push dword [ebp - 0x24]
call fcn.0054d204
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.00457a70
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.00450b10
add esp, 0x2c
lea ecx, [ebp - 0x64]
call fcn.00451c50
push dword [ebp - 0x24]
call fcn.0054d204
add esp, 4
push 0
push 0
lea ecx, [ebp - 0xb4]
call fcn.00457a70
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.00450b10
add esp, 0x28
mov edi, dword [ebp + 8]
mov eax, 0x60
mov esi, 0x78
cmp byte [edi + 0x102], 0
cmove esi, eax
add esi, ebx
mov ecx, esi
call fcn.004c0d50
test al, al
je 0x4d30cb
cmp word [esi + 0x16], 0
je 0x4d30cb
lea eax, [ebx + 0x90]
mov ecx, ebx
push eax
push edi
call fcn.004d3510
test al, al
jne 0x4d30cb
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, 0x6e2a60
test eax, eax
mov edi, esi
cmovne edi, eax
test cl, cl
je 0x4d312e
push 4
push 0
push 0
push edi
mov byte [ebp + 0x13], 1
call fcn.005498b0
xor ecx, ecx
mov esi, eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0054d1fb
push 0
push esi
push eax
push edi
mov dword [ebp - 8], eax
call fcn.005498b0
mov edi, dword [ebp - 8]
add esp, 0x24
mov esi, 0x6e2a60
jmp 0x4d313f
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 0x4d3177
mov eax, dword [ebx + 0x104]
test eax, eax
je 0x4d32e8
push 0
push 0
push 0
push 0
push str.SteamHTTPClient
call eax
mov dword [ebx + 0x10c], eax
test eax, eax
je 0x4d32e8
cmp dword [ebx + 0x100], 0
je 0x4d32e8
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, 0x6e5944
push ecx
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x102], 0
cmove eax, esi
push eax
lea eax, [ebp - 0x2c]
push str.http_s:___s_s
push eax
call fcn.0049eb00
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 0x4d3204
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
jne 0x4d3207
mov eax, 0x6e2a60
jmp 0x4d320e
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.005498b0
xor ecx, ecx
mov esi, eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0054d1fb
push 0
mov edi, eax
push esi
push edi
push dword [ebp - 0x1c]
call fcn.005498b0
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.0054d204
add esp, 4
test esi, esi
jne 0x4d3365
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x2eef
jne 0x4d32d1
cmp byte [ebp - 0x1d], 0
mov esi, dword [ebx + 0x100]
mov dword [ebp - 0x30], 1
jge 0x4d3299
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x4d329c
mov eax, 0x6e2a60
jmp 0x4d329c
lea eax, [ebp - 0x2c]
push 4
push eax
lea ecx, [ebp - 0x64]
call fcn.0046b410
mov ecx, eax
call fcn.00453d90
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.00451c50
test esi, esi
jne 0x4d3365
cmp byte [ebp - 0x1d], 0
jge 0x4d32e8
call fcn.00536730
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.00450b10
add esp, 0x2c
xor bl, bl
cmp byte [ebp + 0x13], 0
je 0x4d335a
push dword [ebp - 8]
call fcn.0054d204
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 0x4d3379
mov edi, dword [ebp - 0x2c]
test edi, edi
jne 0x4d337c
mov edi, 0x6e2a60
jmp 0x4d337c
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.00457a70
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.00450b10
mov eax, dword [ebp - 0x10]
add esp, 0x34
mov esi, dword [sym.imp.KERNEL32.dll_GlobalFree]
test eax, eax
je 0x4d33cf
push eax
call esi
cmp dword [ebp - 0x14], 0
je 0x4d3450
push dword [ebp + 8]
mov ecx, dword [ebx + 0xa8]
call fcn.004ba7f0
mov edi, dword [ebp - 0x14]
mov ebx, 0x6e2a60
mov dword [ebp - 0xc], eax
xor eax, eax
test edi, edi
mov byte [ebp + 0xb], 0
cmovne ebx, eax
test ebx, ebx
jne 0x4d3428
push 4
push ebx
push ebx
push edi
mov byte [ebp + 0xb], 1
call fcn.005496f0
mov esi, eax
push esi
call fcn.0054d1fb
push 0
mov ebx, eax
push esi
push ebx
push edi
call fcn.005496f0
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.004c08d0
cmp byte [ebp + 0xb], 0
je 0x4d3447
push ebx
call fcn.0054d204
add esp, 4
push dword [ebp - 0x14]
call esi
mov bl, 1
jmp 0x4d3452
xor bl, bl
cmp byte [ebp - 0x1d], 0
jge 0x4d3349
call fcn.00536730
push 0
push dword [ebp - 0x2c]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
jmp 0x4d3349