Function at 0x312bb0
Capabilities:
Check http status code

Disassembly:
sub esp, 0x20
push ebx
push ebp
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x24], ecx
xor ecx, ecx
mov ebx, dword [esp + 0x24]
xor eax, eax
push esi
push edi
mov dword [esp + 0x28], edx
mov esi, 0xc991bca
mov dword [esp + 0x18], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov edi, dword [esp + 0x24]
lea esp, [esp]
cmp esi, 0x185df36a
jg 0x312e0f
je 0x312d50
cmp esi, 0x7969b56
jg 0x312d00
je 0x312caa
cmp esi, 0x2ad95e9
je 0x312c44
cmp esi, 0x4a8f948
jne 0x312c92
mov edx, 0x13
mov ecx, ebx
call fcn.00312b50
cmp eax, 0xc8
mov esi, 0x336a5a53
mov eax, 0x2f986844
cmove esi, eax
jmp 0x312bf0
mov eax, dword [0x31db24]
test eax, eax
jne 0x312c68
mov ecx, 0x30b444d4
call fcn.00313ed0
mov edx, 0xbe2af467
mov ecx, eax
call fcn.00313e30
mov dword [0x31db24], eax
push 0
push 0
push 0
push 0
push dword [esp + 0x28]
call eax
mov ecx, dword [esp + 0x18]
test eax, eax
mov dword [esp + 0x1c], eax
mov esi, 0x5c47661
mov eax, 0x7969b56
cmovne esi, eax
call fcn.00314200
cmp esi, 0x5c47661
jne 0x312bf0
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
mov eax, dword [0x31dd1c]
test eax, eax
jne 0x312cce
mov ecx, 0x30b444d4
call fcn.00313ed0
mov edx, 0x31f10285
mov ecx, eax
call fcn.00313e30
mov dword [0x31dd1c], eax
push 0
push 0
push 3
push 0
push 0
push dword [esp + 0x3c]
push dword [esp + 0x44]
push dword [esp + 0x38]
call eax
mov edi, eax
mov esi, 0x1423a994
test edi, edi
mov dword [esp + 0x24], edi
mov eax, 0x185df36a
cmovne esi, eax
jmp 0x312bf0
cmp esi, 0xc991bca
je 0x312d46
cmp esi, 0x1423a994
jne 0x312c92
mov eax, dword [0x31dfa8]
test eax, eax
jne 0x312d34
mov ecx, 0x30b444d4
call fcn.00313ed0
mov edx, 0x10474cb4
mov ecx, eax
call fcn.00313e30
mov dword [0x31dfa8], eax
push dword [esp + 0x1c]
call eax
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
mov esi, 0x29dfe096
jmp 0x312bf0
test ebp, ebp
je 0x312d66
mov ecx, 0x31d1d0
call fcn.00313470
mov ebx, eax
mov dword [esp + 0x14], ebx
jmp 0x312d6a
mov ebx, dword [esp + 0x14]
mov eax, dword [str.BJVu]
test eax, eax
jne 0x312d8e
mov ecx, 0x30b444d4
call fcn.00313ed0
mov edx, 0xb80345f1
mov ecx, eax
call fcn.00313e30
mov dword [str.BJVu], eax
push 0
push 0x844cc300
push 0
push 0
push 0
push dword [esp + 0x48]
push ebx
push edi
call eax
mov ebx, eax
mov eax, dword [0x31dbf8]
test eax, eax
jne 0x312dc9
mov ecx, 0xa028f2a0
call fcn.00313ed0
mov edx, 0x704a030e
mov ecx, eax
call fcn.00313e30
mov dword [0x31dbf8], eax
call eax
mov esi, eax
mov eax, dword [0x31de60]
test eax, eax
jne 0x312df1
mov ecx, 0xa028f2a0
call fcn.00313ed0
mov edx, 0x5ff67873
mov ecx, eax
call fcn.00313e30
mov dword [0x31de60], eax
mov ecx, dword [esp + 0x14]
push ecx
push 0
push esi
call eax
test ebx, ebx
mov esi, 0x377c87b0
mov eax, 0x397efc44
cmovne esi, eax
jmp 0x312bf0
cmp esi, 0x336a5a53
jg 0x312f45
je 0x312f14
cmp esi, 0x29dfe096
je 0x312e5c
cmp esi, 0x2f986844
jne 0x312c92
mov edx, dword [esp + 0x40]
mov ecx, ebx
call fcn.00312940
mov ecx, dword [esp + 0x10]
test eax, eax
mov eax, 1
mov esi, 0x336a5a53
cmovne ecx, eax
mov dword [esp + 0x10], ecx
jmp 0x312bf0
mov eax, dword [0x31dbf8]
mov dword [esp + 0x20], 0x200
test eax, eax
jne 0x312e88
mov ecx, 0xa028f2a0
call fcn.00313ed0
mov edx, 0x704a030e
mov ecx, eax
call fcn.00313e30
mov dword [0x31dbf8], eax
call eax
mov esi, eax
mov eax, dword [0x31dd60]
test eax, eax
jne 0x312eb0
mov ecx, 0xa028f2a0
call fcn.00313ed0
mov edx, 0x9016bda2
mov ecx, eax
call fcn.00313e30
mov dword [0x31dd60], eax
push 0x200
push 8
push esi
call eax
mov esi, eax
test esi, esi
je 0x312f0a
mov eax, dword [0x31dca8]
test eax, eax
jne 0x312ee4
mov ecx, 0x4bd881e1
call fcn.00313ed0
mov edx, 0xa85e7a8d
mov ecx, eax
call fcn.00313e30
mov dword [0x31dca8], eax
lea ecx, [esp + 0x20]
push ecx
push esi
push 0
call eax
test eax, eax
jne 0x312f03
sub esp, 8
mov edx, esi
call fcn.00315700
add esp, 8
mov dword [esp + 0x18], eax
mov ecx, esi
call fcn.00314200
mov esi, 0x2ad95e9
jmp 0x312bf0
mov eax, dword [0x31dfa8]
test eax, eax
jne 0x312f38
mov ecx, 0x30b444d4
call fcn.00313ed0
mov edx, 0x10474cb4
mov ecx, eax
call fcn.00313e30
mov dword [0x31dfa8], eax
push ebx
call eax
mov esi, 0x377c87b0
jmp 0x312bf0
cmp esi, 0x377c87b0
je 0x312faf
cmp esi, 0x397efc44
jne 0x312c92
test ebp, ebp
je 0x312f65
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
jmp 0x312f69
xor esi, esi
xor edi, edi
mov eax, dword [0x31df2c]
test eax, eax
jne 0x312f8d
mov ecx, 0x30b444d4
call fcn.00313ed0
mov edx, 0x611a6b53
mov ecx, eax
call fcn.00313e30
mov dword [0x31df2c], eax
push esi
push edi
push 0xffffffffffffffff
push dword [esp + 0x44]
push ebx
call eax
mov esi, eax
neg esi
sbb esi, esi
and esi, 0xd13e9ef5
add esi, 0x336a5a53
jmp 0x312be8
mov eax, dword [0x31dfa8]
test eax, eax
jne 0x312fd3
mov ecx, 0x30b444d4
call fcn.00313ed0
mov edx, 0x10474cb4
mov ecx, eax
call fcn.00313e30
mov dword [0x31dfa8], eax
push edi
call eax
mov esi, 0x1423a994
jmp 0x312bf0