Function at 0x537945
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x796ea5
mov eax, dword fs:[0]
push eax
mov eax, 0x2c04
call fcn.00700fc0
mov eax, dword [0x8d3fc4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
and dword [ebp - 0x2830], 0
lea ecx, [ebp - 0x2840]
push 7
push str.GPCUtil
mov dword [ebp - 0x282c], 0xf
mov byte [ebp - 0x2840], 0
call fcn.00439710
and dword [ebp - 4], 0
lea eax, [ebp - 0x2840]
push eax
call fcn.006210e3
mov edi, eax
mov dword [esp], str.m_strDownloadUrl
xor eax, eax
mov dword [ebp - 0x2814], 0xf
mov byte [ebp - 0x2bec], al
lea ecx, [ebp - 0x2828]
push dword [ebp - 0x2bec]
mov dword [ebp - 0x2818], eax
push 0x10
mov byte [ebp - 0x2828], al
call fcn.0043a610
lea eax, [ebx + 0x60]
mov byte [ebp - 4], 1
push eax
mov dword [ebp - 0x2bfc], eax
lea eax, [ebp - 0x2858]
push eax
call fcn.0062113d
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2828]
mov byte [ebp - 4], 2
push ecx
push eax
lea ecx, [ebp - 0x2978]
call fcn.0061c551
mov esi, eax
xor eax, eax
mov byte [ebp - 4], 3
push eax
push 0x858903
lea ecx, [ebp - 0x2888]
mov dword [ebp - 0x2878], eax
mov dword [ebp - 0x2874], 0xf
mov byte [ebp - 0x2888], al
call fcn.00439710
lea eax, [ebp - 0x2870]
mov byte [ebp - 4], 4
push str.CHttpDownloadImplement::ReadData
push eax
call fcn.006212a1
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2888]
mov byte [ebp - 4], 5
push ecx
push eax
lea ecx, [ebp - 0x29a8]
call fcn.0061c551
push esi
push eax
mov ecx, edi
mov byte [ebp - 4], 6
call fcn.006215aa
lea ecx, [ebp - 0x2990]
call fcn.00438e20
lea ecx, [ebp - 0x29a8]
call fcn.00438e20
lea ecx, [ebp - 0x2870]
call fcn.00438e20
mov esi, 0x1000
mov eax, dword [ebp - 0x2874]
cmp eax, 0x10
jb 0x537b00
mov ecx, dword [ebp - 0x2888]
inc eax
mov dword [ebp - 0x2c04], eax
mov dword [ebp - 0x2c08], ecx
cmp eax, esi
jb 0x537af7
lea eax, [ebp - 0x2c04]
push eax
lea eax, [ebp - 0x2c08]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2c04]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2c08]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
and dword [ebp - 0x2878], 0
lea ecx, [ebp - 0x2960]
mov dword [ebp - 0x2874], 0xf
mov byte [ebp - 0x2888], 0
call fcn.00438e20
lea ecx, [ebp - 0x2978]
call fcn.00438e20
lea ecx, [ebp - 0x2858]
call fcn.00438e20
mov eax, dword [ebp - 0x2814]
cmp eax, 0x10
jb 0x537b85
mov ecx, dword [ebp - 0x2828]
inc eax
mov dword [ebp - 0x2c0c], eax
mov dword [ebp - 0x2c10], ecx
cmp eax, esi
jb 0x537b7c
lea eax, [ebp - 0x2c0c]
push eax
lea eax, [ebp - 0x2c10]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2c0c]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2c10]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
xor ecx, ecx
mov eax, dword [ebp - 0x282c]
mov dword [ebp - 0x2818], ecx
mov dword [ebp - 0x2814], 0xf
mov byte [ebp - 0x2828], cl
cmp eax, 0x10
jb 0x537bef
mov ecx, dword [ebp - 0x2840]
inc eax
mov dword [ebp - 0x2bf0], eax
mov dword [ebp - 0x2bec], ecx
cmp eax, esi
jb 0x537be4
lea eax, [ebp - 0x2bf0]
push eax
lea eax, [ebp - 0x2bec]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bf0]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bec]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
xor ecx, ecx
push 0x2800
push ecx
lea eax, [ebp - 0x2810]
mov dword [ebp - 0x2830], ecx
push eax
mov dword [ebp - 0x282c], 0xf
mov byte [ebp - 0x2840], cl
mov dword [ebp - 0x2c00], ecx
call fcn.00719250
and dword [ebp - 0x2bf4], 0
add esp, 0xc
cmp dword [ebx + 0x110], 0
je 0x5381d6
call fcn.006638da
mov esi, eax
lea eax, [ebx + 0x100]
cmp dword [eax + 0x14], 8
mov dword [ebp - 0x2bf8], eax
mov ecx, dword [esi]
mov edi, dword [ecx + 0x5c]
mov ecx, eax
jb 0x537c56
mov ecx, dword [eax]
push 0x80f6a8
push ecx
lea eax, [ebp - 0x2bf4]
mov ecx, edi
push eax
call dword [0x7f07dc]
mov ecx, esi
call edi
cmp dword [ebp - 0x2bf4], 0
jne 0x5381d6
call fcn.006638da
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 4]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
and dword [ebp - 0x2860], 0
lea ecx, [ebp - 0x2870]
push 7
push str.GPCUtil
mov dword [ebx + 0x54], eax
mov dword [ebp - 0x285c], 0xf
mov byte [ebp - 0x2870], 0
call fcn.00439710
lea eax, [ebp - 0x2870]
mov dword [ebp - 4], 7
push eax
call fcn.006210e3
and dword [ebp - 0x2848], 0
pop ecx
push 9
push str.m_dwError
lea ecx, [ebp - 0x2858]
mov dword [ebp - 0x2bf0], eax
mov dword [ebp - 0x2844], 0xf
mov byte [ebp - 0x2858], 0
call fcn.00439710
push dword [ebx + 0x54]
lea eax, [ebp - 0x2990]
mov byte [ebp - 4], 8
push eax
call fcn.006211a2
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2858]
mov byte [ebp - 4], 9
push ecx
push eax
lea ecx, [ebp - 0x2a38]
call fcn.0061c551
mov ebx, eax
push 0xf
pop esi
xor eax, eax
mov byte [ebp - 4], 0xa
push str.m_strDownloadFileName
mov byte [ebp - 0x2bec], al
lea ecx, [ebp - 0x2888]
push dword [ebp - 0x2bec]
mov dword [ebp - 0x2878], eax
push 0x15
mov dword [ebp - 0x2874], esi
mov byte [ebp - 0x2888], al
call fcn.0043a610
push dword [ebp - 0x2bf8]
lea eax, [ebp - 0x2960]
mov byte [ebp - 4], 0xb
push eax
call fcn.0062113d
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2888]
mov byte [ebp - 4], 0xc
push ecx
push eax
lea ecx, [ebp - 0x2a08]
call fcn.0061c551
mov edi, eax
mov byte [ebp - 4], 0xd
xor eax, eax
push str.m_strDownloadUrl
mov byte [ebp - 0x2bec], al
lea ecx, [ebp - 0x2828]
push dword [ebp - 0x2bec]
mov dword [ebp - 0x2818], eax
push 0x10
mov dword [ebp - 0x2814], esi
mov byte [ebp - 0x2828], al
call fcn.0043a610
push dword [ebp - 0x2bfc]
lea eax, [ebp - 0x2948]
mov byte [ebp - 4], 0xe
push eax
call fcn.0062113d
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2828]
mov byte [ebp - 4], 0xf
push ecx
push eax
lea ecx, [ebp - 0x29d8]
call fcn.0061c551
mov esi, eax
xor eax, eax
mov byte [ebp - 4], 0x10
push eax
push 0x858903
lea ecx, [ebp - 0x2840]
mov dword [ebp - 0x2830], eax
mov dword [ebp - 0x282c], 0xf
mov byte [ebp - 0x2840], al
call fcn.00439710
lea eax, [ebp - 0x2a50]
mov byte [ebp - 4], 0x11
push str.CHttpDownloadImplement::ReadData.create_file_failed.
push eax
call fcn.006212a1
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2840]
mov byte [ebp - 4], 0x12
push ecx
push eax
lea ecx, [ebp - 0x2af8]
call fcn.0061c551
mov ecx, dword [ebp - 0x2bf0]
push ebx
push edi
push esi
push eax
mov byte [ebp - 4], 0x13
call fcn.00621579
lea ecx, [ebp - 0x2ae0]
call fcn.00438e20
lea ecx, [ebp - 0x2af8]
call fcn.00438e20
lea ecx, [ebp - 0x2a50]
call fcn.00438e20
mov eax, dword [ebp - 0x282c]
mov esi, 0x1000
push 0x10
pop edi
cmp eax, edi
jb 0x537eee
mov ecx, dword [ebp - 0x2840]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x537ee5
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
xor ebx, ebx
mov dword [ebp - 0x282c], 0xf
lea ecx, [ebp - 0x29c0]
mov dword [ebp - 0x2830], ebx
mov byte [ebp - 0x2840], bl
call fcn.00438e20
lea ecx, [ebp - 0x29d8]
call fcn.00438e20
lea ecx, [ebp - 0x2948]
call fcn.00438e20
mov eax, dword [ebp - 0x2814]
cmp eax, edi
jb 0x537f72
mov ecx, dword [ebp - 0x2828]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x537f69
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
lea ecx, [ebp - 0x29f0]
mov dword [ebp - 0x2818], ebx
mov dword [ebp - 0x2814], 0xf
mov byte [ebp - 0x2828], bl
call fcn.00438e20
lea ecx, [ebp - 0x2a08]
call fcn.00438e20
lea ecx, [ebp - 0x2960]
call fcn.00438e20
mov eax, dword [ebp - 0x2874]
cmp eax, edi
jb 0x537ff4
mov ecx, dword [ebp - 0x2888]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x537feb
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
lea ecx, [ebp - 0x2a20]
mov dword [ebp - 0x2878], ebx
mov dword [ebp - 0x2874], 0xf
mov byte [ebp - 0x2888], bl
call fcn.00438e20
lea ecx, [ebp - 0x2a38]
call fcn.00438e20
lea ecx, [ebp - 0x2990]
call fcn.00438e20
mov eax, dword [ebp - 0x2844]
cmp eax, edi
jb 0x538076
mov ecx, dword [ebp - 0x2858]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x53806d
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
mov eax, dword [ebp - 0x285c]
mov dword [ebp - 0x2848], ebx
mov dword [ebp - 0x2844], 0xf
mov byte [ebp - 0x2858], bl
cmp eax, edi
jb 0x538f90
mov ecx, dword [ebp - 0x2870]
inc eax
mov dword [ebp - 0x2bf0], ecx
mov dword [ebp - 0x2bec], eax
cmp eax, esi
jb 0x5380d2
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
jmp 0x538f90
and dword [ebp - 0x2bf8], 0
call fcn.006638da
mov edi, eax
lea eax, [ebp - 0x2bf8]
push eax
push 0x2800
lea eax, [ebp - 0x2810]
mov ecx, dword [edi]
push eax
push dword [ebx + 0x50]
mov esi, dword [ecx + 0x200]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
test eax, eax
je 0x538bc1
cmp dword [ebp - 0x2bf8], 0
mov edi, dword [ebx + 0xfc]
je 0x538832
test edi, edi
je 0x538154
mov eax, dword [edi]
push dword [ebp - 0x2bf8]
mov esi, dword [eax]
lea eax, [ebp - 0x2810]
push eax
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
lea ecx, [ebp - 0x2bf8]
push ecx
lea ecx, [ebp - 0x2810]
push ecx
push 0x532a30
lea ecx, [ebx + 8]
call fcn.005325aa
cmp dword [ebp - 0x2bf4], 0
je 0x5381a5
call fcn.006638da
push dword [ebp - 0x2bf4]
mov edi, eax
lea eax, [ebp - 0x2810]
push dword [ebp - 0x2bf8]
push 1
mov ecx, dword [edi]
push eax
mov esi, dword [ecx + 0x68]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
mov eax, dword [ebp - 0x2c00]
add eax, dword [ebp - 0x2bf8]
mov dword [ebp - 0x2c00], eax
cmp eax, 0x12c00000
ja 0x538491
mov ecx, 0x2800
lea eax, [ebp - 0x2810]
mov byte [eax], 0
inc eax
sub ecx, 1
jne 0x5381cd
mov al, byte [ebx + 0x134]
test al, al
je 0x5380e0
push 7
xor ebx, ebx
mov dword [ebp - 0x2904], 0xf
push str.GPCUtil
lea ecx, [ebp - 0x2918]
mov dword [ebp - 0x2908], ebx
mov byte [ebp - 0x2918], bl
call fcn.00439710
lea eax, [ebp - 0x2918]
mov dword [ebp - 4], 0x14
push eax
call fcn.006210e3
mov dword [esp], str.m_strDownloadUrl
lea ecx, [ebp - 0x2900]
mov byte [ebp - 0x2bec], bl
mov edi, eax
push dword [ebp - 0x2bec]
mov dword [ebp - 0x28f0], ebx
push 0x10
mov dword [ebp - 0x28ec], 0xf
mov byte [ebp - 0x2900], bl
call fcn.0043a610
push dword [ebp - 0x2bfc]
lea eax, [ebp - 0x2ac8]
mov byte [ebp - 4], 0x15
push eax
call fcn.0062113d
pop ecx
pop ecx
push ebx
lea ecx, [ebp - 0x2900]
mov byte [ebp - 4], 0x16
push ecx
push eax
lea ecx, [ebp - 0x2be8]
call fcn.0061c551
mov esi, eax
push ebx
push 0x858903
lea ecx, [ebp - 0x28e8]
mov byte [ebp - 4], 0x17
mov dword [ebp - 0x28d8], ebx
mov dword [ebp - 0x28d4], 0xf
mov byte [ebp - 0x28e8], bl
call fcn.00439710
lea eax, [ebp - 0x2ab0]
mov byte [ebp - 4], 0x18
push str.CHttpDownloadImplement__ReadData__task_cancelled_3__ReadData
push eax
call fcn.006212a1
pop ecx
pop ecx
push ebx
lea ecx, [ebp - 0x28e8]
mov byte [ebp - 4], 0x19
push ecx
push eax
lea ecx, [ebp - 0x2bb8]
call fcn.0061c551
push esi
push eax
mov ecx, edi
mov byte [ebp - 4], 0x1a
call fcn.00621a54
lea ecx, [ebp - 0x2ba0]
call fcn.00438e20
lea ecx, [ebp - 0x2bb8]
call fcn.00438e20
lea ecx, [ebp - 0x2ab0]
call fcn.00438e20
mov eax, dword [ebp - 0x28d4]
mov esi, 0x1000
cmp eax, 0x10
jb 0x538364
mov ecx, dword [ebp - 0x28e8]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x53835b
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
lea ecx, [ebp - 0x2bd0]
mov dword [ebp - 0x28d8], ebx
mov dword [ebp - 0x28d4], 0xf
mov byte [ebp - 0x28e8], bl
call fcn.00438e20
lea ecx, [ebp - 0x2be8]
call fcn.00438e20
lea ecx, [ebp - 0x2ac8]
call fcn.00438e20
mov eax, dword [ebp - 0x28ec]
cmp eax, 0x10
jb 0x5383e7
mov ecx, dword [ebp - 0x2900]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x5383de
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x2904]
mov dword [ebp - 0x28f0], ebx
mov dword [ebp - 0x28ec], 0xf
mov byte [ebp - 0x2900], bl
cmp eax, 0x10
jb 0x53844d
mov ecx, dword [ebp - 0x2918]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538444
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
cmp dword [ebp - 0x2bf4], 0
je 0x538474
call fcn.006638da
push dword [ebp - 0x2bf4]
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 0x64]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
xor eax, eax
inc eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00700c25
leave
ret
mov edi, dword [ebx + 0xfc]
mov ecx, 0x80004004
test edi, edi
je 0x5384b8
mov eax, dword [edi]
push ecx
push ecx
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
mov ecx, 0x80004004
lea eax, [ebp - 0x2bec]
mov dword [ebp - 0x2bec], ecx
push eax
lea eax, [ebp - 0x2bf0]
mov dword [ebp - 0x2bf0], ecx
push eax
push fcn.00532a10
lea ecx, [ebx + 8]
call fcn.0053242e
cmp dword [ebp - 0x2bf4], 0
je 0x538506
call fcn.006638da
push dword [ebp - 0x2bf4]
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 0x64]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
and dword [ebp - 0x2920], 0
lea ecx, [ebp - 0x2930]
push 7
push str.GPCUtil
mov dword [ebp - 0x291c], 0xf
mov byte [ebp - 0x2930], 0
call fcn.00439710
lea eax, [ebp - 0x2930]
mov dword [ebp - 4], 0x2f
push eax
call fcn.006210e3
mov ebx, eax
mov dword [esp], str.m_strDownloadUrl
xor eax, eax
mov dword [ebp - 0x28bc], 0xf
mov byte [ebp - 0x2bec], al
lea ecx, [ebp - 0x28d0]
push dword [ebp - 0x2bec]
mov dword [ebp - 0x28c0], eax
push 0x10
mov byte [ebp - 0x28d0], al
call fcn.0043a610
push dword [ebp - 0x2bfc]
lea eax, [ebp - 0x2a98]
mov byte [ebp - 4], 0x30
push eax
call fcn.0062113d
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x28d0]
mov byte [ebp - 4], 0x31
push ecx
push eax
lea ecx, [ebp - 0x2b88]
call fcn.0061c551
mov edi, eax
xor eax, eax
mov byte [ebp - 4], 0x32
push str.dwDownloadLength
mov byte [ebp - 0x2bec], al
lea ecx, [ebp - 0x28b8]
push dword [ebp - 0x2bec]
mov dword [ebp - 0x28a8], eax
push 0x10
mov dword [ebp - 0x28a4], 0xf
mov byte [ebp - 0x28b8], al
call fcn.0043a610
mov eax, dword [ebp - 0x2c00]
push eax
lea eax, [ebp - 0x2a80]
mov byte [ebp - 4], 0x33
push eax
call fcn.006211a2
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x28b8]
mov byte [ebp - 4], 0x34
push ecx
push eax
lea ecx, [ebp - 0x2b58]
call fcn.0061c551
mov esi, eax
xor eax, eax
mov byte [ebp - 4], 0x35
push eax
push 0x858903
lea ecx, [ebp - 0x28a0]
mov dword [ebp - 0x2890], eax
mov dword [ebp - 0x288c], 0xf
mov byte [ebp - 0x28a0], al
call fcn.00439710
lea eax, [ebp - 0x2a68]
mov byte [ebp - 4], 0x36
push str.CHttpDownloadImplement::ReadData_abort__exceed_limitation
push eax
call fcn.006212a1
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x28a0]
mov byte [ebp - 4], 0x37
push ecx
push eax
lea ecx, [ebp - 0x2b28]
call fcn.0061c551
push edi
push esi
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x38
call fcn.00621500
lea ecx, [ebp - 0x2b10]
call fcn.00438e20
lea ecx, [ebp - 0x2b28]
call fcn.00438e20
lea ecx, [ebp - 0x2a68]
call fcn.00438e20
mov eax, dword [ebp - 0x288c]
mov esi, 0x1000
push 0x10
pop edi
cmp eax, edi
jb 0x5386fd
mov ecx, dword [ebp - 0x28a0]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x5386f4
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
xor ebx, ebx
mov dword [ebp - 0x288c], 0xf
lea ecx, [ebp - 0x2b40]
mov dword [ebp - 0x2890], ebx
mov byte [ebp - 0x28a0], bl
call fcn.00438e20
lea ecx, [ebp - 0x2b58]
call fcn.00438e20
lea ecx, [ebp - 0x2a80]
call fcn.00438e20
mov eax, dword [ebp - 0x28a4]
cmp eax, edi
jb 0x538781
mov ecx, dword [ebp - 0x28b8]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538778
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
lea ecx, [ebp - 0x2b70]
mov dword [ebp - 0x28a8], ebx
mov dword [ebp - 0x28a4], 0xf
mov byte [ebp - 0x28b8], bl
call fcn.00438e20
lea ecx, [ebp - 0x2b88]
call fcn.00438e20
lea ecx, [ebp - 0x2a98]
call fcn.00438e20
mov eax, dword [ebp - 0x28bc]
cmp eax, edi
jb 0x538803
mov ecx, dword [ebp - 0x28d0]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x5387fa
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
mov eax, dword [ebp - 0x291c]
mov dword [ebp - 0x28c0], ebx
mov dword [ebp - 0x28bc], 0xf
mov byte [ebp - 0x28d0], bl
cmp eax, edi
jb 0x538f90
mov ecx, dword [ebp - 0x2930]
jmp 0x5380a0
test edi, edi
je 0x538847
mov eax, dword [edi]
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
lea ecx, [ebx + 8]
push fcn.00532a20
call fcn.00532667
and dword [ebp - 0x2860], 0
lea ecx, [ebp - 0x2870]
push 7
push str.GPCUtil
mov dword [ebp - 0x285c], 0xf
mov byte [ebp - 0x2870], 0
call fcn.00439710
lea eax, [ebp - 0x2870]
mov dword [ebp - 4], 0x25
push eax
call fcn.006210e3
mov ebx, eax
mov dword [esp], str.dwDownloadLength
xor eax, eax
mov dword [ebp - 0x2814], 0xf
mov byte [ebp - 0x2bec], al
lea ecx, [ebp - 0x2828]
push dword [ebp - 0x2bec]
mov dword [ebp - 0x2818], eax
push 0x10
mov byte [ebp - 0x2828], al
call fcn.0043a610
mov eax, dword [ebp - 0x2c00]
push eax
lea eax, [ebp - 0x2948]
mov byte [ebp - 4], 0x26
push eax
call fcn.006211a2
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2828]
mov byte [ebp - 4], 0x27
push ecx
push eax
lea ecx, [ebp - 0x29d8]
call fcn.0061c551
mov edi, eax
xor eax, eax
mov byte [ebp - 4], 0x28
push str.m_strDownloadUrl
mov byte [ebp - 0x2bec], al
lea ecx, [ebp - 0x2840]
push dword [ebp - 0x2bec]
mov dword [ebp - 0x2830], eax
push 0x10
mov dword [ebp - 0x282c], 0xf
mov byte [ebp - 0x2840], al
call fcn.0043a610
push dword [ebp - 0x2bfc]
lea eax, [ebp - 0x2960]
mov byte [ebp - 4], 0x29
push eax
call fcn.0062113d
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2840]
mov byte [ebp - 4], 0x2a
push ecx
push eax
lea ecx, [ebp - 0x2a08]
call fcn.0061c551
mov esi, eax
xor eax, eax
mov byte [ebp - 4], 0x2b
push eax
mov dword [ebp - 0x2848], eax
mov dword [ebp - 0x2844], 0xf
mov byte [ebp - 0x2858], al
push 0x858903
lea ecx, [ebp - 0x2858]
call fcn.00439710
lea eax, [ebp - 0x2990]
mov byte [ebp - 4], 0x2c
push str.CHttpDownloadImplement::ReadData.download_OK.m_strDownloadUrl.success__download_total
push eax
call fcn.006212a1
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2858]
mov byte [ebp - 4], 0x2d
push ecx
push eax
lea ecx, [ebp - 0x2a38]
call fcn.0061c551
push edi
push esi
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x2e
call fcn.00621593
lea ecx, [ebp - 0x2a20]
call fcn.00438e20
lea ecx, [ebp - 0x2a38]
call fcn.00438e20
lea ecx, [ebp - 0x2990]
call fcn.00438e20
mov eax, dword [ebp - 0x2844]
mov esi, 0x1000
push 0x10
pop edi
cmp eax, edi
jb 0x538a4b
mov ecx, dword [ebp - 0x2858]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538a42
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
xor ebx, ebx
mov dword [ebp - 0x2844], 0xf
lea ecx, [ebp - 0x29f0]
mov dword [ebp - 0x2848], ebx
mov byte [ebp - 0x2858], bl
call fcn.00438e20
lea ecx, [ebp - 0x2a08]
call fcn.00438e20
lea ecx, [ebp - 0x2960]
call fcn.00438e20
mov eax, dword [ebp - 0x282c]
cmp eax, edi
jb 0x538acf
mov ecx, dword [ebp - 0x2840]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538ac6
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
lea ecx, [ebp - 0x29c0]
mov dword [ebp - 0x2830], ebx
mov dword [ebp - 0x282c], 0xf
mov byte [ebp - 0x2840], bl
call fcn.00438e20
lea ecx, [ebp - 0x29d8]
call fcn.00438e20
lea ecx, [ebp - 0x2948]
call fcn.00438e20
mov eax, dword [ebp - 0x2814]
cmp eax, edi
jb 0x538b51
mov ecx, dword [ebp - 0x2828]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538b48
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x285c]
mov dword [ebp - 0x2818], ebx
mov dword [ebp - 0x2814], 0xf
mov byte [ebp - 0x2828], bl
cmp eax, edi
jb 0x538bb6
mov ecx, dword [ebp - 0x2870]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538bad
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
cmp dword [ebp - 0x2bf4], ebx
jmp 0x538454
call fcn.006638da
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 4]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
mov edi, dword [ebx + 0xfc]
lea esi, [ebx + 0x54]
mov dword [esi], eax
test edi, edi
je 0x538bff
mov edx, dword [edi]
push eax
push 0
mov esi, dword [edx + 4]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
lea esi, [ebx + 0x54]
push esi
lea eax, [ebp - 0x2bec]
lea ecx, [ebx + 8]
xor ebx, ebx
push eax
push fcn.00532a10
mov dword [ebp - 0x2bec], ebx
call fcn.0053242e
push 7
push str.GPCUtil
lea ecx, [ebp - 0x2870]
mov dword [ebp - 0x2860], ebx
mov dword [ebp - 0x285c], 0xf
mov byte [ebp - 0x2870], bl
call fcn.00439710
lea eax, [ebp - 0x2870]
mov dword [ebp - 4], 0x1b
push eax
call fcn.006210e3
and dword [ebp - 0x2818], 0
mov ebx, eax
pop ecx
push 9
push str.m_dwError
lea ecx, [ebp - 0x2828]
mov dword [ebp - 0x2814], 0xf
mov byte [ebp - 0x2828], 0
call fcn.00439710
push dword [esi]
lea eax, [ebp - 0x2948]
mov byte [ebp - 4], 0x1c
push eax
call fcn.006211a2
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2828]
mov byte [ebp - 4], 0x1d
push ecx
push eax
lea ecx, [ebp - 0x29d8]
call fcn.0061c551
mov edi, eax
xor eax, eax
mov byte [ebp - 4], 0x1e
push str.m_strDownloadUrl
mov byte [ebp - 0x2bec], al
lea ecx, [ebp - 0x2840]
push dword [ebp - 0x2bec]
mov dword [ebp - 0x2830], eax
push 0x10
mov dword [ebp - 0x282c], 0xf
mov byte [ebp - 0x2840], al
call fcn.0043a610
push dword [ebp - 0x2bfc]
lea eax, [ebp - 0x2960]
mov byte [ebp - 4], 0x1f
push eax
call fcn.0062113d
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2840]
mov byte [ebp - 4], 0x20
push ecx
push eax
lea ecx, [ebp - 0x2a08]
call fcn.0061c551
mov esi, eax
xor eax, eax
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x2848], eax
mov dword [ebp - 0x2844], 0xf
mov byte [ebp - 0x2858], al
push eax
push 0x858903
lea ecx, [ebp - 0x2858]
call fcn.00439710
lea eax, [ebp - 0x2990]
mov byte [ebp - 4], 0x22
push str.CHttpDownloadImplement::ReadData.download_failed.
push eax
call fcn.006212a1
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x2858]
mov byte [ebp - 4], 0x23
push ecx
push eax
lea ecx, [ebp - 0x2a38]
call fcn.0061c551
push edi
push esi
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x24
call fcn.00621500
lea ecx, [ebp - 0x2a20]
call fcn.00438e20
lea ecx, [ebp - 0x2a38]
call fcn.00438e20
lea ecx, [ebp - 0x2990]
call fcn.00438e20
mov eax, dword [ebp - 0x2844]
mov esi, 0x1000
push 0x10
pop edi
cmp eax, edi
jb 0x538dff
mov ecx, dword [ebp - 0x2858]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538df6
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
xor ebx, ebx
mov dword [ebp - 0x2844], 0xf
lea ecx, [ebp - 0x29f0]
mov dword [ebp - 0x2848], ebx
mov byte [ebp - 0x2858], bl
call fcn.00438e20
lea ecx, [ebp - 0x2a08]
call fcn.00438e20
lea ecx, [ebp - 0x2960]
call fcn.00438e20
mov eax, dword [ebp - 0x282c]
cmp eax, edi
jb 0x538e83
mov ecx, dword [ebp - 0x2840]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538e7a
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
lea ecx, [ebp - 0x29c0]
mov dword [ebp - 0x2830], ebx
mov dword [ebp - 0x282c], 0xf
mov byte [ebp - 0x2840], bl
call fcn.00438e20
lea ecx, [ebp - 0x29d8]
call fcn.00438e20
lea ecx, [ebp - 0x2948]
call fcn.00438e20
mov eax, dword [ebp - 0x2814]
cmp eax, edi
jb 0x538f05
mov ecx, dword [ebp - 0x2828]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538efc
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x285c]
mov dword [ebp - 0x2818], ebx
mov dword [ebp - 0x2814], 0xf
mov byte [ebp - 0x2828], bl
cmp eax, edi
jb 0x538f6a
mov ecx, dword [ebp - 0x2870]
inc eax
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ecx
cmp eax, esi
jb 0x538f61
lea eax, [ebp - 0x2bec]
push eax
lea eax, [ebp - 0x2bf0]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x2bec]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x2bf0]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
cmp dword [ebp - 0x2bf4], ebx
je 0x538f90
call fcn.006638da
push dword [ebp - 0x2bf4]
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 0x64]
mov ecx, esi
call dword [0x7f07dc]
mov ecx, edi
call esi
xor eax, eax
jmp 0x538477