Function at 0x518c90
Capabilities:
Check for time delay via gettickcount
Check http status code

Disassembly:
push ebp
lea ebp, [esp - 0x560]
sub esp, 0x560
push 0xffffffffffffffff
push 0x68af1c
mov eax, dword fs:[0]
push eax
sub esp, 0x88
mov eax, dword [0x78f694]
xor eax, ebp
mov dword [ebp + 0x55c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0x570]
mov edx, dword [ebp + 0x584]
mov esi, dword [ebp + 0x5a4]
mov ebx, ecx
mov ecx, dword [ebp + 0x580]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x588]
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp + 0x58c]
mov dword [ebp - 0x54], edx
mov edx, dword [ebp + 0x590]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x594]
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp + 0x598]
mov dword [ebp - 0x2c], edx
mov edx, dword [ebp + 0x59c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp + 0x5a0]
push str.fullHttpRequest
mov dword [ebp - 0x14], ecx
push esi
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x24], eax
call fcn.004b1850
cmp dword [ebx + 0x594], 0x99b4002d
mov dword [ebp - 4], 0
je 0x518d75
push esi
push 0x66
call fcn.004f9d40
add esp, 8
mov bl, al
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.004b18c0
mov al, bl
jmp 0x519659
mov ecx, dword [ebp - 0x24]
mov edi, dword [ecx + 4]
mov ecx, dword [ebp - 0x14]
call fcn.00526530
mov ecx, dword [ebp - 0x44]
call fcn.00467d60
mov ecx, dword [ebp - 0x3c]
call fcn.005d5d40
test eax, eax
jne 0x518dbb
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.No_domain
mov ecx, esi
call eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.004b18c0
xor al, al
jmp 0x519659
cmp dword [ebp + 0x574], 0
jne 0x518dce
mov dword [ebp + 0x574], 0x50
mov ecx, dword [ebp - 0x3c]
push ecx
push str.domain
mov ecx, esi
call fcn.004b1210
mov edx, dword [ebp + 0x574]
push edx
push str.port
mov ecx, esi
call fcn.004b14c0
mov eax, dword [ebp + 0x578]
push eax
push 0x6d58b4
mov ecx, esi
call fcn.004b1490
call sub.KERNEL32.dll_GetTickCount
mov ecx, dword [ebp - 0x24]
add ecx, 0x30
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], ecx
call fcn.00484e60
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp + 0x57c]
mov eax, dword [ebp + 0x578]
push esi
push ecx
mov ecx, dword [ebp + 0x574]
push edx
mov edx, dword [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0x54]
push ecx
mov ecx, dword [ebp - 0x20]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.00518670
test al, al
jne 0x518e86
mov edx, dword [ebp - 0x24]
cmp dword [edx + 0x28], 0x32
jne 0x518da5
mov edi, dword [ebp - 0x74]
mov ecx, edi
call fcn.005d5d40
test eax, eax
je 0x518da5
push esi
mov ecx, edi
call fcn.00483ec0
mov ecx, dword [ebp - 0x14]
push eax
add ecx, 0x190
call fcn.0050ee00
jmp 0x518da5
mov eax, dword [ebp - 0x78]
push eax
push str.connectTime
mov ecx, esi
call fcn.004b0eb0
test edi, edi
je 0x518eaa
push esi
mov ecx, edi
call fcn.004d0e20
test al, al
jne 0x518da5
lea ecx, [ebp + 0x400]
mov byte [ebx + 0x849], 0
mov byte [ebx + 0x848], 0
call fcn.00485650
mov ecx, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp + 0x400]
mov byte [ebp - 4], 1
call fcn.004870b0
push 0x20
lea ecx, [ebp + 0x400]
call fcn.00484c40
push str.HEAD
lea ecx, [ebp + 0x400]
call fcn.00487790
push 0x6d4fe0
lea ecx, [ebp + 0x400]
mov byte [ebp - 0x27], al
call fcn.00487790
test edi, edi
mov byte [ebp - 0x15], al
je 0x518f71
lea ecx, [ebp + 0x4e8]
call fcn.00485650
lea edx, [ebp + 0x400]
push edx
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 2
call fcn.004870b0
push 0x2c
lea ecx, [ebp + 0x4e8]
call fcn.00487e40
mov eax, dword [ebp - 0x48]
push eax
lea ecx, [ebp + 0x4e8]
call fcn.004870b0
lea ecx, [ebp + 0x4e8]
call fcn.00483ec0
push eax
push str.HttpRequestBegin
mov ecx, edi
call fcn.004d0ba0
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 1
call fcn.00485710
cmp byte [esi + 0x121], 0
je 0x51901a
lea ecx, [ebp + 0x4e8]
call fcn.00485650
mov ecx, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 3
call fcn.004870b0
lea ecx, [ebp + 0x4e8]
call fcn.00484060
lea edx, [ebp + 0x4e8]
push edx
push str.startLine
mov ecx, esi
call fcn.004b1210
lea ecx, [ebp + 0x4e8]
call fcn.00484e60
mov eax, dword [ebp - 0x2c]
push eax
lea ecx, [ebp + 0x4e8]
call fcn.004870b0
lea ecx, [ebp + 0x4e8]
call fcn.00484060
mov edx, dword [esi]
mov eax, dword [edx + 0x24]
push 1
push str.fullRequestHeader
mov ecx, esi
call eax
lea ecx, [ebp + 0x4e8]
push ecx
push str.requestHeader
mov ecx, esi
call fcn.004b1210
mov edx, dword [esi]
mov eax, dword [edx + 0x28]
mov ecx, esi
call eax
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 1
call fcn.00485710
test edi, edi
je 0x519033
mov ecx, dword [ebp - 0x2c]
call fcn.00483ec0
push eax
push str.RequestHeader
mov ecx, edi
call fcn.004d0ba0
lea ecx, [ebp + 0x474]
call fcn.00485650
mov ecx, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp + 0x474]
mov byte [ebp - 4], 4
call fcn.004870b0
mov edx, dword [ebp - 0x2c]
push edx
lea ecx, [ebp + 0x474]
call fcn.004870b0
cmp dword [ebx + 0x594], 0x99b4002d
je 0x51909c
push esi
push 0x67
call fcn.004f9d40
add esp, 8
mov bl, al
lea ecx, [ebp + 0x474]
mov byte [ebp - 4], 1
call fcn.00485710
lea ecx, [ebp + 0x400]
mov byte [ebp - 4], 0
call fcn.00485710
jmp 0x518d5f
test edi, edi
je 0x519107
lea ecx, [ebp + 0x474]
call fcn.005d5d40
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x56c]
push esi
push eax
mov dword [ebp - 0x48], 0
call fcn.0052cb40
mov ecx, dword [ebp - 0x4c]
add ecx, eax
mov eax, dword [ebp - 0x48]
adc eax, edx
push eax
push ecx
mov dword [ebp - 0x4c], ecx
push str.StartSendingRequest
mov ecx, edi
mov dword [ebp - 0x48], eax
call fcn.004d0cc0
mov ecx, dword [ebp - 0x20]
cmp byte [ecx + 0x154], 0
jne 0x519107
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
add eax, 0x200
push esi
adc ecx, 0
push ecx
push eax
mov ecx, edi
call fcn.004d12e0
mov ecx, dword [ebp - 0x14]
lea edx, [ebp + 0x474]
push edx
call fcn.005265b0
cmp dword [ebx + 0x594], 0x99b4002d
push esi
je 0x51912a
push 0x68
jmp 0x51906f
lea ecx, [ebx + 0x690]
push 0
call fcn.005711f0
push edi
call fcn.00516d90
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
add esp, 4
push esi
push eax
mov eax, dword [edx + 0xf60]
push ecx
push eax
lea ecx, [ebp + 0x474]
push ecx
mov ecx, ebx
call fcn.005177e0
test al, al
jne 0x5191a1
push edi
push 0
call fcn.00516db0
mov byte [ebx + 0x84a], 1
mov byte [ebx + 0x848], 1
add esp, 8
lea ecx, [ebp + 0x474]
mov byte [ebp - 4], 1
call fcn.00485710
lea ecx, [ebp + 0x400]
mov byte [ebp - 4], 0
call fcn.00485710
jmp 0x518da5
cmp dword [ebx + 0x594], 0x99b4002d
je 0x5191b5
push esi
push 0x69
jmp 0x51906f
push str._nExpect:
lea ecx, [ebp + 0x474]
mov byte [ebp - 0x25], 0
mov byte [ebp - 0x26], 0
call fcn.00487580
test al, al
je 0x5193c3
push str.100_continue
lea ecx, [ebp + 0x474]
call fcn.00487580
test al, al
je 0x5193c3
push str.expect100Continue
push esi
lea ecx, [ebp - 0x50]
call fcn.004b1850
test edi, edi
mov byte [ebp - 4], 5
mov byte [ebp - 0x26], 1
je 0x519228
push str.Begin_reading_100_continue_response.
push str.HttpInfo
mov ecx, edi
call fcn.004d0ba0
push esi
mov ecx, edi
call fcn.004d0e20
test al, al
jne 0x5198db
push edi
push 1
call fcn.00516db0
push edi
call fcn.00516dd0
add esp, 0xc
cmp dword [ebx + 0x594], 0x99b4002d
push esi
je 0x519263
push 0x6a
call fcn.004f9d40
add esp, 8
lea ecx, [ebp - 0x50]
mov bl, al
mov byte [ebp - 4], 4
call fcn.004b18c0
jmp 0x519079
push 1
lea ecx, [ebx + 0x690]
call fcn.005711f0
lea ecx, [ebp - 0x70]
call fcn.00468060
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
push esi
push edx
lea eax, [ebp - 0x70]
push eax
push 0
push ecx
mov ecx, ebx
mov byte [ebp - 4], 6
call fcn.00517900
push esi
push edi
push 0
lea ecx, [ebx + 0x690]
mov byte [ebp - 0x2c], al
call fcn.00571200
mov edx, dword [ebp - 0x2c]
push edi
push edx
call fcn.00516df0
add esp, 8
cmp byte [ebp - 0x2c], 0
je 0x51938f
push esi
push edi
push 1
lea ecx, [ebx + 0x690]
call fcn.00571200
lea ecx, [ebp]
call fcn.00525f40
push esi
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp + 0x190]
mov byte [ebp - 4], 7
call fcn.0050f410
test edi, edi
mov eax, dword [ebp + 0x2d4]
mov dword [ebp - 0x2c], eax
je 0x519300
push eax
push str.HttpStatusCode
mov ecx, edi
call fcn.004d0c20
mov ecx, dword [ebp - 0x2c]
push ecx
push str.statusCode
mov ecx, esi
call fcn.004b14c0
lea ecx, [ebp + 0x4e8]
call fcn.00485650
lea edx, [ebp + 0x4e8]
push edx
lea ecx, [ebp + 0x190]
mov byte [ebp - 4], 8
call fcn.0050e880
lea eax, [ebp + 0x4e8]
push eax
push str.statusText
mov ecx, esi
call fcn.004b1210
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 7
call fcn.00485710
cmp dword [ebp - 0x2c], 0x64
je 0x519370
push esi
lea ecx, [ebp - 0x70]
push ecx
mov ecx, dword [ebp - 0x14]
add ecx, 0x190
mov byte [ebp - 0x25], 1
call fcn.0050f410
mov edx, dword [ebp - 0x20]
push edi
push esi
push edx
lea eax, [ebp]
push eax
mov ecx, ebx
call fcn.005125f0
lea ecx, [ebp]
mov byte [ebp - 4], 6
call fcn.00525fe0
jmp 0x51939d
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Failed_to_receive_the_100_continue_response__continuing_anyway...
mov ecx, esi
call eax
push esi
push 0
lea ecx, [ebx + 0x690]
call fcn.005711f0
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 5
call fcn.00468860
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.004b18c0
cmp dword [ebx + 0x594], 0x99b4002d
je 0x5193d7
push esi
push 0x6b
jmp 0x51906f
cmp byte [ebp - 0x25], 0
jne 0x519835
cmp byte [ebp - 0x26], 0
je 0x5193f0
push edi
call fcn.00516d90
add esp, 4
lea ecx, [ebx + 0x828]
call fcn.00467d60
cmp byte [ebp - 0x15], 0
jne 0x51968a
cmp byte [ebp - 0x27], 0
jne 0x51968a
push esi
push 0
lea ecx, [ebx + 0x690]
call fcn.005711f0
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x24]
push esi
push edx
mov edx, dword [ebp - 0x40]
push eax
lea ecx, [ebx + 0x590]
mov dword [eax + 0x10], ecx
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0xf60]
mov eax, dword [ebp + 0x56c]
push ecx
mov ecx, dword [ebp + 0x568]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.00517550
test al, al
jne 0x519680
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.sendRequestBody_failed.
mov ecx, esi
call eax
lea ecx, [ebx + 0x828]
call fcn.00544a30
push eax
push str.numBytesReceivedWhileSending
mov ecx, esi
call fcn.004b14c0
lea ecx, [ebx + 0x828]
call fcn.00544a30
test eax, eax
je 0x5194d2
lea ecx, [ebp + 0x4e8]
call fcn.00485650
lea eax, [ebx + 0x828]
push eax
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 9
call fcn.00488570
lea ecx, [ebp + 0x4e8]
push ecx
push str.responseReceivedWhileSending
mov ecx, esi
call fcn.004b1210
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 4
call fcn.00485710
mov edx, dword [ebp - 0x24]
push edi
push 0
mov dword [edx + 0x10], 0
call fcn.00516db0
add esp, 8
lea ecx, [ebx + 0x828]
call fcn.00544a30
test eax, eax
je 0x51917e
mov ecx, dword [ebp - 0x14]
push esi
lea eax, [ebx + 0x828]
add ecx, 0x190
push eax
call fcn.0050f410
push 4
push str._r_n_r_n
lea ecx, [ebx + 0x828]
call fcn.004695e0
test eax, eax
mov dword [ebp - 0x1c], eax
je 0x51955b
add dword [ebp - 0x1c], 4
lea ecx, [ebx + 0x828]
call fcn.00467d80
mov ecx, dword [ebp - 0x1c]
sub ecx, eax
mov dword [ebp - 0x48], ecx
lea ecx, [ebx + 0x828]
call fcn.00544a30
sub eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x1c]
push eax
call fcn.00469150
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x14]
push edi
push esi
push ecx
push edx
mov ecx, ebx
call fcn.005125f0
test edi, edi
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x2d4]
mov dword [ebp - 0x1c], ecx
je 0x51958b
mov edx, ecx
push edx
push str.HttpStatusCode
mov ecx, edi
call fcn.004d0c20
mov eax, dword [ebp - 0x1c]
push eax
push str.statusCode
mov ecx, esi
call fcn.004b14c0
lea ecx, [ebp + 0x4e8]
call fcn.00485650
lea ecx, [ebp + 0x4e8]
push ecx
mov ecx, dword [ebp - 0x14]
add ecx, 0x190
mov byte [ebp - 4], 0xa
call fcn.0050e880
lea edx, [ebp + 0x4e8]
push edx
push str.statusText
mov ecx, esi
call fcn.004b1210
cmp dword [ebp - 0x1c], 0x12c
jge 0x5195f0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x20]
push esi
push edi
push eax
push ecx
mov ecx, ebx
call fcn.00517d60
test al, al
je 0x519607
cmp dword [ebp - 0x1c], 0x197
jne 0x51961b
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Proxy_authentication_failed_or_not_satisfied.
mov ecx, esi
call eax
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 4
call fcn.00485710
jmp 0x51917e
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 4
call fcn.00485710
lea ecx, [ebp + 0x474]
mov byte [ebp - 4], 1
call fcn.00485710
lea ecx, [ebp + 0x400]
mov byte [ebp - 4], 0
call fcn.00485710
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.004b18c0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x55c]
xor ecx, ebp
call fcn.0062cbd3
add ebp, 0x560
mov esp, ebp
pop ebp
ret 0x40
mov ecx, dword [ebp - 0x24]
mov dword [ecx + 0x10], 0
test edi, edi
je 0x519699
push edi
push 1
call fcn.00516db0
add esp, 8
cmp dword [ebx + 0x594], 0x99b4002d
je 0x5196ad
push esi
push 0x6c
jmp 0x51906f
test edi, edi
je 0x5196d2
push str.Begin_reading_response
push str.HttpInfo
mov ecx, edi
call fcn.004d0ba0
push esi
mov ecx, edi
call fcn.004d0e20
test al, al
jne 0x51917e
push edi
call fcn.00516dd0
add esp, 4
call sub.KERNEL32.dll_GetTickCount
push esi
push 1
lea ecx, [ebx + 0x690]
call fcn.005711f0
lea ecx, [ebp - 0x70]
call fcn.00468060
lea eax, [ebx + 0x828]
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xb
call fcn.0046ad20
cmp dword [ebx + 0x594], 0x99b4002d
push esi
je 0x519733
push 0x6d
call fcn.004f9d40
add esp, 8
lea ecx, [ebp - 0x70]
mov bl, al
mov byte [ebp - 4], 4
call fcn.00468860
jmp 0x519079
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
push edx
lea eax, [ebp - 0x70]
push eax
lea eax, [ebx + 0x828]
push eax
push ecx
mov ecx, ebx
call fcn.00517900
push esi
push edi
push 0
lea ecx, [ebx + 0x690]
mov byte [ebp - 0x15], al
call fcn.00571200
cmp byte [ebp - 0x15], 0
jne 0x519781
push edi
push 0
call fcn.00516df0
add esp, 8
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 4
call fcn.00468860
jmp 0x51917e
push esi
push edi
push 1
lea ecx, [ebx + 0x690]
call fcn.00571200
mov ecx, dword [ebp - 0x14]
push esi
lea edx, [ebp - 0x70]
add ecx, 0x190
push edx
call fcn.0050f410
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x14]
push edi
push esi
push eax
push ecx
mov ecx, ebx
call fcn.005125f0
test edi, edi
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x2d4]
mov dword [ebp - 0x40], eax
je 0x5197d3
mov ecx, eax
push ecx
push str.HttpStatusCode
mov ecx, edi
call fcn.004d0c20
mov edx, dword [ebp - 0x40]
push edx
push str.statusCode
mov ecx, esi
call fcn.004b14c0
lea ecx, [ebp + 0x4e8]
call fcn.00485650
mov ecx, dword [ebp - 0x14]
lea eax, [ebp + 0x4e8]
push eax
add ecx, 0x190
mov byte [ebp - 4], 0xc
call fcn.0050e880
lea ecx, [ebp + 0x4e8]
push ecx
push str.statusText
mov ecx, esi
call fcn.004b1210
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 0xb
call fcn.00485710
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 4
call fcn.00468860
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x2d4]
cmp eax, 0x64
mov dword [ebp - 0x1c], eax
jne 0x5199af
push str.unexpected100Continue
push esi
lea ecx, [ebp - 0x50]
call fcn.004b1850
test edi, edi
mov byte [ebp - 4], 0xd
je 0x51987d
push str.Begin_reading_response_again
push str.HttpInfo
mov ecx, edi
call fcn.004d0ba0
push esi
mov ecx, edi
call fcn.004d0e20
test al, al
jne 0x5198db
push edi
call fcn.00516dd0
add esp, 4
call sub.KERNEL32.dll_GetTickCount
push esi
push 1
lea ecx, [ebx + 0x690]
call fcn.005711f0
lea ecx, [ebp - 0x70]
call fcn.00468060
mov eax, dword [ebp - 0x24]
push esi
push eax
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x70]
push ecx
lea edx, [ebx + 0x828]
push edx
push eax
mov ecx, ebx
mov byte [ebp - 4], 0xe
call fcn.00517900
test al, al
jne 0x5198ec
push edi
push 0
call fcn.00516df0
add esp, 8
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xd
call fcn.00468860
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.004b18c0
jmp 0x51917e
push esi
push edi
push 1
lea ecx, [ebx + 0x690]
call fcn.00571200
mov ecx, dword [ebp - 0x14]
push esi
lea edx, [ebp - 0x70]
add ecx, 0x190
push edx
call fcn.0050f410
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x14]
push edi
push esi
push eax
push ecx
mov ecx, ebx
call fcn.005125f0
test edi, edi
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x2d4]
mov dword [ebp - 0x1c], eax
je 0x51993e
mov ecx, eax
push ecx
push str.HttpStatusCode
mov ecx, edi
call fcn.004d0c20
mov edx, dword [ebp - 0x1c]
push edx
push str.statusCode
mov ecx, esi
call fcn.004b14c0
lea ecx, [ebp + 0x4e8]
call fcn.00485650
mov ecx, dword [ebp - 0x14]
lea eax, [ebp + 0x4e8]
push eax
add ecx, 0x190
mov byte [ebp - 4], 0xf
call fcn.0050e880
lea ecx, [ebp + 0x4e8]
push ecx
push str.statusText
mov ecx, esi
call fcn.004b1210
lea ecx, [ebp + 0x4e8]
mov byte [ebp - 4], 0xe
call fcn.00485710
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xd
call fcn.00468860
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.004b18c0
mov eax, dword [ebp - 0x1c]
cmp eax, 0x12c
jge 0x5199cf
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
push esi
push edi
push edx
push eax
mov ecx, ebx
call fcn.00517d60
test al, al
je 0x51917e
cmp byte [ebp - 0x27], 0
jne 0x519ba1
mov ecx, dword [ebp - 0x20]
add ecx, 0x158
call fcn.005d5d40
test eax, eax
je 0x519b44
mov eax, dword [ebp - 0x20]
add eax, 0x158
push eax
push str.streamResponseBodyPath
mov ecx, esi
call fcn.004b1210
mov ecx, dword [ebp - 0x20]
push esi
add ecx, 0x158
call fcn.00483ec0
push eax
call fcn.00534a10
add esp, 8
test eax, eax
je 0x51917e
push esi
push 1
lea ecx, [ebx + 0x690]
mov dword [ebp - 0x3c], eax
call fcn.005711f0
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x3c]
push esi
push eax
mov eax, dword [ebp - 0x14]
push 0
push ecx
mov ecx, dword [ebp - 0x20]
lea edx, [ebx + 0x828]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.00517f40
cmp dword [ebp - 0x3c], 0
mov byte [ebp - 0x15], al
je 0x519a6b
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x14]
push 1
call eax
mov ecx, dword [ebp - 0x44]
call fcn.00544a30
cmp byte [esi + 0x121], 0
mov dword [ebp - 0x40], eax
je 0x519a8e
mov ecx, eax
push ecx
push str.responseBodySize
mov ecx, esi
call fcn.004b14c0
mov edx, dword [ebp - 0x14]
cmp dword [edx + 0x2d4], 0x190
jl 0x519b31
mov eax, dword [ebp - 0x40]
test eax, eax
jbe 0x519b31
cmp byte [esi + 0x121], 0
jne 0x519abc
cmp eax, 0x2000
ja 0x519b31
lea ecx, [ebp + 0x2e8]
call fcn.0047f3a0
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x13
call fcn.00468060
mov eax, dword [ebp - 0x44]
push eax
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x14
call fcn.0046ad20
push str.utf_8
lea ecx, [ebp - 0x94]
push ecx
lea ecx, [ebp + 0x2e8]
call fcn.004804a0
lea edx, [ebp + 0x2e8]
push edx
push str.errResponseBody
mov ecx, esi
call fcn.004b11c0
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x13
call fcn.00468860
lea ecx, [ebp + 0x2e8]
mov byte [ebp - 4], 4
call fcn.0047f440
cmp byte [ebp - 0x15], 0
jne 0x519b92
push edi
push 0
call fcn.00516df0
jmp 0x51917b
push 0x188
mov byte [ebp - 4], 0x10
call fcn.00609260
mov ecx, eax
add esp, 4
mov dword [ebp - 0x48], ecx
test ecx, ecx
mov byte [ebp - 4], 0x11
je 0x519b77
mov edx, dword [ebp - 0x44]
push edx
call fcn.00541c10
mov dword [ebp - 4], 4
jmp 0x519a1c
xor eax, eax
mov dword [ebp - 4], 4
jmp 0x519a1c
push esi
push edi
push 1
lea ecx, [ebx + 0x690]
call fcn.00571200
push edi
push 1
call fcn.00516df0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x20]
add esp, 8
push esi
push edi
push eax
push ecx
push 0
mov ecx, ebx
call fcn.005184e0
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x20]
push esi
push edi
push edx
push eax
push ecx
call fcn.00516e40
add esp, 0x14
test al, al
jne 0x519bec
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Failed_to_ungzip_response_body.
mov ecx, esi
call eax
jmp 0x51917e
cmp dword [ebp - 0x1c], 0x197
jne 0x51962a
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Proxy_authentication_failed_or_not_satisfied.
mov ecx, esi
call eax
jmp 0x51917e