Function at 0x40a70f
Capabilities:
Reference http user-agent string

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
push 8
call fcn.004523f8
add esp, 4
mov dword [ebp - 4], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebp - 8], 0
push 8
call fcn.004523f8
add esp, 4
mov dword [ebp - 0xc], eax
mov edi, eax
mov esi, 0x5522f3
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
push 8
call fcn.004523f8
add esp, 4
mov dword [ebp - 0x14], eax
mov edi, eax
mov esi, 0x5522f3
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0x10
call fcn.004523f8
add esp, 4
mov dword [ebp - 0x18], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov eax, 3
mov dword [ebx], eax
mov dword [ebp - 0x1c], 0
push 8
call fcn.004523f8
add esp, 4
mov dword [ebp - 0x20], eax
mov edi, eax
mov esi, 0x5522f3
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x24], esp
push 0
mov eax, 0x15
call fcn.00452404
cmp dword [ebp - 0x24], esp
je 0x40a7f5
push 6
call fcn.004523fe
add esp, 4
push 0
push 0
push 0
push getpeername
push 0
push str.WinHttp.WinHttpRequest.5.1
push 0x10030
push 0
push dword [ebp - 4]
push 3
mov ebx, 0x458580
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jne 0x40a8b0
push 0
push 0
push 0
push getpeername
push 0
push str.MSXML2.ServerXMLHTTP.6.0
push 0x10030
push 0
push dword [ebp - 4]
push 3
mov ebx, 0x458580
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jne 0x40a8b0
push 0
push 0
push 0
push getpeername
push 0
push str.MSXML2.ServerXMLHTTP.5.0
push 0x10030
push 0
push dword [ebp - 4]
push 3
mov ebx, 0x458580
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jne 0x40a8b0
mov eax, 0x5522f3
jmp 0x40b84b
cmp dword [ebp + 0xc], 1
mov eax, 0
sete al
test eax, eax
je 0x40a8ce
mov eax, 0x650a54
jmp 0x40a8d3
mov eax, 0x650bed
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a8ea
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov dword [ebp - 8], eax
cmp dword [ebp + 0x5c], 0xffffffff
je 0x40a97f
cmp dword [ebp + 0x5c], 1
jge 0x40a90e
mov dword [ebp + 0x5c], 0x3a98
jmp 0x40a92b
fild dword [ebp + 0x5c]
fstp qword [ebp - 0x28]
fld qword [ebp - 0x28]
fmul qword [0x650bf1]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
call fcn.00402577
mov dword [ebp + 0x5c], eax
push 0xa0000301
push 0
lea eax, [ebp + 0x5c]
push eax
push 0xa0000301
push 0
lea eax, [ebp + 0x5c]
push eax
push 0xa0000301
push 0
lea eax, [ebp + 0x5c]
push eax
push 0xa0000301
push 0
lea eax, [ebp + 0x5c]
push eax
push getpeername
push 0
push 0x650bf9
push 0x10030
push 0
push dword [ebp - 4]
push 6
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x4c
push 0x5506f2
mov ebx, dword [ebp + 0x4c]
push dword [ebx]
call fcn.004010cb
add esp, 8
cmp eax, 0
je 0x40aa3a
push 0xa0000004
push 0
push dword [ebp + 0x4c]
push 0x80000301
push 0
push 2
push getpeername
push 0
push str.SetProxy
push 0x10030
push 0
push dword [ebp - 4]
push 4
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x34
push 0x5506f2
mov ebx, dword [ebp + 0x64]
push dword [ebx]
call fcn.004010cb
add esp, 8
cmp eax, 0
je 0x40aa3a
push 0xa0000301
push 0
lea eax, [ebp + 0x74]
push eax
push 0xa0000004
push 0
push dword [ebp + 0x6c]
push 0xa0000004
push 0
push dword [ebp + 0x64]
push getpeername
push 0
push str.SetProxyCredentials
push 0x10030
push 0
push dword [ebp - 4]
push 5
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x40
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0xa0000004
push 0
push dword [ebp + 8]
push 0xa0000004
push 0
lea eax, [ebp - 8]
push eax
push getpeername
push 0
push str.Open
push 0x10030
push 0
push dword [ebp - 4]
push 5
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x40
cmp dword [ebp + 0x3c], 0
je 0x40aacd
push 0x80000301
push 0
push 0
push 0x80000301
push 0
push 6
push getpeername
push 0
push str.Option
push 0x10030
push 0
push dword [ebp - 4]
push 4
mov ebx, 0x458480
call fcn.0045240a
add esp, 0x34
push 0x5506f2
mov ebx, dword [ebp + 0x2c]
push dword [ebx]
call fcn.004010cb
add esp, 8
cmp eax, 0
jne 0x40ab23
push str._r_nAccept:___r_nAccept_Language:_zh_cn_r_nUser_Agent:_Mozilla_5.0__compatible__MSIE_9.0__Windows_NT_6.1__Trident_5.0__r_nContent_Type:_application_x_www_form_urlencoded
mov ebx, dword [ebp + 8]
push dword [ebx]
push str.Referer:
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp + 0x2c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40ab1d
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x2c]
mov dword [ebx], eax
push 0x5506f2
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
call fcn.004010cb
add esp, 8
cmp eax, 0
je 0x40ab7c
push 0xa0000004
push 0
push dword [ebp + 0x1c]
push getpeername
push 0
push 0x650b0e
push getpeername
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 4]
push 4
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x34
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push getpeername
push 0
push 0x5528bc
push getpeername
push 0
mov ebx, dword [ebp + 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x40abaf
mov eax, 0x5506f2
push eax
push 4
mov ebx, 0x4532d0
call fcn.0045240a
add esp, 0x34
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xffffffff
jle 0x40afa6
push 0
push 0
push 0
push getpeername
push 0
push 0x5528bc
push getpeername
push 0
mov ebx, dword [ebp + 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x40abf6
mov eax, 0x5506f2
push eax
push 3
mov ebx, 0x453fe0
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40ac2e
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40ac2a
imul eax, dword [ebx]
jmp 0x40ac1f
mov ecx, eax
test ecx, ecx
je 0x40ac4d
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40ac46
push ebx
push eax
call fcn.004523f2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40ac34
call fcn.004523f2
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 0xc]
call fcn.0040697f
xor ecx, ecx
push eax
lea eax, [ebp - 0x10]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40af9e
mov ebx, dword [ebp - 0xc]
call fcn.00402942
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40ac95
push 4
call fcn.004523fe
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40aca8
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push getpeername
push 0
push 0x650cd7
push getpeername
push 0
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x40ace3
mov eax, 0x5506f2
push eax
push 4
mov ebx, 0x4532d0
call fcn.0045240a
add esp, 0x34
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xffffffff
jle 0x40af96
mov ebx, dword [ebp - 0x14]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40ad21
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40ad1d
imul eax, dword [ebx]
jmp 0x40ad12
mov ecx, eax
test ecx, ecx
je 0x40ad40
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40ad39
push ebx
push eax
call fcn.004523f2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40ad27
call fcn.004523f2
add esp, 4
mov eax, 0x5522f3
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0xc]
call fcn.00402942
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40ad6d
push 4
call fcn.004523fe
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ad80
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
push 0
push 0
push 0
push getpeername
push 0
push 0x650cd7
push getpeername
push 0
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x40adaf
mov eax, 0x5506f2
push eax
push 3
mov ebx, 0x453fe0
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0x14]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40ade7
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40ade3
imul eax, dword [ebx]
jmp 0x40add8
mov ecx, eax
test ecx, ecx
je 0x40ae06
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40adff
push ebx
push eax
call fcn.004523f2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40aded
call fcn.004523f2
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 2
inc dword [ebp - 0x10]
mov ebx, dword [ebp - 0x14]
call fcn.0040697f
cmp dword [ebp - 0x10], eax
jle 0x40ae32
jmp 0x40aef6
mov ebx, dword [ebp - 0x14]
call fcn.00402942
mov eax, 1
cmp eax, ecx
jl 0x40ae50
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00402942
mov eax, 1
cmp eax, ecx
jl 0x40ae76
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00402942
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40ae9b
push 4
call fcn.004523fe
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40aeae
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
push 0x650cd7
mov ebx, dword [ebp - 0x28]
push dword [ebx]
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x24]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40aeeb
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov ebx, dword [ebp - 0x24]
mov dword [ebx], eax
jmp 0x40ae19
mov ebx, dword [ebp - 0x14]
call fcn.00402942
mov eax, 0
cmp eax, ecx
jl 0x40af14
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00402942
mov eax, 1
cmp eax, ecx
jl 0x40af3a
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x28], ebx
push getpeername
push 0
mov ebx, dword [ebp - 0x28]
mov eax, dword [ebx]
test eax, eax
jne 0x40af57
mov eax, 0x5506f2
push eax
push getpeername
push 0
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x40af6d
mov eax, 0x5506f2
push eax
push getpeername
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 4]
push 4
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x34
pop eax
pop ebx
pop ecx
jmp 0x40ac6a
add esp, 0xc
jmp 0x40b207
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push getpeername
push 0
push 0x650cd7
push getpeername
push 0
mov ebx, dword [ebp + 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x40afd9
mov eax, 0x5506f2
push eax
push 4
mov ebx, 0x4532d0
call fcn.0045240a
add esp, 0x34
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xffffffff
jle 0x40b207
push 0
push 0
push 0
push getpeername
push 0
push 0x650cd7
push getpeername
push 0
mov ebx, dword [ebp + 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x40b020
mov eax, 0x5506f2
push eax
push 3
mov ebx, 0x453fe0
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 0x14]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40b058
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40b054
imul eax, dword [ebx]
jmp 0x40b049
mov ecx, eax
test ecx, ecx
je 0x40b077
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40b070
push ebx
push eax
call fcn.004523f2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40b05e
call fcn.004523f2
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 2
inc dword [ebp - 0x10]
mov ebx, dword [ebp - 0x14]
call fcn.0040697f
cmp dword [ebp - 0x10], eax
jle 0x40b0a3
jmp 0x40b167
mov ebx, dword [ebp - 0x14]
call fcn.00402942
mov eax, 1
cmp eax, ecx
jl 0x40b0c1
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00402942
mov eax, 1
cmp eax, ecx
jl 0x40b0e7
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00402942
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40b10c
push 4
call fcn.004523fe
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b11f
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
push 0x650cd7
mov ebx, dword [ebp - 0x28]
push dword [ebx]
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x24]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b15c
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov ebx, dword [ebp - 0x24]
mov dword [ebx], eax
jmp 0x40b08a
mov ebx, dword [ebp - 0x14]
call fcn.00402942
mov eax, 0
cmp eax, ecx
jl 0x40b185
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x14]
call fcn.00402942
mov eax, 1
cmp eax, ecx
jl 0x40b1ab
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x28], ebx
push getpeername
push 0
mov ebx, dword [ebp - 0x28]
mov eax, dword [ebx]
test eax, eax
jne 0x40b1c8
mov eax, 0x5506f2
push eax
push getpeername
push 0
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x40b1de
mov eax, 0x5506f2
push eax
push getpeername
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 4]
push 4
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x34
mov eax, 0x5522f3
xor ecx, ecx
test eax, eax
je 0x40b215
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0x44]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x40b228
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40b23f
dec eax
test ecx, ecx
je 0x40b23f
call fcn.00401168
add esp, 0xc
test eax, eax
jne 0x40b281
push 0xa0000004
push 0
push dword [ebp + 0x14]
push getpeername
push 0
push str.Send
push 0x10030
push 0
push dword [ebp - 4]
push 3
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x28
jmp 0x40b2ec
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0x44]
mov eax, dword [ebx]
test eax, eax
jne 0x40b29c
mov eax, 0x5522f3
push eax
push 0x10031
push 0
push dword [ebp - 0x18]
push 3
mov ebx, 0x457ca0
call fcn.0045240a
add esp, 0x28
push 0x20010031
push 0
lea eax, [ebp - 0x18]
push eax
push getpeername
push 0
push str.Send
push 0x10030
push 0
push dword [ebp - 4]
push 3
mov ebx, 0x457040
call fcn.0045240a
add esp, 0x28
push 0
push 0
push 0
push getpeername
push 0
push 0x65096c
push 0x10030
push 0
push dword [ebp - 4]
push 3
mov ebx, 0x457010
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x24], eax
push 0
push 0
push 0
push 0x10031
push 0
push dword [ebp - 0x24]
push 2
mov ebx, 0x457260
call fcn.0045240a
add esp, 0x1c
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
push ebx
push 0x10031
push 0
push ebx
push 1
mov ebx, 0x457190
call fcn.0045240a
add esp, 0x10
call fcn.004523f2
add esp, 4
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x40b379
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
push 0
push 0
push 0
push getpeername
push 0
push str.GetallResponseHeaders
push 0x10030
push 0
push dword [ebp - 4]
push 3
mov ebx, 0x456f80
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp + 0x54]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b3c4
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x54]
mov dword [ebx], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x5528bc
push getpeername
push 0
mov ebx, dword [ebp + 0x54]
mov eax, dword [ebx]
test eax, eax
jne 0x40b3f1
mov eax, 0x5506f2
push eax
push 3
mov ebx, 0x453fe0
call fcn.0045240a
add esp, 0x28
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 0x20]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40b429
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40b425
imul eax, dword [ebx]
jmp 0x40b41a
mov ecx, eax
test ecx, ecx
je 0x40b448
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40b441
push ebx
push eax
call fcn.004523f2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40b42f
call fcn.004523f2
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov eax, 0x5506f2
push eax
mov ebx, dword [ebp + 0x24]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b46c
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x24]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x20]
call fcn.0040697f
xor ecx, ecx
push eax
lea eax, [ebp - 0x10]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40b79e
mov ebx, dword [ebp - 0x20]
call fcn.00402942
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40b4ae
push 4
call fcn.004523fe
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b4c1
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push getpeername
push 0
push str.Location:
push getpeername
push 0
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x40b4fc
mov eax, 0x5506f2
push eax
push 4
mov ebx, 0x4532d0
call fcn.0045240a
add esp, 0x34
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xffffffff
jle 0x40b602
mov ebx, dword [ebp - 0x20]
call fcn.00402942
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40b539
push 4
call fcn.004523fe
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b54c
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0x80000301
push 0
push 1
mov ebx, 6
call fcn.00401214
push getpeername
push 0
push str.Location:
push getpeername
push 0
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x40b597
mov eax, 0x5506f2
push eax
push 6
mov ebx, 0x453df0
call fcn.0045240a
add esp, 0x4c
mov dword [ebp - 0x28], eax
push getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40b5c0
mov eax, 0x5506f2
push eax
push 1
mov ebx, 0x453db0
call fcn.0045240a
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40b5e6
push ebx
call fcn.004523f2
add esp, 4
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp + 0x34]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b5fc
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x34]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x20]
call fcn.00402942
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40b61f
push 4
call fcn.004523fe
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b632
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push getpeername
push 0
push str.Set_Cookie
push getpeername
push 0
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x40b66d
mov eax, 0x5506f2
push eax
push 4
mov ebx, 0x4532d0
call fcn.0045240a
add esp, 0x34
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xffffffff
jle 0x40b796
mov ebx, dword [ebp - 0x20]
call fcn.00402942
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40b6aa
push 4
call fcn.004523fe
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b6bd
push 1
call fcn.004523fe
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], 0
push 0
push dword [ebp - 0x28]
mov eax, 0x650d04
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
mov eax, 0x650d06
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.0040b988
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40b704
push ebx
call fcn.004523f2
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40b714
push ebx
call fcn.004523f2
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40b727
mov eax, 0x5506f2
push eax
push 1
mov ebx, 0x453db0
call fcn.0045240a
add esp, 0x10
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40b74d
push ebx
call fcn.004523f2
add esp, 4
push 0x650b09
push dword [ebp - 0x38]
mov ebx, dword [ebp + 0x24]
push dword [ebx]
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40b77a
push ebx
call fcn.004523f2
add esp, 4
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp + 0x24]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b790
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x24]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x40b483
add esp, 0xc
push dword [ebp + 0x24]
push dword [ebp + 0x1c]
call fcn.0040bbd9
mov ebx, eax
test ebx, ebx
je 0x40b7bb
push ebx
call fcn.004523f2
add esp, 4
push 0x5506f2
mov ebx, dword [ebp + 0x34]
push dword [ebx]
call fcn.004010cb
add esp, 8
cmp eax, 0
jne 0x40b80d
mov ebx, dword [ebp + 0x54]
mov eax, dword [ebx]
test eax, eax
je 0x40b7f4
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.004523f8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp + 0x34]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b807
push ebx
call fcn.004523f2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x34]
mov dword [ebx], eax
mov dword [ebp - 0x24], esp
mov eax, 0x16
call fcn.00452404
cmp dword [ebp - 0x24], esp
je 0x40b82c
push 6
call fcn.004523fe
add esp, 4
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x40b846
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004523f8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40b84b
push eax
mov ebx, dword [ebp - 4]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x458550
call fcn.0045240a
add esp, 0x10
call fcn.004523f2
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40b87f
push ebx
call fcn.004523f2
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40b89d
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40b899
imul eax, dword [ebx]
jmp 0x40b88e
mov ecx, eax
test ecx, ecx
je 0x40b8bc
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40b8b5
push ebx
push eax
call fcn.004523f2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40b8a3
call fcn.004523f2
add esp, 4
mov ebx, dword [ebp - 0x14]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40b8e2
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40b8de
imul eax, dword [ebx]
jmp 0x40b8d3
mov ecx, eax
test ecx, ecx
je 0x40b901
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40b8fa
push ebx
push eax
call fcn.004523f2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40b8e8
call fcn.004523f2
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
push 0x10031
push 0
push ebx
push 1
mov ebx, 0x457190
call fcn.0045240a
add esp, 0x10
call fcn.004523f2
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x40b93c
push ebx
call fcn.004523f2
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40b95a
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40b956
imul eax, dword [ebx]
jmp 0x40b94b
mov ecx, eax
test ecx, ecx
je 0x40b979
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40b972
push ebx
push eax
call fcn.004523f2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40b960
call fcn.004523f2
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x74