Function at 0x412e64
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
push ebx
push esi
push edi
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
mov esi, dword [ebp + 8]
push 0x21
push eax
push dword [esi + 4]
mov dword [ebp - 0x14], eax
call dword [sym.imp.WS2_32.dll_WSAEventSelect]
cmp eax, 0xffffffff
je 0x4130b2
push 1
push 0x3e8
push 1
lea eax, [ebp - 0x14]
push eax
push 1
call dword [sym.imp.WS2_32.dll_WSAWaitForMultipleEvents]
test eax, eax
jne 0x4130b2
lea eax, [ebp - 8]
push eax
push 0x4004667f
push dword [esi + 4]
call dword [sym.imp.WS2_32.dll_ioctlsocket]
test eax, eax
jne 0x4130b2
mov eax, dword [ebp - 8]
lea ecx, [eax - 1]
cmp ecx, 0xfffd
ja 0x4130b2
push eax
call fcn.004095ce
pop ecx
push 0
push dword [ebp - 8]
mov dword [ebp - 0x10], eax
push eax
push dword [esi + 4]
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 8], eax
cmp eax, 0xffffffff
je 0x4130a9
push 0x10
call fcn.004095ce
pop ecx
mov ebx, eax
push 0x34
mov dword [ebp - 0xc], ebx
call fcn.004095ce
pop ecx
test eax, eax
je 0x412f1e
mov edi, eax
call fcn.00411a6b
jmp 0x412f20
xor eax, eax
push dword [ebp - 0x10]
mov dword [ebx + 4], eax
call fcn.00413b38
pop ecx
mov dword [ebx], eax
test eax, eax
je 0x41303b
mov eax, dword [esi]
mov edi, 0x4153b9
push edi
add eax, 0x30
push eax
call fcn.00409b85
test al, al
je 0x413004
mov eax, dword [ebx]
push str.Authorization
add eax, 0x24
lea ecx, [ebp - 0x24]
call fcn.0040f2e3
sub esp, 0x10
mov eax, esp
push 0x419074
call fcn.0040996d
lea eax, [ebp - 0x24]
call fcn.00409b62
test al, al
je 0x412ff0
push edi
lea esi, [ebp - 0x44]
call fcn.004099a2
push str.Basic
lea esi, [ebp - 0x34]
call fcn.004099a2
mov eax, esi
push eax
lea eax, [ebp - 0x54]
push eax
lea ebx, [ebp - 0x44]
lea eax, [ebp - 0x24]
call fcn.00409ea0
lea esi, [ebp - 0x24]
call fcn.00409bba
lea eax, [ebp - 0x54]
call fcn.00409a00
lea eax, [ebp - 0x34]
call fcn.00409a00
mov eax, ebx
call fcn.00409a00
mov esi, dword [ebp + 8]
mov ecx, dword [esi]
sub esp, 0x10
add ecx, 0x30
mov eax, esp
push ecx
call fcn.0040996d
lea eax, [ebp - 0x24]
call fcn.00409b62
test al, al
je 0x412ff6
mov eax, dword [esi]
call fcn.00411e4a
test al, al
je 0x41301f
mov ebx, dword [ebp - 0xc]
push esi
call fcn.00412de4
lea eax, [ebp - 0x24]
call fcn.00409a00
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0xc]
mov eax, dword [ebx + 4]
cmp dword [eax + 8], 0xc8
jne 0x413068
mov eax, dword [esi]
mov eax, dword [eax + 0x54]
test eax, eax
je 0x413068
push ebx
call eax
pop ecx
jmp 0x413068
sub esp, 0x10
mov esi, esp
push str.Too_many_authorization_requests_received._Please_try_again_in_a_hour.
call fcn.004099a2
mov eax, dword [ebp - 0xc]
mov edi, dword [eax + 4]
call fcn.00411b02
jmp 0x412ff6
mov eax, dword [ebx + 4]
push str.Bad_Request
lea esi, [ebp - 0x44]
mov dword [eax + 8], 0x190
call fcn.004099a2
mov esi, dword [ebx + 4]
add esi, 0xc
lea eax, [ebp - 0x44]
call fcn.00409bba
lea eax, [ebp - 0x44]
call fcn.00409a00
mov ebx, dword [ebx + 4]
call fcn.00411b9e
mov esi, eax
push esi
call fcn.0040962a
pop ecx
push 0
push esi
call fcn.0040962a
pop ecx
push eax
mov eax, dword [ebp + 8]
push esi
push dword [eax + 4]
call dword [sym.imp.WS2_32.dll_send]
push esi
mov dword [ebp - 8], eax
call fcn.00409607
mov edi, dword [ebp - 0xc]
pop ecx
call fcn.00413ace
push edi
call fcn.00409607
pop ecx
push dword [ebp - 0x10]
call fcn.00409607
pop ecx
pop edi
pop esi
pop ebx
leave
ret 4