Function at 0x40a2a0
Capabilities:
Check http status code

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0xfc
mov eax, dword [esp + 0x110]
movzx edx, byte [eax]
test byte [edx + 0x471d01], 8
je 0x40a4f0
mov ecx, dword [esp + 0x110]
lea esi, [esi]
nop
add ecx, 1
movzx edx, byte [ecx]
mov eax, edx
test byte [edx + 0x471d01], 8
jne 0x40a2d0
cmp al, 0x2d
je 0x40a4d0
xor ebp, ebp
cmp al, 0x2b
sete al
movzx eax, al
add ecx, eax
movzx ebx, byte [ecx]
cmp bl, 0x30
je 0x40a450
movzx eax, bl
movsx edi, bl
xor edx, edx
movzx esi, byte [eax + 0x471d01]
sub edi, 0x30
xor eax, eax
test esi, 2
je 0x40a5c0
mov esi, edi
mov edi, 0xa
imul ebx, edx, 0xa
mul edi
mov edi, esi
sar edi, 0x1f
add edx, ebx
add eax, esi
adc edx, edi
add ecx, 1
movzx ebx, byte [ecx]
movzx esi, bl
movzx esi, byte [esi + 0x471d01]
test esi, 2
je 0x40a3f0
movsx esi, bl
mov edi, 0xcccccccb
mov ebx, 0xccccccc
sub esi, 0x30
cmp edi, eax
sbb ebx, edx
jae 0x40a323
mov ebx, eax
mov edi, edx
xor ebx, 0xcccccccc
xor edi, 0xccccccc
or edi, ebx
jne 0x40a385
lea ebx, [ebp + 7]
cmp esi, ebx
jle 0x40a323
mov eax, dword [esp + 0x110]
mov dword [esp + 4], str..xXnN
mov dword [esp], eax
call sym._strpbrk
test eax, eax
je 0x40a5b0
movzx eax, byte [eax]
or eax, 0x20
movzx ebx, al
cmp al, 0x6e
je 0x40a5a0
mov eax, dword [esp + 0x110]
mov ecx, ebx
lea edx, [esp + 0x18]
call sym._l_str2dloc
test eax, eax
je 0x40a500
sub eax, dword [esp + 0x110]
mov ecx, eax
fld qword [esp + 0x18]
mov eax, dword [esp + 0x114]
mov byte [eax + 8], 0x13
fstp qword [eax]
jmp 0x40a442
xor edi, edi
and esi, 8
je 0x40a411
lea esi, [esi]
nop
add ecx, 1
movzx esi, byte [ecx]
mov ebx, esi
test byte [esi + 0x471d01], 8
jne 0x40a400
test bl, bl
jne 0x40a385
mov ebx, edi
test bl, bl
jne 0x40a385
test ebp, ebp
jne 0x40a4e0
mov edi, dword [esp + 0x114]
sub ecx, dword [esp + 0x110]
mov dword [edi], eax
mov dword [edi + 4], edx
mov byte [edi + 8], 3
lea eax, [ecx + 1]
add esp, 0xfc
pop ebx
pop esi
pop edi
pop ebp
ret
movzx eax, byte [ecx + 1]
and eax, 0xffffffdf
cmp al, 0x58
jne 0x40a301
movzx edx, byte [ecx + 2]
lea eax, [ecx + 2]
mov ecx, eax
movzx esi, byte [edx + 0x471d01]
mov ebx, edx
test esi, 0x10
je 0x40a5d0
xor eax, eax
xor edx, edx
jmp 0x40a4aa
sub esi, 0x30
mov edi, esi
sar edi, 0x1f
add eax, esi
adc edx, edi
add ecx, 1
movzx esi, byte [ecx]
mov ebx, esi
movzx esi, byte [esi + 0x471d01]
test esi, 0x10
je 0x40a3f0
movsx esi, bl
shld edx, eax, 4
shl eax, 4
test byte [esi + 0x471d01], 2
jne 0x40a483
or ebx, 0x20
movsx esi, bl
sub esi, 0x57
jmp 0x40a486
add ecx, 1
mov ebp, 1
jmp 0x40a2f5
neg eax
adc edx, 0
neg edx
jmp 0x40a42b
mov eax, edx
mov ecx, dword [esp + 0x110]
jmp 0x40a2e1
mov eax, dword [esp + 0x110]
mov dword [esp + 4], 0x2e
mov dword [esp], eax
call sym._strchr
mov ebp, eax
test eax, eax
je 0x40a5a0
mov eax, dword [esp + 0x110]
mov dword [esp], eax
call sym._strlen
cmp eax, 0xc8
ja 0x40a5a0
add eax, 1
cmp eax, 4
jae 0x40a5e0
test eax, eax
je 0x40a55d
mov edx, dword [esp + 0x110]
movzx edx, byte [edx]
mov byte [esp + 0x27], dl
test al, 2
jne 0x40a61b
call dword [sym.imp.msvcrt.dll_localeconv]
mov edx, ebp
sub edx, dword [esp + 0x110]
mov ecx, ebx
mov eax, dword [eax]
movzx eax, byte [eax]
mov byte [esp + edx + 0x27], al
lea edx, [esp + 0x18]
lea eax, [esp + 0x27]
call sym._l_str2dloc
test eax, eax
je 0x40a5a0
lea edx, [esp + 0x27]
sub eax, edx
mov ecx, eax
add eax, dword [esp + 0x110]
jne 0x40a3d8
lea esi, [esi]
xor eax, eax
jmp 0x40a445
xor ebx, ebx
jmp 0x40a3b5
mov edi, 1
jmp 0x40a3f2
mov edi, 1
xor eax, eax
xor edx, edx
jmp 0x40a3f2
mov edx, dword [esp + 0x110]
lea edi, [esp + 0x28]
lea ecx, [esp + 0x27]
sub ecx, edi
mov edx, dword [edx]
mov dword [esp + 0x27], edx
mov edx, dword [esp + 0x110]
mov edx, dword [edx + eax - 4]
mov dword [esp + eax + 0x23], edx
mov esi, dword [esp + 0x110]
sub esi, ecx
add ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
jmp 0x40a55d
mov edx, dword [esp + 0x110]
movzx edx, word [edx + eax - 2]
mov word [esp + eax + 0x25], dx
jmp 0x40a55d