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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
mov dword [ebp - 4], 0
push 8
call fcn.004af9eb
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebp - 0xc], 0
push 0x10
call fcn.004af9eb
add esp, 4
mov dword [ebp - 0x10], eax
mov edi, eax
mov esi, 0x588216
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 0xc
call fcn.004af9eb
add esp, 4
mov dword [ebp - 0x14], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
push 0x18
call fcn.004af9eb
add esp, 4
mov dword [ebp - 0x18], eax
mov edi, eax
mov esi, 0x588069
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 4
rep stosd dword es:[edi], eax
jmp 0x4633e2
cmp dword [0x690010], 0
je 0x463477
mov eax, 0x587fc5
jmp 0x464a59
push 0
push 0
push 0
push 1
mov ebx, 0x4afcc0
call fcn.004afa03
add esp, 0x10
push 0x80000301
push 0
push 0x2691
push 0x80000301
push 0
push 0x4ea
push 2
mov ebx, 0x4afd60
call fcn.004afa03
add esp, 0x1c
mov dword [ebp - 4], eax
mov dword [ebp - 0x1c], esp
push 0
mov eax, 5
call fcn.004af9f7
cmp dword [ebp - 0x1c], esp
je 0x4634e0
push 6
call fcn.004af9f1
add esp, 4
push 0
push 0
push 0
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Microsoft.XMLHTTP
push 0x10030
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x4b2530
call fcn.004afa03
add esp, 0x28
push reloc.oleaut32.dll_SysReAllocString
push 0
push 0
push 0xa0000004
push 0
push dword [ebp + 8]
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push 0x5880bb
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Open
push 0x10030
push 0
push dword [ebp - 8]
push 5
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x40
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push 0x5880c5
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Accept
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 8]
push 4
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x34
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.zh_CN
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Accept_Language
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 8]
push 4
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x34
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Mozilla_5.0__compatible__MSIE_9.0__Windows_NT_6.1__WOW64__Trident_5.0_
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.User_Agent
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 8]
push 4
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x34
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.application_x_www_form_urlencoded
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Content_Type
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 8]
push 4
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x34
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.deflate
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Accept_Encoding
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 8]
push 4
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x34
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Keep_Alive
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Connection
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 8]
push 4
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x34
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.no_cache
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Cache_Control
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.SetRequestHeader
push 0x10030
push 0
push dword [ebp - 8]
push 4
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x34
push 0xa0000004
push 0
push dword [ebp + 0xc]
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Send
push 0x10030
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x4b1c40
call fcn.004afa03
add esp, 0x28
push 0
push 0
push 0
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.ResponseBody
push 0x10030
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x4b1c10
call fcn.004afa03
add esp, 0x28
mov dword [ebp - 0x1c], eax
push 0
push 0
push 0
push 0x10031
push 0
push dword [ebp - 0x1c]
push 2
mov ebx, 0x4b1d10
call fcn.004afa03
add esp, 0x1c
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
push ebx
push 0x10031
push 0
push ebx
push 1
mov ebx, 0x4b1cd0
call fcn.004afa03
add esp, 0x10
call fcn.004af9fd
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4637d7
push ebx
call fcn.004af9fd
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1c], esp
mov eax, 6
call fcn.004af9f7
cmp dword [ebp - 0x1c], esp
je 0x4637fa
push 6
call fcn.004af9f1
add esp, 4
push 0x80000301
push 0
push 5
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x463819
mov eax, 0x587fc5
push eax
push 2
mov ebx, 0x4b0c20
call fcn.004afa03
add esp, 0x1c
mov dword [ebp - 0x1c], eax
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push 0x5881cf
push 1
mov ebx, 0x4b0b20
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor ecx, ecx
test eax, eax
je 0x46385c
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x1c]
xor ebx, ebx
test eax, eax
je 0x46386d
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x463884
dec eax
test ecx, ecx
je 0x463884
call fcn.0045cc9a
add esp, 0xc
test eax, eax
mov eax, 0
sete al
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4638a4
push ebx
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4638b4
push ebx
call fcn.004af9fd
add esp, 4
cmp dword [ebp - 0x24], 0
je 0x4638dd
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x4638d8
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004af9eb
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x464a59
mov eax, 0x587fc5
xor ecx, ecx
test eax, eax
je 0x4638eb
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0xc]
xor ebx, ebx
test eax, eax
je 0x4638fc
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x463913
dec eax
test ecx, ecx
je 0x463913
call fcn.0045cc9a
add esp, 0xc
test eax, eax
jne 0x463947
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push 0x5881d5
push 1
mov ebx, 0x4b0b20
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
jmp 0x464a59
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x46395a
mov eax, 0x587fc5
push eax
push 1
mov ebx, 0x4b12d0
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
push reloc.oleaut32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str._htm
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x4639a1
mov eax, 0x587fc4
push eax
push 4
mov ebx, 0x4b0080
call fcn.004afa03
add esp, 0x34
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4639c7
push ebx
call fcn.004af9fd
add esp, 4
cmp dword [ebp - 0x20], 0
jle 0x463a20
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Error
push 1
mov ebx, 0x4b0b20
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
push dword [ebp - 0xc]
push dword [ebp - 0x1c]
mov ecx, 2
call fcn.0045f01a
add esp, 8
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x463a18
push ebx
call fcn.004af9fd
add esp, 4
mov eax, dword [ebp - 0x20]
jmp 0x464a59
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x463a33
mov eax, 0x587fc5
push eax
push 1
mov ebx, 0x4b12d0
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
push reloc.oleaut32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.error
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x463a7a
mov eax, 0x587fc4
push eax
push 4
mov ebx, 0x4b0080
call fcn.004afa03
add esp, 0x34
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x463aa0
push ebx
call fcn.004af9fd
add esp, 4
cmp dword [ebp - 0x20], 0
jle 0x463af9
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Error
push 1
mov ebx, 0x4b0b20
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
push dword [ebp - 0xc]
push dword [ebp - 0x1c]
mov ecx, 2
call fcn.0045f01a
add esp, 8
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x463af1
push ebx
call fcn.004af9fd
add esp, 4
mov eax, dword [ebp - 0x20]
jmp 0x464a59
push 0
push 0
push 0
push reloc.ws2_32.dll_getpeername
push 0
push 0x588200
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x463b1e
mov eax, 0x587fc5
push eax
push 3
mov ebx, 0x4b0e10
call fcn.004afa03
add esp, 0x28
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x463b8d
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
push str.Error
push 1
mov ebx, 0x4b0b20
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
push dword [ebp - 0xc]
push dword [ebp - 0x1c]
mov ecx, 2
call fcn.0045f01a
add esp, 8
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x463b85
push ebx
call fcn.004af9fd
add esp, 4
mov eax, dword [ebp - 0x20]
jmp 0x464a59
push 0
push 0
push 0
push reloc.ws2_32.dll_getpeername
push 0
push 0x588200
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x463bb2
mov eax, 0x587fc5
push eax
push 3
mov ebx, 0x4b1050
call fcn.004afa03
add esp, 0x28
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
push eax
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x463bea
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x463be6
imul eax, dword [ebx]
jmp 0x463bdb
mov ecx, eax
test ecx, ecx
je 0x463c09
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x463c02
push ebx
push eax
call fcn.004af9fd
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x463bf0
call fcn.004af9fd
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0x10]
call fcn.0045cbdd
mov eax, 0
cmp eax, ecx
jl 0x463c33
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
test eax, eax
je 0x463c57
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004af9eb
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x463c68
push ebx
call fcn.004af9fd
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
cmp dword [ebp + 0x10], 1
jne 0x463db0
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [0x69001c]
test eax, eax
jne 0x463c8b
mov eax, 0x587fc5
push eax
push 1
mov ebx, 0x4b0b20
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
mov ebx, 6
call fcn.0045d167
push reloc.ws2_32.dll_getpeername
push 0
push 0x587fc5
push reloc.ws2_32.dll_getpeername
push 0
push 0x58820d
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x463cd6
mov eax, 0x587fc5
push eax
push 5
mov ebx, 0x4b0e50
call fcn.004afa03
add esp, 0x40
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x463cfc
push ebx
call fcn.004af9fd
add esp, 4
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x463d0f
mov eax, 0x587fc5
push eax
push 1
mov ebx, 0x4b12d0
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x463d35
push ebx
call fcn.004af9fd
add esp, 4
push 0x80000301
push 0
push 2
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x463d54
mov eax, 0x587fc4
push eax
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x463d68
mov eax, 0x587fc5
push eax
push 3
mov eax, 1
mov ebx, 0x4f5010
call fcn.004afa09
add esp, 0x28
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x463d93
push ebx
call fcn.004af9fd
add esp, 4
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x463da7
push ebx
call fcn.004af9fd
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
jmp 0x463e18
push 0x80000301
push 0
push 2
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
mov eax, dword [0x690018]
test eax, eax
jne 0x463dd1
mov eax, 0x587fc4
push eax
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x463de5
mov eax, 0x587fc5
push eax
push 3
mov eax, 1
mov ebx, 0x4f5010
call fcn.004afa09
add esp, 0x28
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x463e14
push ebx
call fcn.004af9fd
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 4]
xor ecx, ecx
inc ecx
push ecx
push eax
cmp ecx, eax
jg 0x464674
cmp dword [ebp - 4], 0
jle 0x464220
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x463e53
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004af9eb
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x464a59
mov dword [ebp - 4], 0
mov dword [ebp - 0x1c], esp
mov eax, 0
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0
push 1
push 0x14
mov eax, 0
call fcn.004af9f7
cmp dword [ebp - 0x1c], esp
je 0x464261
push 6
call fcn.004af9f1
add esp, 4
mov dword [ebp - 0x1c], esp
push 4
mov eax, 1
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0x1d
push 0xffffffff
mov eax, 1
call fcn.004af9f7
cmp dword [ebp - 0x1c], esp
je 0x46429b
push 6
call fcn.004af9f1
add esp, 4
push 0
call fcn.004afa0f
add esp, 4
mov dword [ebp - 0x1c], esp
mov eax, 0
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0
push 1
push 0x13
mov eax, 0
call fcn.004af9f7
cmp dword [ebp - 0x1c], esp
je 0x4642df
push 6
call fcn.004af9f1
add esp, 4
push 0xa0000101
push 0
push 0x588015
push 1
mov ebx, 0x4b12d0
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
push 0x80000301
push 0
push 2
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x46431f
mov eax, 0x587fc4
push eax
push reloc.ws2_32.dll_getpeername
push 0
push 0x58803b
push 3
mov eax, 1
mov ebx, 0x4f5010
call fcn.004afa09
add esp, 0x28
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x464356
push ebx
call fcn.004af9fd
add esp, 4
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x464369
mov eax, 0x587fc5
push eax
push 1
mov ebx, 0x4b12d0
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x46438f
push ebx
call fcn.004af9fd
add esp, 4
mov dword [ebp - 0x28], esp
push dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
push eax
push 8
call fcn.004af9eb
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, 2
call fcn.004af9f7
cmp dword [ebp - 0x28], esp
je 0x4643ec
push 6
call fcn.004af9f1
add esp, 4
mov ebx, dword [ebp - 0x2c]
push ebx
mov edi, dword [ebp - 0x30]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.0045d16f
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x464426
push ebx
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 0
cmp eax, ecx
jl 0x464444
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], esp
push 0
mov eax, dword [ebp - 0x14]
push eax
push 8
call fcn.004af9eb
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x14]
push eax
push 8
call fcn.004af9eb
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, 3
call fcn.004af9f7
cmp dword [ebp - 0x20], esp
je 0x4644e6
push 6
call fcn.004af9f1
add esp, 4
push eax
mov ebx, dword [ebp - 0x24]
push ebx
mov edi, dword [ebp - 0x28]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.0045d16f
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x2c]
push ebx
mov edi, dword [ebp - 0x30]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.0045d16f
call fcn.004af9fd
add esp, 4
pop eax
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 1
cmp eax, ecx
jl 0x46455f
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
mov ax, word [ebx]
cwde
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 2
cmp eax, ecx
jl 0x464597
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 0
cmp eax, ecx
jl 0x4645bd
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 3
cmp eax, ecx
jl 0x4645ed
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 0
cmp eax, ecx
jl 0x464613
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov dword [ebp - 0x1c], esp
mov eax, 0
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 6
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
push ebx
push 1
push 4
push 0xc000021a
mov eax, 4
call fcn.004af9f7
cmp dword [ebp - 0x1c], esp
je 0x46466d
push 6
call fcn.004af9f1
add esp, 4
pop eax
pop ecx
jmp 0x463e1d
add esp, 8
mov dword [ebp - 0x1c], esp
mov eax, 0
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 0
push 1
push 0x13
mov eax, 0
call fcn.004af9f7
cmp dword [ebp - 0x1c], esp
je 0x4646b1
push 6
call fcn.004af9f1
add esp, 4
push 0xa0000101
push 0
push 0x588015
push 1
mov ebx, 0x4b12d0
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x1c], eax
push 0x80000301
push 0
push 2
push reloc.oleaut32.dll_SysReAllocStringLen
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x4646f1
mov eax, 0x587fc4
push eax
push reloc.ws2_32.dll_getpeername
push 0
push 0x58803b
push 3
mov eax, 1
mov ebx, 0x4f5010
call fcn.004afa09
add esp, 0x28
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x464728
push ebx
call fcn.004af9fd
add esp, 4
push reloc.ws2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x46473b
mov eax, 0x587fc5
push eax
push 1
mov ebx, 0x4b12d0
call fcn.004afa03
add esp, 0x10
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x464761
push ebx
call fcn.004af9fd
add esp, 4
mov dword [ebp - 0x28], esp
push dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
push eax
push 8
call fcn.004af9eb
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, 2
call fcn.004af9f7
cmp dword [ebp - 0x28], esp
je 0x4647be
push 6
call fcn.004af9f1
add esp, 4
mov ebx, dword [ebp - 0x2c]
push ebx
mov edi, dword [ebp - 0x30]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.0045d16f
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4647f8
push ebx
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 0
cmp eax, ecx
jl 0x464816
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], esp
push 0
mov eax, dword [ebp - 0x14]
push eax
push 8
call fcn.004af9eb
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x14]
push eax
push 8
call fcn.004af9eb
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, 3
call fcn.004af9f7
cmp dword [ebp - 0x20], esp
je 0x4648b8
push 6
call fcn.004af9f1
add esp, 4
push eax
mov ebx, dword [ebp - 0x24]
push ebx
mov edi, dword [ebp - 0x28]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.0045d16f
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x2c]
push ebx
mov edi, dword [ebp - 0x30]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.0045d16f
call fcn.004af9fd
add esp, 4
pop eax
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 1
cmp eax, ecx
jl 0x464931
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
mov ax, word [ebx]
cwde
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 2
cmp eax, ecx
jl 0x464969
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 0
cmp eax, ecx
jl 0x46498f
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 3
cmp eax, ecx
jl 0x4649bf
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
mov eax, 0
cmp eax, ecx
jl 0x4649e5
push 1
call fcn.004af9f1
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x1c]
mov dword [ebx], eax
mov dword [ebp - 0x1c], esp
mov eax, 0
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push 6
mov ebx, dword [ebp - 0x18]
call fcn.0045cbdd
push ebx
push 1
push 4
push 0xc000021a
mov eax, 4
call fcn.004af9f7
cmp dword [ebp - 0x1c], esp
je 0x464a3f
push 6
call fcn.004af9f1
add esp, 4
mov dword [ebp - 4], 0
mov eax, 0x587fc5
jmp 0x464a59
push eax
mov ebx, dword [ebp - 8]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4b2520
call fcn.004afa03
add esp, 0x10
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x464a8d
push ebx
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x464aab
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x464aa7
imul eax, dword [ebx]
jmp 0x464a9c
mov ecx, eax
test ecx, ecx
je 0x464aca
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x464ac3
push ebx
push eax
call fcn.004af9fd
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x464ab1
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x14]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x464ae9
push ebx
call fcn.004af9fd
add esp, 4
pop ebx
call fcn.004af9fd
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
call fcn.004af9fd
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x10