Function at 0x476638
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a4ec7
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x450
push ebx
push esi
push edi
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x10], esp
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 2
call fcn.0050d46e
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call fcn.0050d46e
push 0
push 0
push 0
push 0
push 1
push 0
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.0050d774
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 5
call fcn.0050d46e
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 6
call fcn.0050d46e
lea eax, [ebp - 0x54]
lea ecx, [ebp - 0x20]
push eax
lea edx, [ebp - 0x1c]
push ecx
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x5c]
push edx
push eax
push ecx
mov byte [ebp - 4], 7
call fcn.0050d76e
test eax, eax
jne 0x4766ea
mov esi, dword [ebp + 8]
push 0x4d85a8
mov ecx, esi
call fcn.0050d630
mov dword [ebp - 0x24], 1
jmp 0x476bb9
push 0
lea edx, [ebp - 0x18]
push 4
mov esi, 0x7530
push edx
push 2
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x18], esi
call fcn.0050d7b0
push 0
lea eax, [ebp - 0x18]
push 4
push eax
push 6
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x18], esi
call fcn.0050d7b0
push 0
lea ecx, [ebp - 0x18]
push 4
push ecx
push 5
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x18], esi
call fcn.0050d7b0
push 0
lea edx, [ebp - 0x18]
push 4
push edx
push 8
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x18], esi
call fcn.0050d7b0
push 0
lea eax, [ebp - 0x18]
push 4
mov edi, 7
push eax
push edi
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x18], esi
call fcn.0050d7b0
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x1c]
push 0
push 0
push ecx
push edx
lea ecx, [ebp - 0x50]
call fcn.0050d768
mov edx, dword [ebp + 0x1c]
push 0x84000000
push 0
xor ecx, ecx
mov ebx, eax
mov eax, dword [ebp - 0x20]
push 0
push 1
test edx, edx
push 0
push eax
sete cl
push ecx
mov ecx, ebx
mov dword [ebp - 0x18], ebx
mov byte [ebp - 4], 8
call fcn.0050d762
mov esi, eax
push 0xffffffffffffffff
push 0x10000000
push 0x4cf0d4
mov ecx, esi
mov dword [ebp - 0x58], esi
mov dword [ebp - 4], edi
call fcn.0050d75c
mov edx, dword [ebp + 0x10]
push 0x4d85a8
push edx
call dword [fcn.004b46f0]
add esp, 8
test eax, eax
je 0x4767fc
lea eax, [ebp + 0x10]
lea ecx, [ebp + 0x1c]
push eax
push 0x4cf124
push ecx
call fcn.0050d612
push 0x10000000
push eax
mov ecx, esi
mov byte [ebp - 4], 0xa
call fcn.0050d756
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 7
call fcn.0050d468
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x476816
push 0xffffffffffffffff
push 0x10000000
push 0x4cf1d0
mov ecx, esi
call fcn.0050d75c
push 0xffffffffffffffff
push 0x10000000
push 0x4cf0bc
mov ecx, esi
call fcn.0050d75c
mov eax, dword [ebp + 0x20]
test eax, eax
je 0x476843
push 0xffffffffffffffff
push 0x10000000
push 0x4cf0f4
mov ecx, esi
call fcn.0050d75c
push 0xffffffffffffffff
push 0x10000000
push 0x4cf09c
mov ecx, esi
call fcn.0050d75c
push 0xffffffffffffffff
push 0x10000000
push 0x4cf178
mov ecx, esi
call fcn.0050d75c
lea edx, [ebp - 0x1c]
lea eax, [ebp + 0x1c]
push edx
push 0x4cefac
push eax
call fcn.0050d612
push 0x10000000
push eax
mov ecx, esi
mov byte [ebp - 4], 0xb
call fcn.0050d756
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 7
call fcn.0050d468
mov eax, dword [ebp + 0x18]
mov byte [ebp - 4], 0xc
test eax, eax
je 0x4768aa
mov ecx, dword [ebp + 0x14]
push eax
push ecx
jmp 0x4768ae
push 0
push 0
push 0
push 0
mov ecx, esi
call fcn.0050d750
mov dword [ebp - 4], edi
mov ecx, 0xff
xor eax, eax
lea edi, [ebp - 0x45b]
mov byte [ebp - 0x45c], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x38]
lea ecx, [ebp - 0x30]
call fcn.0050d46e
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xe
call fcn.0050d46e
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xf
call fcn.0050d46e
lea eax, [ebp - 0x3c]
mov ecx, esi
push eax
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x3c], 0x194
mov dword [ebp - 0x28], 0
call fcn.0050d7aa
lea ecx, [ebp - 0x30]
push 0
push ecx
push 0x1d
mov ecx, esi
call fcn.0050d74a
lea edx, [ebp - 0x34]
push 0
push edx
push 1
mov ecx, esi
call fcn.0050d74a
lea eax, [ebp - 0x38]
push 0
push eax
push 5
mov ecx, esi
call fcn.0050d74a
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x28]
push ecx
push 0x4ce1a8
push edx
call dword [fcn.004b46ec]
add esp, 0xc
lea ecx, [ebp - 0x34]
call fcn.0050d72c
lea ecx, [ebp - 0x30]
call fcn.0050d72c
mov eax, dword [ebp - 0x30]
push 0x4cf0e0
push eax
call dword [fcn.004b46f0]
add esp, 8
test eax, eax
jne 0x476a53
mov ecx, dword [ebp - 0x28]
push ecx
call fcn.0050d486
mov ebx, eax
mov eax, dword [ebp - 0x28]
add esp, 4
xor edi, edi
cmp eax, 0x3ff
mov dword [ebp + 0x24], ebx
jle 0x4769a8
mov eax, 0x3ff
mov byte [ebp - 4], 0x11
mov edx, dword [esi]
push eax
lea eax, [edi + ebx]
mov ecx, esi
push eax
call dword [edx + 0x3c]
test eax, eax
je 0x4769ed
add edi, eax
mov eax, dword [ebp - 0x28]
sub eax, edi
cmp eax, 0x3ff
jle 0x4769d1
mov eax, 0x3ff
jmp 0x4769ac
test eax, eax
je 0x4769ed
jmp 0x4769ac
push 0x1f4000
mov dword [ebp - 4], 0x10
call fcn.0050d486
mov edx, dword [ebp - 0x28]
lea ecx, [ebp + 0x1c]
mov esi, eax
push ecx
push esi
push edx
push ebx
mov dword [ebp + 0x1c], 0x1f4000
call fcn.00475858
add esp, 0x14
test eax, eax
jne 0x476a32
mov eax, dword [ebp + 0x1c]
cmp eax, 0x1f4000
jb 0x476a2b
dec eax
mov dword [ebp + 0x1c], eax
mov byte [eax + esi], 0
push esi
jmp 0x476a37
push 0x4d85a8
lea ecx, [ebp - 0x14]
call fcn.0050d47a
push esi
call fcn.0050d474
push ebx
call fcn.0050d474
add esp, 8
jmp 0x476ade
mov byte [ebp - 4], 0x13
mov eax, dword [esi]
lea ecx, [ebp - 0x45c]
push 0x3ff
push ecx
mov ecx, esi
call dword [eax + 0x3c]
test eax, eax
je 0x476aa7
lea edx, [ebp - 0x45c]
lea ecx, [ebp - 0x14]
push edx
call fcn.0050d6a8
mov ecx, pe_nt_image_headers32
xor eax, eax
lea edi, [ebp - 0x45c]
rep stosd dword es:[edi], eax
jmp 0x476a57
mov eax, dword [esi]
mov ecx, esi
mov dword [ebp - 4], 0x10
call dword [eax + 0x54]
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x14]
test esi, esi
je 0x476ac9
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 4]
test ebx, ebx
je 0x476ad6
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + 4]
lea ecx, [ebp - 0x50]
call fcn.0050d744
push 0x4cf168
lea ecx, [ebp - 0x34]
call fcn.0050d690
test eax, eax
jl 0x476b63
mov eax, dword [ebp - 0x14]
mov eax, dword [eax - 8]
lea ecx, [eax*4 + 4]
push ecx
call fcn.0050d486
mov edx, dword [ebp - 0x14]
mov esi, eax
mov edi, esi
add esp, 4
mov eax, dword [edx - 8]
lea ecx, [eax*4 + 2]
xor eax, eax
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
mov eax, dword [eax - 8]
push eax
push esi
push eax
push 0
call fcn.0050d492
push eax
push 0
push 0xfde9
call dword [fcn.004b4144]
push 0xffffffffffffffff
lea ecx, [ebp - 0x14]
call fcn.0050d48c
push esi
lea ecx, [ebp - 0x14]
call fcn.0050d7a4
push esi
call fcn.0050d474
add esp, 4
mov eax, dword [ebp - 0x3c]
cmp eax, 0xc8
je 0x476b7f
push eax
lea ecx, [ebp - 0x14]
push 0x4cf130
push ecx
call fcn.0050d5e2
add esp, 0xc
mov esi, dword [ebp + 8]
lea edx, [ebp - 0x14]
push edx
mov ecx, esi
call fcn.0050d618
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x38]
or al, 1
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x24], eax
call fcn.0050d468
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xe
call fcn.0050d468
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.0050d468
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 6
call fcn.0050d468
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 5
call fcn.0050d468
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.0050d73e
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call fcn.0050d468
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 2
call fcn.0050d468
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 1
call fcn.0050d468
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0
call fcn.0050d468
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret