Function at 0x459cb1
Capabilities:
Connect socket
Get socket status
Resolve function by parsing pe exports

Disassembly:
push 0x28c
mov eax, 0x4fad05
call fcn.004cb6c8
mov ebx, ecx
mov dword [ebp - 0x238], ebx
lea eax, [ebx + 0x80]
push eax
lea ecx, [ebp - 0x270]
call fcn.00435307
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x230], eax
cmp byte [ebx + 0xa8], al
je 0x459d04
cmp byte [ebp + 8], al
jne 0x459cfe
mov dword [ebp - 0x230], 0xfffffffd
jmp 0x459d47
mov byte [ebx + 0xa8], al
cmp byte [ebx + 0x70], al
je 0x459d3f
cmp byte [ebp + 0xc], al
je 0x459d3c
cmp byte [ebx + 0x78], al
je 0x459d26
mov ecx, ebx
call fcn.004598a0
mov dword [ebp - 0x230], 0xfffffffe
jmp 0x459d47
xor ecx, ecx
cmp byte [ebx + 0xa9], cl
push 0xfffffffffffffffe
pop eax
cmovne eax, ecx
mov dword [ebp - 0x230], eax
jmp 0x459d47
mov byte [ebx + 0x78], al
cmp byte [ebx + 0xa9], al
je 0x459d52
mov ebx, dword [ebp - 0x230]
jmp 0x45a57a
xor eax, eax
inc eax
cmp byte [ebx + 0x6c], 0
mov dword [ebp - 0x244], eax
jne 0x459d69
mov byte [ebx + 0x6c], al
call fcn.00445246
mov ecx, ebx
call fcn.004598a0
call fcn.0042962b
mov ecx, dword [ebx + 0x128]
mov edi, eax
mov dword [ebp - 0x23c], edi
mov dword [ebp - 0x240], edx
cmp ecx, dword [ebx + 0x12c]
jne 0x459d98
mov ecx, ebx
call fcn.00459a85
mov esi, dword [ebx + 0x14c]
xor ecx, ecx
mov eax, dword [ebx + 0x148]
cmp esi, ecx
jl 0x459e14
jg 0x459db0
cmp eax, ecx
jbe 0x459e14
mov edx, dword [ebx + 0x140]
add edx, eax
mov eax, dword [ebx + 0x144]
adc eax, esi
cmp eax, dword [ebp - 0x240]
jg 0x459e14
jl 0x459dce
cmp edx, edi
jae 0x459e14
mov dword [ebx + 0x148], ecx
mov dword [ebx + 0x14c], ecx
mov eax, dword [ebx + 0x12c]
sub eax, dword [ebx + 0x128]
cdq
push 0x1c
pop edi
idiv edi
xor edx, edx
mov ecx, eax
mov eax, dword [ebx + 0x13c]
inc eax
div ecx
cmp byte [ebx + 0x6d], 0
mov dword [ebx + 0x13c], edx
jne 0x459e09
test edx, edx
jne 0x459e10
mov ecx, ebx
call fcn.00459a85
xor ecx, ecx
jmp 0x459e17
push 0x1c
pop edi
mov edx, dword [ebx + 0x128]
mov eax, dword [ebx + 0x12c]
cmp edx, eax
je 0x45a577
xor esi, esi
inc esi
cmp byte [ebx + 0x6d], 0
mov dword [ebp - 0x248], esi
je 0x459e53
sub eax, edx
mov dword [ebx + 0x13c], ecx
cdq
idiv edi
mov byte [ebx + 0x15c], cl
mov esi, eax
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x24c], ecx
push 0xfffffffffffffffe
pop edi
test esi, esi
jle 0x45a3b5
test edi, edi
je 0x45a3bb
imul eax, dword [ebx + 0x13c], 0x1c
lea edi, [ebx + 0x40]
inc dword [ebx + 0x158]
mov ecx, edi
add eax, dword [ebx + 0x128]
push eax
call fcn.00440ae9
push edi
lea ecx, [ebp - 0x58]
call fcn.004409a0
lea ecx, [ebp - 0x3c]
call fcn.00440334
push 0x51f4e4
lea ecx, [ebp - 0x18c]
mov byte [ebp - 4], 2
call fcn.00440943
xor esi, esi
lea eax, [ebp - 0x18c]
push esi
push eax
mov ecx, edi
call fcn.00440f04
lea ecx, [ebp - 0x18c]
mov ebx, eax
call fcn.00440de9
xor eax, eax
shr ebx, 0x1f
inc eax
xor bl, al
je 0x45a0cb
push 0x51f4e8
lea ecx, [ebp - 0x170]
call fcn.00440943
lea eax, [ebp - 0x170]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x1f4]
push eax
lea ecx, [ebp - 0x58]
call fcn.00441435
add eax, 4
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x38]
call fcn.00443482
lea ecx, [ebp - 0x1f4]
call fcn.00440de9
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 2
call fcn.00440de9
cmp dword [ebp - 0x28], esi
je 0x459f6c
lea ecx, [ebp - 0x3c]
call fcn.00442313
test al, al
je 0x459f6c
call fcn.00441258
mov ecx, dword [ebp - 0x28]
inc ecx
mov dword [ebp - 0x230], eax
push ecx
lea ecx, [ebp - 0x58]
call fcn.0044281a
lea eax, [ebp - 0x54]
push eax
lea ecx, [edi + 4]
call fcn.00443482
mov ebx, dword [ebp - 0x238]
jmp 0x459f7b
mov ebx, dword [ebp - 0x238]
mov eax, dword [ebx + 0x5c]
mov dword [ebp - 0x230], eax
push esi
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebx + 0xa0], eax
cmp eax, 0xffffffff
je 0x45a536
xor eax, eax
lea edi, [ebp - 0x20]
stosd dword es:[edi], eax
lea ecx, [ebp - 0x58]
push 2
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop eax
mov word [ebp - 0x20], ax
lea eax, [ebp - 0x1a4]
push eax
call fcn.00440d0f
cmp dword [eax + 0x14], 0x10
jb 0x459fbc
mov eax, dword [eax]
push eax
call dword [sym.imp.WS2_32.dll_inet_addr]
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x1c], eax
call fcn.00401443
push dword [ebp - 0x230]
call dword [sym.imp.WS2_32.dll_htons]
cmp dword [0x5417b4], 4
mov word [ebp - 0x1e], ax
jl 0x45a0b6
push str.e:works10820_blowsnow_source_smartice_siioclient.cpp
lea ecx, [ebp - 0x11c]
call fcn.00440943
push 0xa
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x138]
push dword [ebx + 0x5c]
call fcn.0044056a
push 0x51f4e8
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 6
call fcn.00440943
push str.connect
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 7
call fcn.00440943
lea ecx, [ebx + 0x40]
mov byte [ebp - 4], 8
push ecx
mov ecx, eax
call fcn.00440a37
mov edi, eax
lea eax, [ebp - 0x150]
push eax
lea ecx, [edi + 4]
call fcn.0042cfd5
lea eax, [ebp - 0x134]
push eax
lea ecx, [edi + 4]
call fcn.0042cfd5
push 4
push 0x1c4
lea eax, [ebp - 0x11c]
mov ecx, 0x5417b4
push eax
push edi
call fcn.004596af
lea ecx, [ebp - 0x1d8]
call fcn.00440de9
lea ecx, [ebp - 0x154]
call fcn.00440de9
lea ecx, [ebp - 0x138]
call fcn.00440de9
push 2
pop eax
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], al
call fcn.00440de9
xor esi, esi
mov ecx, dword [ebx + 0xa0]
call fcn.00454e4f
push 0x10
lea eax, [ebp - 0x20]
jmp 0x45a235
mov ebx, dword [ebp - 0x238]
push esi
push eax
push 0x17
mov ecx, dword [ebx + 0x5c]
mov dword [ebp - 0x230], ecx
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebx + 0xa0], eax
cmp eax, 0xffffffff
je 0x45a536
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x74]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x1bc]
push eax
lea ecx, [ebp - 0x58]
call fcn.00440d0f
mov byte [ebp - 4], 9
cmp dword [eax + 0x14], 0x10
jb 0x45a118
mov eax, dword [eax]
lea ecx, [ebp - 0x74]
mov edx, eax
push ecx
push 0x17
pop edi
mov ecx, edi
call fcn.00455925
pop ecx
push 2
pop eax
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], al
call fcn.00401443
push dword [ebp - 0x230]
mov word [ebp - 0x74], di
call dword [sym.imp.WS2_32.dll_htons]
cmp dword [0x5417b4], 4
mov word [ebp - 0x72], ax
jl 0x45a223
push str.e:works10820_blowsnow_source_smartice_siioclient.cpp
lea ecx, [ebp - 0xc8]
call fcn.00440943
push 0xa
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xe4]
push dword [ebx + 0x5c]
call fcn.0044056a
push 0x51f4e8
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0xb
call fcn.00440943
push str.connect
lea ecx, [ebp - 0x210]
mov byte [ebp - 4], 0xc
call fcn.00440943
lea ecx, [ebx + 0x40]
mov byte [ebp - 4], 0xd
push ecx
mov ecx, eax
call fcn.00440a37
mov edi, eax
lea eax, [ebp - 0xfc]
push eax
lea ecx, [edi + 4]
call fcn.0042cfd5
lea eax, [ebp - 0xe0]
push eax
lea ecx, [edi + 4]
call fcn.0042cfd5
push 4
push 0x1e0
lea eax, [ebp - 0xc8]
mov ecx, 0x5417b4
push eax
push edi
call fcn.004596af
lea ecx, [ebp - 0x210]
call fcn.00440de9
lea ecx, [ebp - 0x100]
call fcn.00440de9
lea ecx, [ebp - 0xe4]
call fcn.00440de9
push 2
pop eax
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], al
call fcn.00440de9
xor esi, esi
mov ecx, dword [ebx + 0xa0]
call fcn.00454e4f
push 0x1c
pop eax
push eax
lea eax, [ebp - 0x74]
push eax
push dword [ebx + 0xa0]
call dword [sym.imp.WS2_32.dll_connect]
mov edi, eax
test edi, edi
je 0x45a34e
mov dword [ebp - 0x234], esi
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x254], 4
cmp eax, 0x2733
jne 0x45a34b
lea esi, [ebx + 0xb0]
mov eax, dword [esi]
mov ecx, esi
mov dword [esi + 4], eax
mov eax, dword [ebx + 0xa0]
mov dword [ebp - 0x258], eax
lea eax, [ebp - 0x258]
push eax
call fcn.0042e4a3
mov ecx, esi
call fcn.00455b85
mov eax, dword [ebx + 0x60]
lea ecx, [ebp - 0x260]
push ecx
mov dword [ebp - 0x260], eax
xor eax, eax
push eax
push dword [ebx + 0xbc]
mov dword [ebp - 0x25c], eax
push eax
push dword [ebx + 0xc0]
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
jle 0x45a34b
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x234]
push eax
push 0x1007
push 0xffff
push dword [ebx + 0xa0]
call dword [sym.imp.WS2_32.dll_getsockopt]
cmp dword [ebp - 0x234], 0
jne 0x45a34b
push ebx
lea ecx, [ebp - 0x268]
xor edi, edi
call fcn.00435307
mov byte [ebp - 4], 0xe
lea esi, [ebx + 0x3c]
mov ecx, dword [ebx + 0xa0]
lea edx, [ebx + 0x20]
push esi
call fcn.00436204
pop ecx
push 2
pop eax
lea ecx, [ebp - 0x268]
mov byte [ebp - 4], al
call fcn.00435329
lea edx, [ebx + 0x44]
lea ecx, [ebx + 0x24]
call fcn.004437b9
test al, al
je 0x45a34e
mov eax, dword [ebp - 0x230]
cmp dword [esi], eax
jne 0x45a34e
push 0xfffffffffffffffe
pop edi
cmp byte [ebx + 0x6d], 0
je 0x45a384
test edi, edi
je 0x45a384
mov eax, dword [ebx + 0x12c]
sub eax, dword [ebx + 0x128]
cdq
push 0x1c
pop ecx
idiv ecx
xor edx, edx
mov ecx, eax
mov eax, dword [ebx + 0x13c]
inc eax
div ecx
mov ecx, ebx
mov dword [ebx + 0x13c], edx
call fcn.004598a0
lea ecx, [ebp - 0x3c]
call fcn.00440de9
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call fcn.00440de9
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
cmp eax, dword [ebp - 0x248]
jl 0x459e64
test edi, edi
je 0x45a3bb
cmp byte [ebx + 0x6d], 0
jne 0x45a3c2
mov byte [ebx + 0x15c], 1
test edi, edi
jne 0x45a54a
xor ecx, ecx
mov byte [ebx + 0x6d], cl
mov dword [ebx + 0x148], ecx
mov dword [ebx + 0x14c], ecx
cmp byte [ebx + 0x6e], cl
je 0x45a3ed
mov ecx, dword [ebx + 0xa0]
call fcn.00454e25
xor ecx, ecx
mov byte [ebx + 0xa9], 1
cmp dword [ebx + 0xa4], ecx
jne 0x45a42e
push 0x94
call fcn.004caa83
mov dword [ebp - 0x23c], eax
mov ecx, eax
mov byte [ebp - 4], 0xf
call fcn.0045c957
xor ecx, ecx
mov byte [ebp - 4], cl
mov dword [ebx + 0xa4], eax
mov dword [eax + 0x80], ebx
mov byte [ebp - 0x244], cl
cmp dword [0x5417b4], 4
jl 0x45a4c7
push str.e:works10820_blowsnow_source_smartice_siioclient.cpp
lea ecx, [ebp - 0x90]
call fcn.00440943
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0xac]
push dword [ebx + 0xa0]
call fcn.004405d3
push str.add_fd:
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0x11
call fcn.00440943
mov esi, eax
lea eax, [ebp - 0xa8]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [esi + 4]
call fcn.0042cfd5
push 4
push 0x247
lea eax, [ebp - 0x90]
mov ecx, 0x5417b4
push eax
push esi
call fcn.004596af
lea ecx, [ebp - 0x22c]
call fcn.00440de9
lea ecx, [ebp - 0xac]
call fcn.00440de9
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0
call fcn.00440de9
mov edi, dword [ebx + 0xa4]
lea ecx, [ebp - 0x278]
mov esi, dword [ebx + 0xa0]
lea eax, [edi + 0x60]
push eax
call fcn.00435307
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [edi + 0x38]
mov dword [ebp - 0x250], esi
call fcn.0042e4a3
lea ecx, [ebp - 0x278]
mov byte [ebp - 4], 0
call fcn.00435329
cmp byte [ebp - 0x244], 0
jne 0x45a532
mov ecx, dword [ebx + 0xa4]
lea eax, [ebp - 0x298]
push 0
push eax
call fcn.004329e7
lea ecx, [ebp - 0x298]
call fcn.00432137
xor ebx, ebx
jmp 0x45a57a
lea ecx, [ebp - 0x3c]
call fcn.00440de9
lea ecx, [ebp - 0x58]
call fcn.00440de9
push 0xfffffffffffffffa
jmp 0x45a579
mov eax, dword [ebx + 0x148]
or eax, dword [ebx + 0x14c]
jne 0x45a570
mov eax, dword [ebp - 0x23c]
mov dword [ebx + 0x148], eax
mov eax, dword [ebp - 0x240]
mov dword [ebx + 0x14c], eax
mov ecx, ebx
call fcn.004598a0
push 0xfffffffffffffffe
pop ebx
lea ecx, [ebp - 0x270]
call fcn.00435329
mov eax, ebx
call fcn.004cb672
ret 8