Function at 0x309b5e6
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
add eax, 0x52
mov dword [ebp - 0x28], 0
push edi
mov ebx, dword [esi + 0xc]
push ebx
mov dword [ebp - 4], ebx
mov edi, dword [ebx + 0x3b0]
lea eax, [ebx + eax*4]
mov dword [ebp - 0xc], eax
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [esi + 0x134]
mov dword [ebp - 0x14], eax
call fcn.0309c136
add esp, 4
test al, al
jne 0x309c058
mov byte [ebx + 0x248], al
cmp dword [edi + 0x1f0], 0
jne 0x309b81c
push dword [ebp + 0x14]
lea ebx, [edi + 0x1cc]
mov dword [ebp - 8], 0
push dword [ebp + 0x10]
mov dword [ebp - 0x10], 0
push 0x10081ed0
push esi
call fcn.03096d36
push dword [esi + 0x128]
call dword [0x100928d0]
push 0x100000
push ebx
mov dword [esi + 0x128], 0
call fcn.0308ee56
mov ebx, dword [ebp - 4]
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
push esi
call fcn.0309c086
add esp, 0x34
test eax, eax
jne 0x309c074
push 1
push dword [ebp - 8]
push eax
push 0x10081ef8
push ebx
push esi
call fcn.030a2e26
mov ebx, eax
add esp, 0x18
test ebx, ebx
jne 0x309b7f2
mov eax, dword [ebp - 4]
mov edx, 0x10081f00
mov ecx, 0x100802f3
cmp dword [eax + 0xb8], 1
mov eax, 0x10081f04
cmovne edx, eax
mov eax, dword [esi + 0xce4]
test eax, eax
cmovne ecx, eax
mov eax, 0x100802f3
push ecx
mov ecx, dword [ebp - 0x10]
test ecx, ecx
cmovne eax, ecx
push eax
push edx
push dword [ebp - 8]
lea eax, [edi + 0x1cc]
push 0x10081f08
push eax
call fcn.0308edf6
mov ebx, eax
add esp, 0x18
test ebx, ebx
jne 0x309b7e4
push 0x10081f24
push dword [ebp - 4]
push esi
call fcn.030a1056
add esp, 0xc
test eax, eax
jne 0x309b761
mov eax, dword [esi + 0x5cc]
test eax, eax
je 0x309b761
push eax
lea eax, [edi + 0x1cc]
push 0x10081f30
push eax
call fcn.0308edf6
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x309b7e4
push 0x10081f44
push dword [ebp - 4]
push esi
call fcn.030a1056
add esp, 0xc
test eax, eax
jne 0x309b790
lea eax, [edi + 0x1cc]
push 0x10081f58
push eax
call fcn.0308edc6
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x309b7e4
lea eax, [edi + 0x1cc]
push eax
push 1
push esi
call fcn.030a0956
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x309b7e4
lea eax, [edi + 0x1cc]
push 0x10080c60
push eax
call fcn.0308edc6
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x309b7e4
push dword [ebp + 0xc]
push eax
push eax
lea eax, [esi + 0xd80]
push eax
lea eax, [edi + 0x1cc]
push esi
push eax
call fcn.030a0dd6
mov ebx, eax
add esp, 0x18
test ebx, ebx
je 0x309b7f2
push 0x10081f78
push esi
call fcn.03096c76
add esp, 8
push dword [ebp - 0x10]
call dword [0x100928d0]
push dword [ebp - 8]
call dword [0x100928d0]
add esp, 8
test ebx, ebx
jne 0x309be95
mov ebx, dword [ebp - 4]
mov dword [edi + 0x1f0], 1
push 1
push 0
push esi
call fcn.03098356
add esp, 0xc
test edx, edx
jl 0x309c061
jg 0x309b83b
test eax, eax
je 0x309c061
push dword [ebp + 0xc]
push ebx
call fcn.03097616
add esp, 8
test al, al
mov eax, dword [ebp - 0x14]
jne 0x309b85b
cmp dword [eax + 0x1a0], 0
je 0x309c058
cmp dword [eax + 0x1a0], 1
jne 0x309b8bb
cmp dword [edi + 0x1dc], 0
jne 0x309be9e
mov eax, dword [esi + 0x908]
mov dword [esi + 0x130], eax
lea eax, [ebp - 0x1c]
push eax
push dword [esi + 0x4ec]
push esi
call fcn.0309c526
add esp, 0xc
test eax, eax
jne 0x309c074
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x1dc], eax
cmp dword [edi + 0x1dc], 0
mov eax, dword [ebp - 0x14]
jne 0x309be9e
mov dword [eax + 0x1a0], 0
cmp dword [edi + 0x1e0], 0
mov dword [ebp - 8], 0
je 0x309b972
lea esp, [esp]
lea eax, [ebp - 0x18]
push eax
push 1
lea eax, [ebp + 0xb]
push eax
push dword [ebp - 0x20]
push esi
call fcn.03096db6
mov ebx, eax
add esp, 0x14
cmp ebx, 0x51
je 0x309c058
push esi
call fcn.030a4ed6
add esp, 4
test eax, eax
jne 0x309bf17
test ebx, ebx
jne 0x309b965
cmp dword [ebp - 0x18], ebx
jle 0x309be2c
cmp dword [edi + 0x1e0], 2
jne 0x309ba53
mov ecx, dword [edi + 0x1e8]
mov eax, ecx
mov edx, dword [edi + 0x1ec]
or eax, edx
je 0x309ba0f
sub ecx, 1
mov dword [edi + 0x1e8], ecx
sbb edx, ebx
mov dword [edi + 0x1ec], edx
test edx, edx
jl 0x309b95b
jg 0x309be1a
test ecx, ecx
ja 0x309be1a
mov dword [edi + 0x1f0], 2
mov dword [edi + 0x1e0], 0
mov ebx, dword [ebp - 4]
push esi
call fcn.030a4ed6
add esp, 4
test eax, eax
jne 0x309bf17
cmp dword [ebp - 8], eax
jne 0x309bff5
mov eax, 0x51eb851f
imul dword [esi + 0xd64]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
je 0x309b9c6
push esi
call fcn.030a1276
add esp, 4
test eax, eax
jne 0x309c074
cmp byte [ebx + 0x249], al
je 0x309b9c6
mov byte [edi + 0x1f5], 1
cmp byte [edi + 0x1f5], 0
je 0x309b9dc
cmp dword [esi + 0x128], 0
jne 0x309bf23
cmp dword [esi + 0x128], 0
je 0x309bf3b
cmp dword [edi + 0x1f0], 2
jne 0x309b9fd
push 1
push esi
call fcn.0309c3b6
add esp, 8
cmp dword [esi + 0x128], 0
jne 0x309b636
jmp 0x309bf3b
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x10], 0
push eax
lea eax, [ebp - 0x10]
push eax
push 1
lea eax, [ebp + 0xb]
push eax
push esi
call fcn.030c0b76
add esp, 0x14
cmp eax, 0xffffffff
jne 0x309be1a
push 0x10081ff8
push esi
call fcn.03096d36
add esp, 8
mov dword [edi + 0x1e0], 0
jmp 0x309be10
push 1
lea eax, [ebp + 0xb]
push eax
lea ebx, [edi + 0x1bc]
push ebx
call fcn.0308ee16
add esp, 0xc
test eax, eax
jne 0x309befd
cmp byte [ebp + 0xb], 0xa
jne 0x309be1a
push ebx
call fcn.0308eeb6
mov ebx, eax
lea eax, [edi + 0x1bc]
push eax
call fcn.0308ee86
push eax
push ebx
push 1
push esi
mov dword [ebp - 0x10], eax
call fcn.03096be6
add esp, 0x18
cmp byte [esi + 0x731], 0
jne 0x309bad1
push dword [ebp - 0x10]
cmp byte [esi + 0x719], 0
mov ecx, 3
mov eax, 2
cmovne eax, ecx
push ebx
push eax
push esi
call fcn.03096bc6
add esp, 0x10
test eax, eax
jne 0x309c074
mov eax, dword [ebp - 0x10]
cdq
add dword [esi + 0xd78], eax
adc dword [esi + 0xd7c], edx
mov al, byte [ebx]
cmp al, 0xd
je 0x309bd48
cmp al, 0xa
je 0x309bd48
push 0x11
push ebx
push 0x1008206c
call fcn.0309b126
add esp, 0xc
test eax, eax
je 0x309bb14
mov eax, dword [esi + 0xf0]
cmp eax, 0x191
je 0x309bb35
push 0x13
push ebx
push 0x10082080
call fcn.0309b126
add esp, 0xc
test eax, eax
je 0x309bb87
mov eax, dword [esi + 0xf0]
cmp eax, 0x197
jne 0x309bb87
cmp eax, 0x197
push ebx
sete byte [ebp - 0x24]
call fcn.030a11a6
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x309bef1
push ebx
push dword [ebp - 0x24]
push esi
call fcn.030a2b86
push ebx
mov dword [ebp - 0x10], eax
call dword [0x100928d0]
mov eax, dword [ebp - 0x10]
add esp, 0x10
test eax, eax
jne 0x309c074
lea eax, [edi + 0x1bc]
push eax
call fcn.0308ee96
add esp, 4
jmp 0x309be1a
push 0xf
push ebx
push 0x10082094
call fcn.0309b126
add esp, 0xc
test eax, eax
je 0x309bc05
mov ecx, dword [esi + 0xf0]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
jne 0x309bbda
push ecx
push 0x100820a4
push esi
call fcn.03096d36
add esp, 0xc
lea eax, [edi + 0x1bc]
push eax
call fcn.0308ee96
add esp, 4
jmp 0x309be1a
lea eax, [edi + 0x1e8]
push eax
push 0xa
lea eax, [ebx + 0xf]
push 0
push eax
call fcn.030a9646
add esp, 0x10
lea eax, [edi + 0x1bc]
push eax
call fcn.0308ee96
add esp, 4
jmp 0x309be1a
push 0x100820d8
push 0x100820e0
push ebx
call fcn.030a10d6
add esp, 0xc
test al, al
je 0x309bc37
lea eax, [edi + 0x1bc]
mov byte [edi + 0x1f5], 1
push eax
call fcn.0308ee96
add esp, 4
jmp 0x309be1a
push 0x12
push ebx
push 0x100820ec
call fcn.0309b126
add esp, 0xc
test eax, eax
je 0x309bcd8
mov ecx, dword [esi + 0xf0]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
jne 0x309bc8e
push ecx
push 0x10082100
push esi
call fcn.03096d36
add esp, 0xc
lea eax, [edi + 0x1bc]
push eax
call fcn.0308ee96
add esp, 4
jmp 0x309be1a
push 0x10081e70
push 0x100820ec
push ebx
call fcn.030a10d6
add esp, 0xc
test al, al
je 0x309bd34
push 0x10082134
push esi
call fcn.03096d36
push esi
mov byte [edi + 0x1f4], 1
call fcn.030c0b46
add esp, 0xc
lea eax, [edi + 0x1bc]
push eax
call fcn.0308ee96
add esp, 4
jmp 0x309be1a
push 0x100820d8
push 0x10082150
push ebx
call fcn.030a10d6
add esp, 0xc
test al, al
je 0x309bd0a
lea eax, [edi + 0x1bc]
mov byte [edi + 0x1f5], 1
push eax
call fcn.0308ee96
add esp, 4
jmp 0x309be1a
lea eax, [esi + 0xf0]
push eax
lea eax, [ebp - 0x28]
push eax
push 0x10082164
push ebx
call fcn.030cae8a
add esp, 0x10
cmp eax, 2
jne 0x309bd34
mov eax, dword [esi + 0xf0]
mov dword [esi + 0xd64], eax
lea eax, [edi + 0x1bc]
push eax
call fcn.0308ee96
add esp, 4
jmp 0x309be1a
cmp dword [esi + 0xf0], 0x197
jne 0x309bdf8
cmp byte [esi + 0xd21], 0
jne 0x309bdf8
mov edx, dword [edi + 0x1e8]
mov eax, edx
mov ecx, dword [edi + 0x1ec]
or eax, ecx
mov dword [edi + 0x1e0], 2
je 0x309bda0
push ecx
push edx
push 0x10082028
push esi
call fcn.03096d36
add esp, 0x10
cmp dword [edi + 0x1e0], 0
jne 0x309b8d6
jmp 0x309be02
cmp byte [edi + 0x1f4], 0
je 0x309bdf8
push 0x1008204c
push esi
call fcn.03096d36
lea eax, [ebx + 1]
mov byte [esi + 0x13f], 1
cmp byte [eax], 0xa
cmove ebx, eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x18]
push eax
push 1
lea eax, [ebx + 1]
push eax
push esi
call fcn.030c0b76
add esp, 0x1c
cmp eax, 0xffffffff
jne 0x309bd91
push 0x10081ff8
push esi
call fcn.03096d36
add esp, 8
mov dword [edi + 0x1f0], 2
mov dword [edi + 0x1e0], 0
mov eax, dword [edi + 0x1e8]
or eax, dword [edi + 0x1ec]
jne 0x309be1a
mov dword [edi + 0x1f0], 2
cmp dword [edi + 0x1e0], 0
jne 0x309b8d6
jmp 0x309b96f
cmp dword [esi + 0x170], 0
je 0x309be6e
cmp dword [esi + 0x9d8], 0
je 0x309be6e
cmp dword [esi + 0xce4], 0
je 0x309be6e
mov ebx, dword [ebp - 4]
push 0x10081fc0
push esi
mov byte [ebx + 0x248], 1
call fcn.03096d36
add esp, 8
mov dword [edi + 0x1e0], 0
jmp 0x309b972
push 0x10081fe0
push esi
mov dword [ebp - 8], 1
call fcn.03096c76
mov ebx, dword [ebp - 4]
add esp, 8
mov dword [edi + 0x1e0], 0
jmp 0x309b972
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp + 0xc]
push eax
push dword [edi + 0x1dc]
push dword [esi + 0x130]
push dword [ebx + 0x2ac]
push esi
call fcn.030970a6
mov ecx, eax
add esp, 0x14
test ecx, ecx
jne 0x309bed9
push dword [ebp + 0xc]
push dword [esi + 0x130]
push 2
push esi
call fcn.03096be6
add esp, 0x10
mov ecx, eax
mov eax, dword [ebp + 0xc]
sub dword [edi + 0x1dc], eax
add dword [esi + 0x130], eax
mov eax, ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov esp, ebp
pop ebp
ret
push 0x1008200c
push esi
call fcn.03096c76
add esp, 8
mov eax, 0x38
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x2a
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xc]
push dword [eax]
push ebx
push esi
call fcn.03097596
mov eax, dword [ebp - 0xc]
add esp, 0xc
mov dword [eax], 0xffffffff
mov eax, 0x51eb851f
imul dword [esi + 0xd64]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
je 0x309c001
cmp byte [edi + 0x1f5], 0
je 0x309bf88
cmp dword [esi + 0x128], 0
je 0x309bf88
push 0x10082174
push esi
mov byte [ebx + 0x248], 1
call fcn.03096d36
push esi
call fcn.0309c336
add esp, 0xc
jmp 0x309bfbe
push dword [esi + 0x128]
call dword [0x100928d0]
push 2
push ebx
mov dword [esi + 0x128], 0
call fcn.030976b6
mov eax, dword [ebp - 0xc]
push dword [eax]
push ebx
push esi
call fcn.03097596
mov eax, dword [ebp - 0xc]
add esp, 0x18
mov dword [eax], 0xffffffff
mov dword [edi + 0x1f0], 0
cmp byte [ebx + 0x248], 0
jne 0x309c058
lea eax, [edi + 0x1bc]
push eax
call fcn.0308ee26
push dword [esi + 0xf0]
push 0x1008218c
push esi
call fcn.03096c76
add esp, 0x10
pop edi
pop esi
mov eax, 0x38
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x1f0], 2
push dword [esi + 0xce4]
call dword [0x100928d0]
push dword [esi + 0xd64]
mov dword [esi + 0xce4], 0
push 0x100821bc
push esi
mov word [esi + 0x9dc], 1
call fcn.03096d36
lea eax, [edi + 0x1bc]
mov byte [esi + 0x13f], 0
push eax
mov byte [ebx + 0x256], 0
call fcn.0308ee26
add esp, 0x14
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push 0x10081f98
push esi
call fcn.03096c76
mov eax, 0x1c
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret