Function at 0x4dc570
Capabilities:
Contain obfuscated stackstrings
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8d0
push ebx
push esi
mov esi, ecx
lea ecx, [ebp - 0x50]
push edi
call fcn.004af690
call fcn.0052d290
mov dword [ebp - 0x50], eax
mov ecx, 0x6e0a80
mov eax, dword [esi + 0x38]
mov dword [ebp - 0x4c], edx
mov eax, dword [eax + 0x268]
test eax, eax
cmovne ecx, eax
push ecx
mov eax, esp
mov dword [eax], ecx
call fcn.0049b7d0
push 0x2000
call fcn.0054a46b
add esp, 8
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], 0
mov dword [ebp - 0x1c], 0x33323130
mov byte [eax], 0
xor eax, eax
mov dword [ebp - 0x18], 0x37363534
mov dword [ebp - 0x14], 0x62613938
mov dword [ebp - 0x10], 0x66656463
mov dword [ebp - 4], eax
lea esp, [esp]
movsx ebx, byte [ebp + eax - 0x1c]
xor edi, edi
jmp 0x4dc600
mov eax, dword [esi + 0x38]
mov ecx, 0x6e0a80
movsx edx, byte [ebp + edi - 0x1c]
push edx
push ebx
mov eax, dword [eax + 0x268]
test eax, eax
cmovne ecx, eax
lea eax, [ebp - 0xc]
push ecx
push str._s_c_c
push eax
call fcn.004d7490
push dword [ebp - 0xc]
call fcn.0049b7d0
inc edi
add esp, 0x18
cmp edi, 0x10
jb 0x4dc600
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp eax, 0x10
jb 0x4dc5f0
push ecx
mov eax, esp
mov ecx, 0x6e0a80
mov dword [eax], 0x6e3560
mov eax, dword [esi + 0x38]
mov eax, dword [eax + 0x268]
test eax, eax
cmovne ecx, eax
push ecx
mov eax, esp
mov dword [eax], ecx
lea ecx, [ebp - 0x8d0]
call fcn.0049a040
push 0x400
push 0
push 0xc
lea ecx, [ebp - 0x98]
call fcn.004997e0
cmp byte [esi + 0x3c], 0
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0x4d4b70
mov dword [ebp - 0x80], 0
jne 0x4dcb6f
jmp 0x4dc6b0
lea ecx, [ebp - 0x8d0]
call fcn.0049ab10
test al, al
je 0x4dc863
lea ecx, [ebp - 0x8d0]
call fcn.0049a870
lea ecx, [ebp - 0x8d0]
test al, al
je 0x4dc81f
call fcn.0049b910
mov ecx, dword [esi + 0x38]
mov edx, 0x6e0a80
push eax
lea eax, [ebp - 0xc]
mov ecx, dword [ecx + 0x268]
test ecx, ecx
cmovne edx, ecx
push edx
push 0x6e6650
push eax
call fcn.004d7490
add esp, 0xc
mov eax, esp
push ecx
mov ecx, esp
mov dword [eax], 0x6e3560
mov eax, dword [ebp - 0xc]
mov dword [ecx], eax
lea ecx, [ebp - 0x4b4]
call fcn.0049a040
cmp byte [esi + 0x3c], 0
jne 0x4dc812
lea esp, [esp]
lea ecx, [ebp - 0x4b4]
call fcn.0049ab10
test al, al
je 0x4dc812
lea ecx, [ebp - 0x4b4]
call fcn.0049a870
lea ecx, [ebp - 0x4b4]
test al, al
jne 0x4dc7c0
mov dword [ebp - 0x38], 0
call fcn.0049b910
push eax
lea ecx, [ebp - 0x38]
call fcn.0049f6a0
lea ecx, [ebp - 0x4b4]
call fcn.0049b900
lea ecx, [ebp - 0x4b4]
mov dword [ebp - 0x30], eax
call fcn.0049b920
mov ecx, dword [esi + 0x38]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
add dword [ecx + 0x290], eax
lea eax, [ebp - 0x38]
push eax
adc dword [ecx + 0x294], 0
lea ecx, [ebp - 0x98]
call fcn.004d8e00
call fcn.00533ba0
push 0
push dword [ebp - 0x38]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x1c]
mov ecx, eax
call edx
jmp 0x4dc808
call fcn.0049b910
lea ecx, [ebp - 0x8d0]
mov edi, eax
call fcn.0049b910
mov ecx, dword [esi + 0x38]
mov edx, 0x6e0a80
push edi
push eax
lea eax, [ebp - 0xc]
mov ecx, dword [ecx + 0x268]
test ecx, ecx
cmovne edx, ecx
push edx
push str._s_s_s
push eax
call fcn.004d7490
mov eax, dword [ebp - 0xc]
add esp, 0x10
mov ecx, esp
mov dword [ecx], eax
call fcn.0049b260
add esp, 4
cmp byte [esi + 0x3c], 0
je 0x4dc730
lea ecx, [ebp - 0x4b4]
call fcn.0049a410
jmp 0x4dc859
call fcn.0049b910
mov ecx, dword [esi + 0x38]
mov edx, 0x6e0a80
push eax
lea eax, [ebp - 0xc]
mov ecx, dword [ecx + 0x268]
test ecx, ecx
cmovne edx, ecx
push edx
push 0x6e6650
push eax
call fcn.004d7490
mov eax, dword [ebp - 0xc]
add esp, 0xc
mov ecx, esp
mov dword [ecx], eax
call fcn.0049a910
add esp, 4
cmp byte [esi + 0x3c], 0
je 0x4dc6b0
cmp byte [esi + 0x3c], 0
jne 0x4dcb6f
mov edx, dword [ebp - 0x88]
sub edx, 1
mov dword [ebp - 0x20], edx
js 0x4dca63
lea ecx, [edx + edx*2]
shl ecx, 2
mov dword [ebp - 0x24], ecx
jmp 0x4dc890
mov edi, dword [esi + 0x38]
mov eax, dword [ebp - 0x94]
add eax, ecx
mov dword [ebp - 4], eax
mov ebx, dword [edi + 0x2e8]
cmp ebx, 0xffffffff
jne 0x4dc920
mov ebx, dword [edi + 0x2f0]
lea ecx, [edi + 0x2d0]
call fcn.0046ffe0
cmp ebx, eax
jne 0x4dc8d1
push 1
lea ecx, [edi + 0x2d0]
call fcn.00499a60
mov ebx, dword [edi + 0x2f0]
cmp ebx, 0xffffffff
jne 0x4dc8f2
push str.m_TotalElements___InvalidIndex__
push 0x1a2
push str.c:_buildslave_steam_rel_client_hotfix_win32_build_srcpublic_tier1utllinkedlist.h
call fcn.00533fe0
add esp, 0xc
test al, al
jne 0x4dc8f2
int3
mov ebx, dword [edi + 0x2f0]
lea eax, [ebx + 1]
mov dword [edi + 0x2f0], eax
cmp ebx, 0xffffffff
jne 0x4dc918
push str.._AV__CUtlLinkedList_UCachedFileLRUData_t_CHTTPRequestCache__H__
push str._s_overflow__n
call fcn.00534640
add esp, 8
mov edx, dword [edi + 0x2d4]
jmp 0x4dc933
mov edx, dword [edi + 0x2d4]
lea eax, [ebx + ebx*4]
mov eax, dword [edx + eax*4 + 0x10]
mov dword [edi + 0x2e8], eax
lea ecx, [ebx + ebx*4]
shl ecx, 2
mov dword [ebp - 0x54], ecx
push ebx
mov dword [edx + ecx + 0xc], ebx
mov eax, dword [edi + 0x2d4]
mov dword [eax + ecx + 0x10], ebx
lea ecx, [edi + 0x2d0]
mov eax, dword [edi + 0x2d4]
mov dword [edi + 0x2f4], eax
call fcn.004d8f50
test al, al
jne 0x4dc982
push str.IsValidIndex_elem_
push 0x2a8
push str.c:_buildslave_steam_rel_client_hotfix_win32_build_srcpublic_tier1utllinkedlist.h
call fcn.00533fe0
add esp, 0xc
test al, al
jne 0x4dc982
int3
push ebx
lea ecx, [edi + 0x2d0]
call fcn.004dd670
mov ecx, dword [edi + 0x2d4]
mov edx, dword [ebp - 0x54]
mov dword [ecx + edx + 0x10], 0xffffffff
mov eax, dword [edi + 0x2e4]
mov dword [ecx + edx + 0xc], eax
mov dword [edi + 0x2e4], ebx
mov eax, dword [ecx + edx + 0xc]
cmp eax, 0xffffffff
jne 0x4dc9c0
mov dword [edi + 0x2e0], ebx
jmp 0x4dc9cd
lea ecx, [eax + eax*4]
mov eax, dword [edi + 0x2d4]
mov dword [eax + ecx*4 + 0x10], ebx
inc dword [edi + 0x2ec]
mov ecx, 0x6e0a80
mov edi, dword [edi + 0x2d4]
mov eax, dword [ebp - 4]
add edi, edx
mov dword [edi], 0
mov eax, dword [eax]
test eax, eax
cmovne ecx, eax
push ecx
mov ecx, edi
call fcn.0049f6a0
mov ecx, dword [ebp - 4]
mov edx, 0x6e0a80
mov dword [ebp - 0x2c], 0
mov eax, dword [ecx + 4]
mov dword [edi + 4], eax
mov eax, dword [ecx + 8]
mov dword [edi + 8], eax
mov eax, dword [ecx]
test eax, eax
mov edi, dword [esi + 0x38]
lea ecx, [ebp - 0x2c]
cmovne edx, eax
push edx
call fcn.0049f6a0
push 1
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x28], ebx
push eax
lea ecx, [edi + 0x298]
call fcn.004ce800
call fcn.00533ba0
push 0
push dword [ebp - 0x2c]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
dec edx
sub ecx, 0xc
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
test edx, edx
jns 0x4dc890
call fcn.0052d290
mov ecx, dword [ebp - 0x4c]
mov edi, eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], edx
cmp edx, ecx
ja 0x4dca90
jb 0x4dca80
cmp edi, eax
jae 0x4dca90
mov edi, eax
mov edx, ecx
add edi, 1
mov dword [ebp - 0x48], edi
adc edx, 0
mov dword [ebp - 0x44], edx
push dword [0x7d8a64]
sub edi, eax
mov ebx, 0x3e8
push dword [0x7d8a60]
sbb edx, ecx
mov eax, edx
mul ebx
mov ecx, eax
mov eax, edi
mul ebx
add ecx, edx
push ecx
push eax
call fcn.0054ab70
push edx
push eax
lea eax, [ebp - 0x14]
push str.CHTTPRequestCache_took__lld_milliseconds_to_initialize_n
push eax
call fcn.004b60e0
add esp, 0x10
push dword [eax]
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push dword [ebp - 0x14]
call fcn.0054a474
and dword [ebp - 0x78], 0xff0fffff
xor eax, eax
mov ecx, dword [ebp - 0x48]
add esp, 4
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
push dword [0x7d8a64]
mov dword [ebp - 0x68], eax
push dword [0x7d8a60]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x44]
mov byte [ebp - 0x75], 0
and dword [ebp - 0x78], 0xfff00000
sub ecx, dword [ebp - 0x50]
mov dword [ebp - 0x7c], 0
sbb eax, dword [ebp - 0x4c]
mul ebx
mov dword [ebp - 0x60], 3
mov edi, eax
mov eax, ecx
mul ebx
add edi, edx
push edi
push eax
call fcn.0054ab70
push edx
push eax
push str.CHTTPRequestCache_took__lld_milliseconds_to_initialize_n
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x7c]
push eax
push 4
push 4
push 0
push 0x1f
push 0
push 0
call fcn.00450b80
mov eax, dword [esi + 0x38]
add esp, 0x30
mov byte [eax + 0x278], 1
lea ecx, [ebp - 0x98]
call fcn.004cf420
lea ecx, [ebp - 0x8d0]
call fcn.0049a410
push dword [ebp - 0xc]
call fcn.0054a474
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret