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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
push 8
call fcn.0040fb50
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x47d402
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
cmp dword [ebp + 0xc], 1
mov eax, 0
sete al
test eax, eax
je 0x406ca0
mov eax, str.POST
jmp 0x406ca5
mov eax, 0x47d5ef
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x406cbc
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov dword [ebp - 4], eax
push getpeername
push 0
push 1
push 0
push 0
push 0
push getpeername
push 0
push str.User_Agent:
push getpeername
push 0
mov ebx, dword [ebp + 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x406cf3
mov eax, 0x47d53f
push eax
push 4
mov ebx, 0x410360
call fcn.0040fb68
add esp, 0x34
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xffffffff
je 0x406e00
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
mov eax, 0x47d540
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x34]
push eax
mov eax, str.User_Agent:
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x38]
push eax
push dword [ebp + 0x2c]
call fcn.00407c2d
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x406d5e
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x406d6e
push ebx
call fcn.0040fb56
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x3c]
test eax, eax
jne 0x406d81
mov eax, 0x47d53f
push eax
push 1
mov ebx, 0x4109a0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x406da7
push ebx
call fcn.0040fb56
add esp, 4
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406dbb
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov dword [ebp - 8], eax
push 0x47d53f
push dword [ebp - 8]
call fcn.004022fb
add esp, 8
cmp eax, 0
jne 0x406dfb
push dword [ebp + 0x2c]
call fcn.00407eee
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406df7
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x406e1a
mov eax, 0x47d8c7
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406e16
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov dword [ebp - 8], eax
cmp dword [ebp + 0x50], 0
jne 0x406ec6
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x4101d0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x2c], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x4101d0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
push 0
push dword [ebp - 0x30]
push dword [ebp - 0x2c]
push 1
push dword [ebp - 8]
mov eax, 0x14
call fcn.0040fb62
cmp dword [ebp - 0x34], esp
je 0x406e98
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x406eab
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x406ebb
push ebx
call fcn.0040fb56
add esp, 4
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xc], eax
jmp 0x406f66
mov ebx, dword [ebp + 0x4c]
push dword [ebx]
push str.http
mov ecx, 2
call fcn.00401141
add esp, 8
mov dword [ebp - 0x2c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x406ef3
mov eax, 0x47d53f
push eax
push 1
mov ebx, 0x411210
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x406f19
push ebx
call fcn.0040fb56
add esp, 4
mov dword [ebp - 0x34], esp
push 0
push 0x47d53f
push dword [ebp - 0x30]
push 3
push dword [ebp - 8]
mov eax, 0x14
call fcn.0040fb62
cmp dword [ebp - 0x34], esp
je 0x406f4d
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x406f60
push ebx
call fcn.0040fb56
add esp, 4
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x406f9c
mov dword [ebp - 0x2c], esp
push dword [ebp - 0xc]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x406f92
push 6
call fcn.0040fb5c
add esp, 4
mov eax, 0x47d402
jmp 0x407ba0
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
push dword [ebp + 8]
call fcn.00408034
mov dword [ebp - 0x34], eax
push dword [ebp + 8]
call fcn.004085dd
mov dword [ebp - 0x38], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x4101d0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x3c], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x4101d0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x44], esp
push 0
push 0
push 3
push dword [ebp - 0x40]
push dword [ebp - 0x3c]
push dword [ebp - 0x38]
push dword [ebp - 0x34]
push dword [ebp - 0xc]
mov eax, 0x16
call fcn.0040fb62
cmp dword [ebp - 0x44], esp
je 0x407049
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x48], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40705c
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40706c
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40707c
push ebx
call fcn.0040fb56
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4070da
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x10]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x4070ae
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x2c], esp
push dword [ebp - 0xc]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x4070d0
push 6
call fcn.0040fb5c
add esp, 4
mov eax, 0x47d402
jmp 0x407ba0
push 0x80000301
push 0
push 0x10
push 0x80000301
push 0
push accept
push 2
mov ebx, 0x40fea0
call fcn.0040fb68
add esp, 0x1c
mov dword [ebp - 0x14], eax
push 0x80000301
push 0
push 0x80000
push 0x80000301
push 0
push dword [ebp - 0x14]
push 2
mov ebx, 0x40fea0
call fcn.0040fb68
add esp, 0x1c
mov dword [ebp - 0x14], eax
cmp dword [ebp + 0x3c], 0
je 0x407167
push 0x80000301
push 0
push 0x200000
push 0x80000301
push 0
push dword [ebp - 0x14]
push 2
mov ebx, 0x40fea0
call fcn.0040fb68
add esp, 0x1c
mov dword [ebp - 0x14], eax
push 0x80000301
push 0
push 5
push getpeername
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x407188
mov eax, 0x47d53f
push eax
push 2
mov ebx, 0x4100e0
call fcn.0040fb68
add esp, 0x1c
mov dword [ebp - 0x2c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x4071b1
mov eax, 0x47d53f
push eax
push 1
mov ebx, 0x410520
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x4071d7
push ebx
call fcn.0040fb56
add esp, 4
push str.https
push dword [ebp - 0x30]
call fcn.004022fb
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x407205
push ebx
call fcn.0040fb56
add esp, 4
cmp dword [ebp - 0x34], 0
je 0x40723f
push 0x80000301
push 0
push 0x800000
push 0x80000301
push 0
push dword [ebp - 0x14]
push 2
mov ebx, 0x40fea0
call fcn.0040fb68
add esp, 0x1c
mov dword [ebp - 0x14], eax
jmp 0x40726a
push 0x80000301
push 0
push 0x4000
push 0x80000301
push 0
push dword [ebp - 0x14]
push 2
mov ebx, 0x40fea0
call fcn.0040fb68
add esp, 0x1c
mov dword [ebp - 0x14], eax
push dword [ebp + 8]
call fcn.00408811
mov dword [ebp - 0x2c], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x4101d0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x30], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x4101d0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x34]
push dword [ebp - 0x30]
push str.HTTP_1.1
push dword [ebp - 0x2c]
push dword [ebp - 4]
push dword [ebp - 0x10]
mov eax, 0x17
call fcn.0040fb62
cmp dword [ebp - 0x38], esp
je 0x4072f2
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x407305
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x407315
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x407325
push ebx
call fcn.0040fb56
add esp, 4
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x4073a5
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x18]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x407357
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x10]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x407379
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x2c], esp
push dword [ebp - 0xc]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x40739b
push 6
call fcn.0040fb5c
add esp, 4
mov eax, 0x47d402
jmp 0x407ba0
push 0x47d53f
mov ebx, dword [ebp + 0x2c]
push dword [ebx]
call fcn.004022fb
add esp, 8
cmp eax, 0
jne 0x4073fb
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.00401141
add esp, 0xc
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp + 0x2c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4073f5
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov ebx, dword [ebp + 0x2c]
mov dword [ebx], eax
push 0x47d53f
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
call fcn.004022fb
add esp, 8
cmp eax, 0
je 0x407451
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
push str._r_nCookie:
mov ebx, dword [ebp + 0x2c]
push dword [ebx]
mov ecx, 3
call fcn.00401141
add esp, 0xc
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp + 0x2c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40744b
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov ebx, dword [ebp + 0x2c]
mov dword [ebx], eax
cmp dword [ebp + 0xc], 0
jne 0x4074bf
push getpeername
push 0
mov ebx, dword [ebp + 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x407470
mov eax, 0x47d53f
push eax
push 1
mov ebx, 0x40fec0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], esp
push 0
push 0x47d53f
push dword [ebp - 0x2c]
mov ebx, dword [ebp + 0x2c]
push dword [ebx]
push dword [ebp - 0x18]
mov eax, 0x18
call fcn.0040fb62
cmp dword [ebp - 0x30], esp
je 0x4074ba
push 6
call fcn.0040fb5c
add esp, 4
jmp 0x4075d9
mov eax, 0x47d402
xor ecx, ecx
test eax, eax
je 0x4074cd
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 0x4074e0
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x4074f7
dec eax
test ecx, ecx
je 0x4074f7
call fcn.00403822
add esp, 0xc
test eax, eax
jne 0x407549
push getpeername
push 0
mov ebx, dword [ebp + 0x14]
mov eax, dword [ebx]
test eax, eax
jne 0x407517
mov eax, 0x47d53f
push eax
push 1
mov ebx, 0x410e10
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp + 0x44]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407543
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov ebx, dword [ebp + 0x44]
mov dword [ebx], eax
push getpeername
push 0
mov ebx, dword [ebp + 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x40755e
mov eax, 0x47d53f
push eax
push 1
mov ebx, 0x40fec0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x2c], eax
push reloc.WS2_32.dll_getpeername
push 0
mov ebx, dword [ebp + 0x44]
mov eax, dword [ebx]
test eax, eax
jne 0x407589
mov eax, 0x47d402
push eax
push 1
mov ebx, 0x40fee0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
push dword [ebp - 0x30]
mov ebx, dword [ebp + 0x44]
mov eax, dword [ebx]
test eax, eax
je 0x4075b1
add eax, 8
push eax
push dword [ebp - 0x2c]
mov ebx, dword [ebp + 0x2c]
push dword [ebx]
push dword [ebp - 0x18]
mov eax, 0x19
call fcn.0040fb62
cmp dword [ebp - 0x34], esp
je 0x4075d9
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x1c], 0
push 0x80000301
push 0
push 0x400
push 1
mov ebx, 0x411110
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x407615
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x2c], esp
lea eax, [ebp - 0x1c]
push eax
push 0x400
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x40762f
add eax, 8
push eax
push dword [ebp - 0x18]
mov eax, 0x1a
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x40764f
push 6
call fcn.0040fb5c
add esp, 4
cmp dword [ebp - 0x1c], 0
jne 0x407663
jmp 0x4076d9
push 0x80000301
push 0
push dword [ebp - 0x1c]
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x407680
mov eax, 0x47d402
push eax
push 2
mov ebx, 0x4110d0
call fcn.0040fb68
add esp, 0x1c
mov dword [ebp - 0x2c], eax
push dword [ebp - 0x2c]
push dword [ebp - 0x24]
mov ecx, 2
call fcn.004035c4
add esp, 8
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x4076bc
push ebx
call fcn.0040fb56
add esp, 4
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4076d0
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
jmp 0x4075e0
push 0x80000301
push 0
push 0x1388
push 1
mov ebx, 0x410ec0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp + 0x54]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407710
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov ebx, dword [ebp + 0x54]
mov dword [ebx], eax
mov dword [ebp - 0x2c], esp
push 0
mov eax, 0x1388
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
mov ebx, dword [ebp + 0x54]
push dword [ebx]
push 0x16
push dword [ebp - 0x18]
mov eax, 0x1b
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x407753
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x18]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x407775
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x10]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x407797
push 6
call fcn.0040fb5c
add esp, 4
mov dword [ebp - 0x2c], esp
push dword [ebp - 0xc]
mov eax, 0x15
call fcn.0040fb62
cmp dword [ebp - 0x2c], esp
je 0x4077b9
push 6
call fcn.0040fb5c
add esp, 4
push 0
push 0
push 0
push getpeername
push 0
push 0x47d540
push getpeername
push 0
mov ebx, dword [ebp + 0x54]
mov eax, dword [ebx]
test eax, eax
jne 0x4077e0
mov eax, 0x47d53f
push eax
push 3
mov ebx, 0x410c80
call fcn.0040fb68
add esp, 0x28
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x407818
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x407814
imul eax, dword [ebx]
jmp 0x407809
mov ecx, eax
test ecx, ecx
je 0x407837
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x407830
push ebx
push eax
call fcn.0040fb56
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40781e
call fcn.0040fb56
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
mov eax, 0x47d53f
push eax
mov ebx, dword [ebp + 0x24]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40785b
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov ebx, dword [ebp + 0x24]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x28]
call fcn.004023b8
xor ecx, ecx
push eax
lea eax, [ebp - 0x1c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x407b12
mov ebx, dword [ebp - 0x28]
call fcn.00402398
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40789d
push 4
call fcn.0040fb5c
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4078b0
push 1
call fcn.0040fb5c
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
push getpeername
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 - 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x4078eb
mov eax, 0x47d53f
push eax
push 4
mov ebx, 0x410360
call fcn.0040fb68
add esp, 0x34
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xffffffff
je 0x40796a
mov ebx, dword [ebp - 0x28]
call fcn.00402398
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x407928
push 4
call fcn.0040fb5c
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40793b
push 1
call fcn.0040fb5c
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
push dword [ebp - 0x2c]
call fcn.00407eee
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp + 0x34]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407964
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov ebx, dword [ebp + 0x34]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x28]
call fcn.00402398
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x407987
push 4
call fcn.0040fb5c
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40799a
push 1
call fcn.0040fb5c
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
push getpeername
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 - 0x2c]
mov eax, dword [ebx]
test eax, eax
jne 0x4079d5
mov eax, 0x47d53f
push eax
push 4
mov ebx, 0x410360
call fcn.0040fb68
add esp, 0x34
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xffffffff
je 0x407b0a
mov ebx, dword [ebp - 0x28]
call fcn.00402398
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x407a12
push 4
call fcn.0040fb5c
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407a25
push 1
call fcn.0040fb5c
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
mov dword [ebp - 0x34], 0
push 0
push dword [ebp - 0x34]
mov eax, 0x47d893
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x38]
push eax
mov eax, str.Set_Cookie:
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3c]
push eax
push dword [ebp - 0x2c]
call fcn.00407c2d
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x407a78
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x407a88
push ebx
call fcn.0040fb56
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x407a9b
mov eax, 0x47d53f
push eax
push 1
mov ebx, 0x4109a0
call fcn.0040fb68
add esp, 0x10
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x407ac1
push ebx
call fcn.0040fb56
add esp, 4
push 0x47d9dd
push dword [ebp - 0x44]
mov ebx, dword [ebp + 0x24]
push dword [ebx]
mov ecx, 3
call fcn.00401141
add esp, 0xc
mov dword [ebp - 0x48], eax
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x407aee
push ebx
call fcn.0040fb56
add esp, 4
mov eax, dword [ebp - 0x48]
push eax
mov ebx, dword [ebp + 0x24]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407b04
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov ebx, dword [ebp + 0x24]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x407872
add esp, 0xc
push 0x47d53f
mov ebx, dword [ebp + 0x34]
push dword [ebx]
call fcn.004022fb
add esp, 8
cmp eax, 0
jne 0x407b67
mov ebx, dword [ebp + 0x54]
mov eax, dword [ebx]
test eax, eax
je 0x407b4e
push eax
mov ebx, eax
call fcn.004010d6
inc eax
push eax
call fcn.0040fb50
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 0x407b61
push ebx
call fcn.0040fb56
add esp, 4
pop eax
mov ebx, dword [ebp + 0x34]
mov dword [ebx], eax
push dword [ebp + 0x24]
push dword [ebp + 0x1c]
call fcn.00408a00
mov ebx, eax
test ebx, ebx
je 0x407b81
push ebx
call fcn.0040fb56
add esp, 4
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x407b9b
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0040fb50
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x407ba0
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x407bb1
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407bc1
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x407bd1
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x407be1
push ebx
call fcn.0040fb56
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x407bff
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x407bfb
imul eax, dword [ebx]
jmp 0x407bf0
mov ecx, eax
test ecx, ecx
je 0x407c1e
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x407c17
push ebx
push eax
call fcn.0040fb56
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x407c05
call fcn.0040fb56
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x54