Function at 0x401000
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40c
mov eax, 0x4102d4
push ebx
push esi
mov dword [0x4117e8], eax
mov dword [0x410ba8], eax
mov dword [0x414044], eax
mov dword [0x411804], eax
xor ebx, ebx
mov dword [0x414048], eax
push edi
lea eax, [ebp + 0xc]
push ebx
lea ecx, [ebp + 8]
push eax
push ecx
mov dword [0x4117f0], 0x40d244
mov byte [0x413c40], bl
call fcn.00405d20
push 0x405fe0
call fcn.0040b52c
add esp, 4
push ebx
push ebx
push ebx
push 0x41404c
call fcn.00404f60
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov ecx, dword [0x41404c]
push edx
push eax
lea edx, [ebp - 0xc]
push ecx
push edx
call fcn.00405ac0
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 4]
lea ecx, [ebp - 5]
push eax
push ecx
push str.n:c:t:b:T:p:u:v:rkVhwix:y:z:C:H:P:A:g:X:de:Sq
push edx
call fcn.00405b70
test eax, eax
jne 0x401534
mov esi, dword [sym.imp.MSVCRT.dll__isctype]
movsx eax, byte [ebp - 5]
add eax, 0xffffffbf
cmp eax, 0x39
ja case.0x4010b8.92
xor ecx, ecx
mov cl, byte [eax + 0x401708]
jmp dword [ecx*4 + 0x401698]
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
cmp eax, ebx
mov dword [0x40d010], eax
jg case.0x4010b8.92
push str.Invalid_number_of_requests_n
call fcn.00401750
jmp 0x401513
mov dword [0x410268], 1
jmp case.0x4010b8.92
mov dword [0x40d014], ebx
jmp case.0x4010b8.92
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
mov dword [0x40d018], eax
jmp 0x401513
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.MSVCRT.dll_atoi]
mov dword [0x41026c], eax
jmp 0x401513
cmp dword [0x410260], ebx
jle 0x40113f
push str.Cannot_mix_POST_PUT_and_HEAD_n
call fcn.00401750
add esp, 4
mov dword [0x410260], 0xffffffff
jmp case.0x4010b8.92
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.MSVCRT.dll__strdup]
mov dword [0x410bb8], eax
jmp 0x401513
mov dword [0x40d01c], ebx
jmp case.0x4010b8.92
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.MSVCRT.dll__strdup]
mov dword [0x4117e0], eax
jmp 0x401513
mov dword [0x40d020], ebx
jmp case.0x4010b8.92
cmp dword [0x410260], ebx
je 0x4011a1
push str.Cannot_mix_POST_and_HEAD_n
call fcn.00401750
add esp, 4
mov ecx, dword [ebp - 4]
push ecx
call fcn.00404730
add esp, 4
cmp eax, ebx
jne 0x4011c0
mov dword [0x410260], 1
jmp case.0x4010b8.92
cmp dword [0x413820], ebx
je case.0x4010b8.92
push eax
call dword [sym.imp.MSVCRT.dll_exit]
cmp dword [0x410260], ebx
je 0x4011e8
push str.Cannot_mix_PUT_and_HEAD_n
call fcn.00401750
add esp, 4
mov edx, dword [ebp - 4]
push edx
call fcn.00404730
add esp, 4
cmp eax, ebx
jne 0x401207
mov dword [0x410260], 2
jmp case.0x4010b8.92
cmp dword [0x413820], ebx
je case.0x4010b8.92
push eax
call dword [sym.imp.MSVCRT.dll_exit]
mov dword [0x41025c], 1
jmp case.0x4010b8.92
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
mov dword [0x410258], eax
jmp 0x401513
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.MSVCRT.dll_atoi]
mov dword [0x410264], eax
mov dword [0x40d010], 0xc350
jmp 0x401513
mov eax, dword [ebp - 4]
mov edx, 0x413840
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
cmp cl, bl
jne 0x401265
jmp case.0x4010b8.92
mov edx, dword [ebp - 4]
mov eax, dword [0x41404c]
push ebx
push 0x40d19c
push edx
push str.Cookie:
push eax
call fcn.00405890
add esp, 0x14
mov dword [0x414044], eax
jmp case.0x4010b8.92
mov edi, dword [ebp - 4]
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x4012ba
xor edx, edx
push 8
mov dl, byte [edi]
push edx
call esi
mov edi, dword [ebp - 4]
add esp, 8
jmp 0x4012cc
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
xor eax, eax
mov al, byte [edi]
mov edx, dword [ecx]
mov al, byte [edx + eax*2]
and eax, 8
cmp eax, ebx
je 0x4012d6
inc edi
mov dword [ebp - 4], edi
jmp 0x40129e
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
call fcn.0040b3b0
cmp eax, 0x400
jbe 0x4012fa
push str.Authentication_credentials_too_long_n
call fcn.00401750
add esp, 4
mov edx, dword [ebp - 4]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [ebp - 0x40c]
push ecx
push edx
push eax
call fcn.0040b3e0
push ebx
lea ecx, [ebp - 0x40c]
push 0x40d19c
push ecx
push str.Authorization:_Basic
jmp 0x4013bc
mov edi, dword [ebp - 4]
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x40134d
xor edx, edx
push 8
mov dl, byte [edi]
push edx
call esi
mov edi, dword [ebp - 4]
add esp, 8
jmp 0x40135f
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
xor eax, eax
mov al, byte [edi]
mov edx, dword [ecx]
mov al, byte [edx + eax*2]
and eax, 8
cmp eax, ebx
je 0x401369
inc edi
mov dword [ebp - 4], edi
jmp 0x401331
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
call fcn.0040b3b0
cmp eax, 0x400
jbe 0x40138d
push str.Proxy_credentials_too_long_n
call fcn.00401750
add esp, 4
mov edx, dword [ebp - 4]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [ebp - 0x40c]
push ecx
push edx
push eax
call fcn.0040b3e0
push ebx
lea ecx, [ebp - 0x40c]
push 0x40d19c
push ecx
push str.Proxy_Authorization:_Basic
mov edx, dword [0x411804]
mov byte [ebp + eax - 0x40c], bl
mov eax, dword [0x41404c]
push edx
push eax
call fcn.00405890
add esp, 0x18
mov dword [0x411804], eax
jmp case.0x4010b8.92
mov ecx, dword [ebp - 4]
mov edx, dword [0x414048]
mov eax, dword [0x41404c]
push ebx
push 0x40d19c
push ecx
push edx
push eax
call fcn.00405890
mov ecx, dword [ebp - 4]
mov edi, dword [sym.imp.MSVCRT.dll__strnicmp]
push 5
push 0x40d110
push ecx
mov dword [0x414048], eax
call edi
add esp, 0x20
test eax, eax
jne 0x40142c
mov dword [0x41027c], 1
jmp case.0x4010b8.92
mov edx, dword [ebp - 4]
push 7
push str.Accept:
push edx
call edi
add esp, 0xc
test eax, eax
jne 0x40144f
mov dword [0x410284], 1
jmp case.0x4010b8.92
mov eax, dword [ebp - 4]
push 0xb
push str.User_Agent:
push eax
call edi
add esp, 0xc
test eax, eax
jne case.0x4010b8.92
mov dword [0x410280], 1
jmp case.0x4010b8.92
mov dword [0x410288], 1
jmp case.0x4010b8.92
mov ecx, dword [ebp - 4]
mov dword [0x410288], 1
mov dword [0x4117e8], ecx
jmp case.0x4010b8.92
mov edx, dword [ebp - 4]
push 0x3a
push edx
call dword [sym.imp.MSVCRT.dll_strchr]
add esp, 8
cmp eax, ebx
je 0x4014bf
mov byte [eax], bl
inc eax
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov dword [0x410274], eax
mov eax, dword [ebp - 4]
mov edx, 0x413c40
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
cmp cl, bl
jne 0x4014c9
mov dword [0x410278], 1
jmp case.0x4010b8.92
mov eax, dword [ebp - 4]
mov dword [0x410288], 1
mov dword [0x410ba8], eax
jmp case.0x4010b8.92
mov ecx, dword [ebp - 4]
mov dword [0x410288], 1
mov dword [0x4117f0], ecx
jmp case.0x4010b8.92
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
push eax
call fcn.00404310
add esp, 4
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 4]
lea edx, [ebp - 5]
push ecx
push edx
push str.n:c:t:b:T:p:u:v:rkVhwix:y:z:C:H:P:A:g:X:de:Sq
push eax
call fcn.00405b70
test eax, eax
je 0x4010a0
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + 8]
mov esi, dword [sym.imp.MSVCRT.dll_fprintf]
dec ecx
cmp dword [eax + 0xc], ecx
je 0x40156e
mov edx, dword [ebp + 0xc]
mov ecx, dword [sym.imp.MSVCRT.dll__iob]
add ecx, 0x40
mov eax, dword [edx]
push eax
push str._s:_wrong_number_of_arguments_n
push ecx
call esi
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
push eax
call fcn.00404310
mov eax, dword [ebp - 0xc]
add esp, 0x10
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 0x1c]
mov edx, dword [edx + ecx*4]
inc ecx
mov dword [eax + 0xc], ecx
mov eax, dword [0x41404c]
push edx
push eax
call fcn.00405850
push eax
call fcn.00404560
add esp, 4
test eax, eax
je 0x4015b8
mov ecx, dword [ebp + 0xc]
mov eax, dword [sym.imp.MSVCRT.dll__iob]
add eax, 0x40
mov edx, dword [ecx]
push edx
push str._s:_invalid_URL_n
push eax
call esi
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
push edx
call fcn.00404310
add esp, 0x10
mov eax, dword [0x40d018]
cmp eax, ebx
jl 0x4015c8
cmp eax, 0x4e20
jle 0x4015f7
mov eax, dword [ebp + 0xc]
mov edx, dword [sym.imp.MSVCRT.dll__iob]
push 0x4e20
add edx, 0x40
mov ecx, dword [eax]
push ecx
push str._s:_Invalid_Concurrency__Range_0.._d__n
push edx
call esi
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
push ecx
call fcn.00404310
mov eax, dword [0x40d018]
add esp, 0x14
mov ecx, dword [0x40d010]
cmp eax, ecx
jle 0x40162c
mov edx, dword [ebp + 0xc]
mov ecx, dword [sym.imp.MSVCRT.dll__iob]
add ecx, 0x40
mov eax, dword [edx]
push eax
push 0x40d058
push ecx
call esi
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
push eax
call fcn.00404310
mov ecx, dword [0x40d010]
add esp, 0x10
cmp dword [0x40d014], ebx
je 0x401672
cmp ecx, 0x96
jle 0x401672
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
cmp edx, 0x64
mov dword [0x40d014], edx
jge 0x401678
mov dword [0x40d014], 0x64
jmp 0x401678
call fcn.004042a0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [0x40d014], ebx
call fcn.004042a0
call fcn.00401790
mov edx, dword [0x41404c]
push edx
call fcn.00404e00
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret