Function at 0x10029583
Capabilities:
Get socket status
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x22234
call fcn.10030170
mov eax, dword [0x10069410]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0x2222c], ecx
xor ebx, ebx
lea edi, [ebp - 0x13]
mov byte [ebp - 0x14], bl
xor ecx, ecx
stosd dword es:[edi], eax
inc ecx
push ebx
mov dword [ebp - 0x22228], ecx
mov esi, 0x8000
mov dword [ebp - 0x22224], ecx
stosd dword es:[edi], eax
mov dword [ebp - 0x22234], ecx
mov dword [ebp - 0x22220], ecx
lea ecx, [ebp - 0x8118]
push esi
stosd dword es:[edi], eax
push ecx
mov dword [ebp - 0x22230], ebx
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [0x1006a748]
mov edi, dword [sym.imp.WS2_32.dll_recv]
push eax
mov dword [ebp - 0x2221c], eax
call edi
cmp eax, 0xffffffff
jne 0x1002962e
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.recv___failed:_socket_error__d_n
call fcn.10002396
pop ecx
pop ecx
push dword [0x1006a748]
call dword [sym.imp.WS2_32.dll_closesocket]
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
inc eax
pop ebx
call fcn.1000adad
mov esp, ebp
pop ebp
ret
test eax, eax
jne 0x10029640
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.recv___failed:_error__d_n
jmp 0x10029607
cmp eax, esi
jae 0x10029c1d
mov byte [ebp + eax - 0x8118], bl
lea eax, [ebp - 0x8118]
push 0x10061064
push eax
call fcn.1002cf70
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x100296a5
mov ecx, esi
lea eax, [ebp - 0x8118]
sub ecx, eax
cmp ecx, 0x10
jae 0x1002967a
push ecx
jmp 0x1002967c
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x14]
push 0x10
push eax
call fcn.10001f89
add esp, 0x10
lea eax, [esi + 1]
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x8118]
push 0x8000
push eax
call fcn.10001f89
add esp, 0x10
cmp dword [0x1006ef44], 5
jl 0x100296c1
lea eax, [ebp - 0x8118]
push eax
push str.Handling_connection:____s___n
call fcn.1001fbc0
pop ecx
pop ecx
mov esi, str._r_n_r_n
lea eax, [ebp - 0x8118]
push esi
push eax
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x10029716
push 5
lea eax, [ebp - 0x14]
push str.POST
push eax
call fcn.10013480
add esp, 0xc
test eax, eax
jne 0x10029784
lea eax, [ebp - 0x8118]
push esi
push eax
call fcn.1002cf70
add eax, 4
push 0x10061650
push eax
call fcn.1002cf70
add esp, 0x10
test eax, eax
jne 0x10029784
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x22234]
push eax
push ebx
push ebx
lea eax, [ebp - 0x22220]
push eax
push ebx
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
jle 0x10029c0c
push ebx
push 0x8000
lea eax, [ebp - 0x10118]
push eax
push dword [0x1006a748]
call edi
mov edi, 0x8000
cmp eax, edi
jae 0x10029c1d
mov byte [ebp + eax - 0x10118], bl
lea eax, [ebp - 0x10118]
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x8118]
push edi
push eax
call fcn.100014e3
add esp, 0x10
jmp 0x10029789
mov edi, 0x8000
lea eax, [ebp - 0x8118]
push str.Authorization:_Digest
push eax
call fcn.1002cf70
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x100297c1
cmp dword [0x1006a74c], ebx
je 0x100297c1
lea eax, [ebp - 0x8118]
mov bl, 1
push str.Authorization:_Basic
push eax
call fcn.1002cf70
pop ecx
pop ecx
mov esi, eax
mov ecx, 0x10070360
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100297c9
sub ecx, edx
je 0x10029895
test esi, esi
jne 0x1002981b
mov ecx, 0x10070320
call fcn.10028116
mov ecx, 0x100701e0
call fcn.10028116
cmp dword [0x1006ef44], 5
jl 0x10029804
push str.Requesting_Auth:_no_password
call fcn.1001fbc0
pop ecx
lea ecx, [ebp - 0x18118]
call fcn.10029f9d
and dword [ebp - 0x22224], 0
jmp 0x10029b65
push 0x1fff
lea eax, [ebp - 0x1a117]
mov byte [ebp - 0x1a118], 0
push 0
push eax
call fcn.1002d750
add esp, 0xc
push 0x100616cc
push esi
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x10029965
xor ecx, ecx
test bl, bl
sete cl
add ecx, 0x15
add esi, ecx
mov ecx, 0x2000
sub eax, esi
cmp eax, ecx
jae 0x10029965
push eax
push esi
push ecx
lea eax, [ebp - 0x1a118]
push eax
call fcn.10001f89
add esp, 0x10
lea ecx, [ebp - 0x1a118]
test bl, bl
je 0x10029958
call fcn.10029fda
test eax, eax
je 0x10029965
push 0x7fff
lea eax, [ebp - 0x22117]
xor bl, bl
push 0
push eax
mov byte [ebp - 0x22118], bl
call fcn.1002d750
add esp, 0xc
lea eax, [ebp - 0x8118]
push str._r_nCookie:
push eax
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x1002999b
push 0xff
lea esi, [eax + 9]
mov byte [ebp - 0x118], bl
lea eax, [ebp - 0x117]
push 0
push eax
call fcn.1002d750
add esp, 0xc
push 0x100616cc
push esi
call fcn.1002cf70
pop ecx
pop ecx
sub eax, esi
mov ecx, 0x100
cmp eax, ecx
jae 0x1002999b
push eax
push esi
push ecx
lea eax, [ebp - 0x118]
push eax
call fcn.10001f89
lea eax, [ebp - 0x118]
push str.chtok
push eax
call fcn.1002cf70
add esp, 0x18
test eax, eax
je 0x1002999b
mov ecx, 0x100700a0
add eax, 6
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1002997c
test dl, dl
je 0x10029954
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1002997c
add eax, 2
add ecx, 2
test dl, dl
jne 0x10029938
xor eax, eax
jmp 0x10029981
lea edx, [ebp - 0x14]
call fcn.1002a188
jmp 0x1002988d
cmp dword [0x1006ef44], 5
jl 0x10029804
push str.Requesting_Auth:_BAD_password
jmp 0x100297fe
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1002999b
cmp dword [0x1006ef44], 5
jl 0x10029999
push str.CookieMaster:_Success
call fcn.1001fbc0
pop ecx
mov bl, 1
lea eax, [ebp - 0x8118]
push str._r_n_r_n
push eax
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x100299f0
lea esi, [eax + 4]
push 0x10053334
push esi
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x100299c9
mov byte [eax], 0
push 0x100616cc
push esi
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x100299dd
mov byte [eax], 0
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x22118]
push edi
push eax
call fcn.10001f89
add esp, 0x10
lea eax, [ebp - 0x8118]
push 0x10053334
push eax
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x10029a0a
mov byte [eax], 0
lea eax, [ebp - 0x8118]
push 0x100616cc
push eax
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x10029a24
mov byte [eax], 0
lea eax, [ebp - 0x8118]
push 0x10061064
push eax
call fcn.1002cf70
pop ecx
pop ecx
test eax, eax
je 0x10029a3e
mov byte [eax], 0
push 5
lea eax, [ebp - 0x14]
push str.POST
push eax
call fcn.10013480
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x8118]
push 0xfffffffffffffffd
pop ecx
push 4
push str._set
push eax
jne 0x10029a7b
xor esi, esi
test bl, bl
cmove esi, ecx
call fcn.1002ce60
add esp, 0xc
test eax, eax
je 0x10029a8a
jmp 0x10029a87
call fcn.1002ce60
add esp, 0xc
test eax, eax
jne 0x10029a8e
push 0xfffffffffffffffe
pop esi
test esi, esi
jne 0x10029b0a
cmp dword [0x1006ef44], 5
jl 0x10029aaa
lea eax, [ebp - 0x8118]
push eax
push str.DEBUG:_DATA_chopped__now_decoding...___s_
call fcn.1001fbc0
pop ecx
pop ecx
lea ecx, [ebp - 0x8118]
call fcn.10029dcd
lea ecx, [ebp - 0x22118]
call fcn.10029dcd
cmp dword [0x1006ef44], 5
jl 0x10029adc
lea eax, [ebp - 0x8118]
push eax
push str.DEBUG:_DATA_IN_is_now___s_
call fcn.1001fbc0
pop ecx
pop ecx
lea eax, [ebp - 0x22228]
push eax
push dword [ebp - 0x2222c]
lea eax, [ebp - 0x18118]
push ecx
push ecx
push eax
lea edx, [ebp - 0x22118]
lea ecx, [ebp - 0x8118]
call fcn.10021f3a
mov esi, eax
add esp, 0x14
test esi, esi
jns 0x10029b61
cmp esi, 0xffffffff
jge 0x10029b77
lea eax, [ebp - 0x18118]
cmp esi, 0xfffffffe
jne 0x10029b25
push 0xffffffffffffffff
push str.Invalid_Request
jmp 0x10029b31
cmp esi, 0xfffffffd
jne 0x10029b3d
push 0xffffffffffffffff
push str.Invalid_Change_Token:_Request_denied
push edi
push eax
call fcn.10001f89
add esp, 0x10
jmp 0x10029b4f
push esi
push str.Unknown_Error___d_
push 0xffffffffffffffff
push edi
push eax
call fcn.10006991
add esp, 0x14
lea esi, [ebp - 0x18118]
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x10029b58
jmp 0x10029b75
test esi, esi
jne 0x10029b79
lea esi, [ebp - 0x18118]
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x10029b6e
sub esi, ecx
test esi, esi
jle 0x10029be5
cmp dword [0x1006ef44], 5
jl 0x10029b8f
push str.Data_back_from_handlewebpages..
call fcn.1001fbc0
pop ecx
cmp dword [ebp - 0x22224], 0
je 0x10029bca
mov edx, dword [ebp - 0x22228]
mov ecx, dword [0x1006a748]
call fcn.10028555
cmp eax, 0xffffffff
jne 0x10029bca
cmp dword [0x1006ef44], 5
jl 0x1002960e
push str.send___failed:_SOCKET_ERROR
call fcn.1001fbc0
jmp 0x1002960d
push 0
push esi
lea eax, [ebp - 0x18118]
push eax
push dword [0x1006a748]
call dword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
je 0x10029bae
cmp dword [0x1006ef44], 5
jl 0x10029bf9
push str.Handling_connection_finished_n
call fcn.1001fbc0
pop ecx
push 1
push dword [0x1006a748]
call dword [sym.imp.WS2_32.dll_shutdown]
jmp 0x1002960e
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.recv___failed:_Incomplete_message___d__n
jmp 0x10029607
call fcn.1001868f
int3