Function at 0x409936
Capabilities:
Check http status code

Disassembly:
push 0x24
mov eax, 0x55b2ed
call fcn.00531d28
mov esi, dword [ebp + 8]
mov ebx, dword [esi + 0xc]
cmp byte [ebx + 0xb0], 0xc
jne 0x40a20b
cmp byte [ebx + 0xb1], 0x4a
jne 0x40a20b
push 0xc
mov dword [esi + 0x388], 1
call fcn.005120bc
pop ecx
test eax, eax
je 0x409981
mov ecx, eax
call fcn.0040974d
jmp 0x409983
xor eax, eax
fld dword [0x564828]
mov dword [esi + 0x394], eax
mov al, byte [ebx + 0xb3]
fst dword [ebp - 0x10]
mov byte [esi + 0x38c], al
cmp al, 0x13
jb 0x4099d1
lea eax, [ebx + 0xb8]
test byte [eax], 0xf
je 0x4099d1
mov al, byte [eax]
mov cl, al
shr cl, 4
movzx ecx, cl
mov dword [ebp - 0x28], ecx
and al, 0xf
fild dword [ebp - 0x28]
movzx eax, al
fmul qword [0x566018]
mov dword [ebp - 0x28], eax
fidiv dword [ebp - 0x28]
fstp dword [ebp - 0x10]
movzx eax, byte [ebx + 0xb4]
mov dword [ebp - 0x28], eax
movzx eax, byte [ebx + 0xb5]
fild dword [ebp - 0x28]
mov dword [ebp - 0x28], eax
mov al, byte [ebx + 0xb7]
fild dword [ebp - 0x28]
fdivp st(1)
fstp dword [ebp - 0x20]
fstp dword [ebp - 0x1c]
test al, al
je 0x409a18
movzx ecx, byte [ebx + 0xb6]
movzx eax, al
mov dword [ebp - 0x28], ecx
fild dword [ebp - 0x28]
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fdivp st(1)
fstp dword [ebp - 0x1c]
and dword [ebp - 0x18], 0
mov eax, dword [ebp + 8]
cmp byte [eax + 0x38c], 0x11
jb 0x409a44
fldz
fcomp dword [ebp - 0x1c]
fnstsw ax
test ah, 5
jp 0x409a44
mov eax, dword [ebp - 0x18]
sub eax, 0
je 0x409a44
dec eax
jne 0x409a4a
fld dword [ebp - 0x1c]
jmp 0x409a47
fld dword [ebp - 0x20]
fstp dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
push 0x6c
imul edi, edi, 0x23
call fcn.005120bc
pop ecx
mov dword [ebp - 0x28], eax
and dword [ebp - 4], 0
test eax, eax
je 0x409a6e
mov ecx, eax
call fcn.004097d0
mov esi, eax
jmp 0x409a70
xor esi, esi
lea eax, [ebx + edi + 0xb9]
mov cl, byte [eax]
shr cl, 5
and cl, 3
movzx ecx, cl
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x28], ecx
fild dword [ebp - 0x28]
fstp dword [ebp - 0x24]
fld dword [ebp - 0x24]
fstp dword [esi + 4]
movzx eax, byte [eax]
and eax, 0x1f
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fmul qword [0x565fc0]
fadd dword [ebp - 0x24]
fstp dword [esi + 4]
mov al, byte [ebx + edi + 0xba]
test al, al
jbe 0x409b45
movzx eax, al
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fmul dword [ebp - 0x14]
fstp dword [ebp - 0x24]
fld dword [ebp - 0x24]
fstp dword [esi + 0x14]
fldz
fcomp dword [ebp - 0x10]
fnstsw ax
test ah, 5
jp 0x409af4
movsx eax, byte [edi + ebx + 0xd3]
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fmul dword [ebp - 0x10]
fadd dword [ebp - 0x24]
fstp dword [esi + 0x14]
fld dword [esi + 0x14]
fdivr qword [0x564990]
fstp dword [ebp - 0x24]
fld dword [ebp - 0x24]
call fcn.00531ff0
fld dword [ebp - 0x24]
fadd st(0), st(0)
push ecx
mov dword [esi + 0x18], eax
fmul qword [0x566010]
fdiv qword [0x565fb0]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fstp dword [esp]
call fcn.00413420
imul eax, eax, 0x64
push eax
push str.PC3__d
mov dword [esi + 0x1c], eax
lea eax, [esi + 0x20]
push 0x20
push eax
call fcn.00415470
add esp, 0x14
movzx ecx, byte [ebx + edi + 0xbb]
mov dword [ebp - 0x28], ecx
fild dword [ebp - 0x28]
fmul dword [ebp - 0x14]
fstp dword [ebp - 0x24]
fld dword [ebp - 0x24]
fstp dword [esi + 0x44]
fldz
fcomp dword [ebp - 0x10]
fnstsw ax
test ah, 5
jp 0x409b82
movsx eax, byte [edi + ebx + 0xd4]
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fmul dword [ebp - 0x10]
fadd dword [ebp - 0x24]
fstp dword [esi + 0x44]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x330]
cmp eax, 0x190
je 0x409c01
cmp eax, 0x215
je 0x409beb
cmp eax, 0x29b
je 0x409bc9
cmp eax, 0x320
jne 0x409c25
cmp ecx, 0x50
je 0x409bfa
cmp ecx, 0x5a
je 0x409bc2
cmp ecx, 0x64
je 0x409bdd
cmp ecx, 0x6e
jne 0x409c25
push 0x5660b0
jmp 0x409c17
push 0x5660ac
jmp 0x409c17
cmp ecx, 0x54
je 0x409be4
cmp ecx, 0x60
je 0x409bfa
cmp ecx, 0x6c
je 0x409bc2
cmp ecx, 0x78
jne 0x409c25
push 0x5660a8
jmp 0x409c17
push 0x5660a4
jmp 0x409c17
cmp ecx, 0x5a
je 0x409c0b
cmp ecx, 0x69
je 0x409be4
cmp ecx, 0x78
jne 0x409c25
push 0x5660a0
jmp 0x409c17
cmp ecx, 0x64
je 0x409c12
cmp ecx, 0x78
jne 0x409c25
push str.EGFJHK
jmp 0x409c17
push 0x5647f4
lea eax, [esi + 0x20]
push 0x20
push eax
call fcn.00415550
add esp, 0xc
test byte [ebx + edi + 0xbc], 1
je 0x409c66
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 1
test ecx, ecx
je 0x409c4e
call fcn.004047aa
jmp 0x409c50
xor eax, eax
fld dword [0x566098]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbc], 2
je 0x409ca7
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 2
test ecx, ecx
je 0x409c8f
call fcn.004047aa
jmp 0x409c91
xor eax, eax
fld dword [0x566094]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbc], 4
je 0x409ce8
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 3
test ecx, ecx
je 0x409cd0
call fcn.004047aa
jmp 0x409cd2
xor eax, eax
fld dword [0x566090]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbc], 8
je 0x409d29
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 4
test ecx, ecx
je 0x409d11
call fcn.004047aa
jmp 0x409d13
xor eax, eax
fld dword [0x56608c]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbc], 0x10
je 0x409d6a
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 5
test ecx, ecx
je 0x409d52
call fcn.004047aa
jmp 0x409d54
xor eax, eax
fld dword [0x566088]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbc], 0x20
je 0x409dab
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 6
test ecx, ecx
je 0x409d93
call fcn.004047aa
jmp 0x409d95
xor eax, eax
fld dword [0x566084]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbc], 0x40
je 0x409dec
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 7
test ecx, ecx
je 0x409dd4
call fcn.004047aa
jmp 0x409dd6
xor eax, eax
fld dword [0x566080]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbc], 0x80
je 0x409e2d
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 8
test ecx, ecx
je 0x409e15
call fcn.004047aa
jmp 0x409e17
xor eax, eax
fld dword [0x56607c]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbd], 1
je 0x409e6e
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 9
test ecx, ecx
je 0x409e56
call fcn.004047aa
jmp 0x409e58
xor eax, eax
fld dword [0x566078]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbd], 2
je 0x409eaf
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0xa
test ecx, ecx
je 0x409e97
call fcn.004047aa
jmp 0x409e99
xor eax, eax
fld dword [0x566074]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbd], 4
je 0x409ef0
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0xb
test ecx, ecx
je 0x409ed8
call fcn.004047aa
jmp 0x409eda
xor eax, eax
fld dword [0x566070]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbd], 8
je 0x409f31
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0xc
test ecx, ecx
je 0x409f19
call fcn.004047aa
jmp 0x409f1b
xor eax, eax
fld dword [0x56606c]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbd], 0x10
je 0x409f72
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0xd
test ecx, ecx
je 0x409f5a
call fcn.004047aa
jmp 0x409f5c
xor eax, eax
fld dword [0x566068]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbd], 0x20
je 0x409fb3
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0xe
test ecx, ecx
je 0x409f9b
call fcn.004047aa
jmp 0x409f9d
xor eax, eax
fld dword [0x566064]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
test byte [ebx + edi + 0xbd], 0x40
je 0x409ff4
push 0xc
call fcn.005120bc
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0xf
test ecx, ecx
je 0x409fdc
call fcn.004047aa
jmp 0x409fde
xor eax, eax
fld dword [0x566060]
or dword [ebp - 4], 0xffffffff
fstp dword [eax + 4]
mov ecx, dword [esi + 0x40]
push eax
call fcn.00409837
mov eax, dword [esi + 0x40]
and dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], eax
call fcn.00404ce9
jmp 0x40a060
fldz
fcom dword [ecx + 4]
fnstsw ax
test ah, 5
jp 0x40a056
fld dword [esi + 0x44]
fdiv dword [ecx + 4]
fstp dword [ebp - 0x24]
fcomp dword [ebp - 0x24]
fnstsw ax
test ah, 5
jp 0x40a058
fld dword [ebp - 0x24]
fdivr qword [0x564990]
fstp dword [ebp - 0x24]
fld dword [ebp - 0x24]
fstp dword [ecx + 8]
fild dword [esi + 0x18]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x24]
fld dword [ebp - 0x28]
fcompp
fnstsw ax
test ah, 5
jp 0x40a058
fld dword [ebp - 0x28]
fstp dword [ecx + 8]
jmp 0x40a058
fstp st(0)
lea ecx, [ebp - 0x30]
call fcn.005105ae
mov ecx, eax
test ecx, ecx
jne 0x40a008
movzx eax, byte [ebx + edi + 0xbf]
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fld dword [ebp - 0x14]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fstp dword [esi + 0x48]
fldz
fld dword [ebp - 0x10]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x40a0ac
movsx eax, byte [edi + ebx + 0xd5]
mov dword [ebp - 0x24], eax
fild dword [ebp - 0x24]
fld st(1)
fmulp st(1)
fadd dword [ebp - 0x28]
fstp dword [esi + 0x48]
movzx eax, byte [ebx + edi + 0xc0]
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fld st(3)
fmulp st(1)
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fstp dword [esi + 0x4c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x40a0e8
movsx eax, byte [edi + ebx + 0xd6]
mov dword [ebp - 0x24], eax
fild dword [ebp - 0x24]
fld st(1)
fmulp st(1)
fadd dword [ebp - 0x28]
fstp dword [esi + 0x4c]
movzx eax, byte [ebx + edi + 0xc1]
mov dword [ebp - 0x28], eax
lea eax, [ebx + edi + 0xc2]
fild dword [ebp - 0x28]
fld st(3)
fmulp st(1)
fstp dword [esi + 0x50]
movzx ecx, byte [eax]
movzx edx, byte [ebx + edi + 0xc3]
and ecx, 0xf
shl ecx, 8
add ecx, edx
mov dword [ebp - 0x28], ecx
fild dword [ebp - 0x28]
fld st(3)
fmulp st(1)
fstp dword [esi + 0x54]
movzx eax, byte [eax]
movzx ecx, byte [ebx + edi + 0xc4]
shr eax, 4
shl eax, 8
add eax, ecx
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fld st(3)
fmulp st(1)
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fstp dword [esi + 0x58]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x40a16d
movsx eax, byte [edi + ebx + 0xd7]
mov dword [ebp - 0x24], eax
fild dword [ebp - 0x24]
fmulp st(1)
fadd dword [ebp - 0x28]
fstp dword [esi + 0x58]
jmp 0x40a16f
fstp st(0)
movzx eax, byte [ebx + edi + 0xc8]
movzx ecx, byte [ebx + edi + 0xc7]
shl eax, 8
add eax, ecx
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fld st(1)
fmulp st(1)
fstp dword [esi + 0x5c]
movzx eax, byte [ebx + edi + 0xc9]
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fld st(1)
fmulp st(1)
fstp dword [esi + 0x60]
movzx eax, byte [ebx + edi + 0xca]
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fld st(1)
fmulp st(1)
fstp dword [esi + 0x64]
movzx eax, byte [ebx + edi + 0xd0]
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x28]
fmulp st(1)
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
call fcn.00531ff0
cmp dword [esi + 0x18], 0
mov dword [esi + 0x68], eax
jle 0x40a1f6
push esi
mov esi, dword [ebp + 8]
mov ecx, dword [esi + 0x394]
call fcn.0040989c
inc dword [esi + 0x390]
jmp 0x40a1fe
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x409a1c
call fcn.00531e00
ret 4