Function at 0x40b159
Capabilities:
Download url
Receive data

Disassembly:
push ebp
lea ebp, [esp - 0x2260]
mov eax, 0x2260
call fcn.0046b520
push 0xffffffffffffffff
push 0x4a81fa
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x4d9d10]
xor eax, ebp
mov dword [ebp + 0x225c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor ebx, ebx
push ebx
mov dword [ebp - 0x10], ecx
call fcn.0046f380
pop ecx
lea ecx, [ebp + 0x213c]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
call fcn.00402c19
push 0xff
lea eax, [ebp + 0x215d]
push ebx
push eax
mov dword [ebp - 4], ebx
mov byte [ebp + 0x215c], bl
call fcn.0046b120
add esp, 0xc
lea ecx, [ebp]
call fcn.0040be0c
push str..ImageAutopatchAutoPatchURL.bin
lea ecx, [ebp]
mov byte [ebp - 4], 1
call fcn.0040c2a4
test eax, eax
jne 0x40b24d
push ebx
push str.error
push str.Failed_to_load_update_data
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.0040beea
or dword [ebp - 4], 0xffffffff
push ebx
push 1
lea ecx, [ebp + 0x213c]
call fcn.00402a4f
lea ecx, [ebp + 0x213c]
call fcn.0040265a
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x225c]
xor ecx, ebp
call fcn.0046b510
add ebp, 0x2260
leave
ret
lea ecx, [ebp]
call fcn.0040be85
mov esi, 0x4dd748
mov edi, 0x4dd848
jmp 0x40b3b1
lea eax, [ebp + 0x215c]
push eax
call fcn.0040bfc0
lea eax, [ebp + 0x215c]
push str.UpUrl
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b28d
push esi
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push str.HomePage
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b2ae
push 0x4dd868
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push str.PayUrl
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b2cf
push 0x4dd968
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push 0x4b1338
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b2f0
push 0x4dda68
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push 0x4b1330
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b311
push 0x4ddb68
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push str.ExeName
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b32f
push 0x4ddba8
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push str.LunchVer
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b349
push edi
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push str.GGUrl
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b367
push 0x4ddbc8
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push str.UpLuchUrl
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b385
push 0x4ddcc8
jmp 0x40b3a1
lea eax, [ebp + 0x215c]
push str.LunchName
push eax
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
jne 0x40b3a9
push 0x4dddc8
lea ecx, [ebp]
call fcn.0040bfc0
lea ecx, [ebp]
call fcn.0040be85
lea ecx, [ebp]
test eax, eax
je 0x40b264
call fcn.0040be68
push str.MSO0000001
push edi
call fcn.0046e580
pop ecx
pop ecx
test eax, eax
je 0x40b3ef
mov ecx, dword [ebp - 0x10]
push ebx
push str.Patch
push str.MHAutoPatch_needs_to_be_updated_Please_wait...
call fcn.00414660
call fcn.004087c6
jmp 0x40b200
push dword [ebp - 0x14]
lea eax, [ebp + 0x215c]
push dword [ebp - 0x18]
push str._MyUpdata.txt_abc_d
push eax
call fcn.00405ca4
add esp, 0x10
push esi
lea ecx, [ebp + 0x213c]
call fcn.00403328
lea eax, [ebp + 0x215c]
push eax
lea ecx, [ebp + 0x213c]
call fcn.0040338c
cmp dword [ebp + 0x2158], 0x10
mov eax, dword [ebp + 0x2144]
jae 0x40b43c
lea eax, [ebp + 0x2144]
push ebx
push ebx
push str..ImageAutopatchMyUpdata.txt
push eax
push ebx
call sub.urlmon.dll_URLDownloadToFileA
test eax, eax
je 0x40b47f
xor esi, esi
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.0040beea
or dword [ebp - 4], 0xffffffff
push ebx
push 1
lea ecx, [ebp + 0x213c]
call fcn.00402a4f
lea ecx, [ebp + 0x213c]
call fcn.0040265a
mov eax, esi
jmp 0x40b22a
push 0x4b1284
lea ecx, [ebp - 0x3c]
call fcn.0040350c
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x1c]
push eax
mov ecx, 0x4dde34
mov byte [ebp - 4], 2
call fcn.00408943
mov esi, 0x4dde50
push eax
mov ecx, esi
mov byte [ebp - 4], 3
call fcn.0040798b
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 2
call fcn.00402930
push ebx
push 1
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 1
call fcn.00402a4f
lea ecx, [ebp - 0x3c]
call fcn.0040265a
call fcn.00433e70
push eax
lea ecx, [ebp - 0x10]
call fcn.004069de
mov ecx, esi
mov byte [ebp - 4], 4
call fcn.00405b34
cmp dword [eax + 0x3c], 0x10
jb 0x40b4fa
mov eax, dword [eax + 0x28]
jmp 0x40b4fd
add eax, 0x28
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00407d85
pop ecx
pop ecx
lea ecx, [ebp - 0x10]
call fcn.0040621d
push eax
push 0x3f6
call fcn.0042e8c0
mov ecx, eax
call fcn.0041f790
push ebx
push ebx
push ebx
push ebx
push ebx
push 0x40a703
call fcn.00426d60
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.00404a6f
xor esi, esi
inc esi
jmp 0x40b450