Function at 0x100145c6
Capabilities:
Get socket status

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
mov eax, dword [ebp + 0xc]
push ebx
lea ecx, [eax + 0xa29]
push esi
push edi
mov ebx, eax
mov dword [ebp - 0x2c], ecx
cmp eax, ecx
ja case.0x10014541.23194
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x14]
mov edi, dword [ebp - 8]
jmp 0x10014280
cmp ebx, 0x2b00
ja 0x10014432
je 0x100143d6
cmp ebx, 0x22b1
ja 0x10014334
je 0x10014326
lea eax, [ebx - 0x21e5]
cmp eax, 0x99
ja case.0x10014541.23042
movzx eax, byte [eax + 0x10014804]
jmp dword [eax*4 + 0x100147f0]
mov ecx, str.LRleaLeesD
mov dword [ebp - 0x14], ecx
jmp case.0x10014541.23042
movzx edx, byte [ecx]
mov byte [0x1007d2f8], dl
mov al, byte [ecx + 1]
mov byte [0x1007d2f0], al
movzx edx, byte [ecx + 2]
mov byte [0x1007d2f2], dl
jmp case.0x10014541.23042
mov al, byte [ecx + 6]
mov byte [0x1007d2f3], al
mov dl, byte [ecx + 7]
mov byte [0x1007d2f1], dl
jmp case.0x10014541.23042
movzx eax, byte [ecx + 3]
mov byte [0x1007d2f6], al
mov dl, byte [ecx + 4]
mov byte [0x1007d2f4], dl
movzx eax, byte [ecx + 5]
mov byte [0x1007d2f9], al
jmp case.0x10014541.23042
mov dl, byte [ecx + 8]
mov byte [0x1007d2f5], dl
jmp case.0x10014541.23042
cmp ebx, 0x2a9a
ja 0x10014396
je 0x10014370
mov eax, ebx
sub eax, 0x22e4
je 0x1001435c
sub eax, 0x33
jne case.0x10014541.23042
pop edi
pop esi
mov eax, 0x1007d2f0
pop ebx
mov esp, ebp
pop ebp
ret
mov al, byte [ecx + 9]
mov byte [0x1007d2f7], al
mov byte [0x1007d2fa], 0
jmp case.0x10014541.23042
mov edx, dword [ebp + 0x10]
mov eax, dword [edx]
mov ecx, dword [esi]
mov dword [ebp - 0x18], ecx
cdq
mov ecx, 0x3e8
idiv ecx
mov ecx, dword [ebp - 0x14]
imul edx, edx, 0x3e8
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], edx
jmp case.0x10014541.23042
cmp ebx, 0x2acd
jne case.0x10014541.23042
mov eax, dword [ebp - 0x18]
lea esi, [eax + 0x14]
lea edi, [eax + 0x320]
mov ecx, 0x41
rep movsd dword es:[edi], dword [esi]
lea esi, [eax + 0x118]
lea edi, [eax + 0x424]
mov ecx, 0x41
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 8]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x14]
jmp case.0x10014541.23042
mov ebx, dword [edx]
lcall 0x8de8, 0x558b405b
sub byte [eax], 5
add byte [eax], al
lea esi, [edx + 0x21c]
mov edi, eax
mov ecx, 0x41
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x10]
xor ecx, ecx
cmp dword [esi], ecx
lea esi, [ebp - 0x34]
setl cl
dec ecx
and ecx, esi
push ecx
push eax
lea eax, [edx + 0x424]
lea ecx, [edx + 0x320]
mov edx, dword [edx + 0x62c]
push eax
push ecx
inc edx
push edx
call dword [sym.imp.WS2_32.dll_select]
mov edi, dword [ebp - 8]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
jmp case.0x10014541.23042
cmp ebx, 0x59ce
ja 0x10014529
je 0x100144ae
cmp ebx, 0x2b99
ja 0x10014490
je 0x100147dc
mov eax, ebx
sub eax, 0x2b33
je 0x10014471
sub eax, 0x33
jne case.0x10014541.23042
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
mov dword [edx + 0x63c], eax
jmp case.0x10014541.23042
cmp dword [ebp - 0x1c], 0
jl 0x100147d2
mov eax, dword [ebp - 0x18]
mov edx, dword [eax + 0x630]
dec edx
mov dword [eax + 0x634], edx
jmp case.0x10014541.23042
cmp ebx, 0x599b
jne case.0x10014541.23042
mov eax, dword [esi + 0x18]
mov edx, dword [eax*4 + 0x10075369]
mov dword [ebp - 0x20], edx
jmp case.0x10014541.23042
mov eax, dword [esi + 0x18]
mov ecx, dword [eax*4 + 0x10077101]
mov dword [ebp - 0x28], ecx
cmp eax, 0xd
jne 0x100144fc
mov ecx, 0x6e3f
mov eax, ecx
sub eax, 0x6e3f
je 0x100144eb
sub eax, 0x3e
jne 0x100144f1
cmp edi, 0x4000
jbe 0x100147e6
pop edi
pop esi
mov eax, 0x4000
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [esi + 0xcc]
add ecx, 0x3e
cmp ecx, 0x6e7d
jbe 0x100144c5
mov edx, dword [ebp - 0x20]
push 0x537
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 0xc]
mov dword [ebp - 8], edx
push ecx
lea edx, [esi + 0xb0]
push edx
call fcn.1000f120
mov ecx, dword [ebp - 0x14]
add esp, 0x10
movzx edi, ax
jmp 0x100147b9
lea eax, [ebx - 0x5a01]
cmp eax, 0x99
ja case.0x10014541.23042
movzx eax, byte [eax + 0x100148b4]
jmp dword [eax*4 + 0x100148a0]
mov eax, dword [esi + 0x18]
cmp eax, 0xb
jg 0x10014558
cmp eax, 6
jl 0x10014558
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x10014568.6
movzx ecx, byte [eax + 0x10014974]
jmp dword [ecx*4 + 0x10014950]
mov esi, 0x92e
mov eax, esi
sub eax, 0x92e
je 0x10014599
sub eax, 0x5d
jne 0x100145bb
movzx edi, word [ebp - 4]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 8], edi
mov ebx, 0x5a34
jmp case.0x10014541.23042
loope 0x10014601
xchg edi, eax
cmp ah, byte [ebx]
push 0
push 0
push 0x2bb1
lea edx, [ebp - 4]
push edx
push 0
lea eax, [ebp - 0xc]
push eax
push 0
call fcn.10033260
add esp, 0x1c
add esi, 0x5d
cmp esi, 0x98b
jbe 0x10014574
mov esi, 0x5a77
jmp 0x100145d0
mov eax, esi
sub eax, 0x5a77
je 0x100145e4
sub eax, 0x5b
je 0x10014795
jmp 0x100145fd
push 0x2284
lea ecx, [ebp - 4]
push ecx
lea edx, [ebp - 0xc]
push edx
call fcn.10036e40
movzx edi, word [ebp - 4]
add esp, 0xc
add esi, 0x5b
cmp esi, 0x5ad2
jbe 0x100145d0
invalid
mov esi, 0x4d82
lea ecx, [ecx]
mov eax, esi
sub eax, 0x4d82
je 0x10014636
sub eax, 0x23
jne 0x10014655
mov dword [ebp - 8], edi
nop
inc edi
mov byte [ebx + 0x4d8b0875], cl
in al, dx
mov ebx, 0x5a34
jmp case.0x10014541.23042
fld xword [esi - 0x48]
and eax, 0xf0458d4a
push eax
lea ecx, [ebp - 0xc]
push ecx
push 0
push 0x3384
call fcn.10069ec0
mov edi, dword [ebp - 0x10]
add esp, 0x10
add esi, 0x23
cmp esi, 0x4da5
jbe 0x10014610
mov esi, 0xfef
mov eax, esi
sub eax, 0xfef
je 0x10014679
sub eax, 0x15
je 0x10014795
jmp 0x10014691
push 0x34b8
lea edx, [ebp - 0xc]
push edx
lea eax, [ebp - 0x10]
push eax
call fcn.10013180
mov edi, dword [ebp - 0x10]
add esp, 0xc
add esi, 0x15
cmp esi, 0x1004
jbe 0x10014665
mov esi, 0x3cd
mov eax, esi
sub eax, 0x3cd
je 0x100146b5
sub eax, 0x20
je 0x10014795
jmp 0x100146ce
push 0x41f9
lea ecx, [ebp + 0xf]
push ecx
lea edx, [ebp - 0xc]
push edx
call fcn.10036e40
movzx edi, byte [ebp + 0xf]
add esp, 0xc
add esi, 0x20
cmp esi, 0x3ed
jbe 0x100146a1
mov esi, 0x4ae4
mov edi, edi
mov eax, esi
sub eax, 0x4ae4
je 0x100146f4
sub eax, 0x62
je 0x10014795
jmp 0x1001470d
push 0x41f9
lea eax, [ebp + 0xf]
push eax
lea ecx, [ebp - 0xc]
push ecx
call fcn.10036e40
movzx edi, byte [ebp + 0xf]
add esp, 0xc
add esi, 0x62
cmp esi, 0x4b46
jbe 0x100146e0
mov eax, 0x6063
cmp eax, eax
je 0x10014740
add eax, 0x58
cmp eax, 0x6063
jbe 0x1001471f
mov esi, 0x37b2
mov eax, esi
sub eax, 0x37b2
je 0x10014770
sub eax, 0x29
je 0x10014795
jmp 0x1001478a
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 0xc]
push eax
push 0
push 0x3384
call fcn.10069ec0
mov edi, dword [ebp - 0x10]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x14]
add esp, 0x10
and edi, 0xffffff
mov dword [ebp - 8], edi
mov ebx, 0x5a34
jmp case.0x10014541.23042
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0xc]
push edx
push 0
push 0x3384
call fcn.10069ec0
mov edi, dword [ebp - 0x10]
add esp, 0x10
add esi, 0x29
cmp esi, 0x37db
jbe 0x10014730
mov dword [ebp - 8], edi
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x14]
mov ebx, 0x5a34
jmp case.0x10014541.23042
cmp edi, dword [ebp - 0x20]
jae case.0x10014541.23042
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
add edi, dword [ebp - 0x28]
mov dword [ebp - 0x24], edi
mov dword [ebp - 8], edi
add ebx, 0x33
cmp ebx, dword [ebp - 0x2c]
jbe 0x10014280
mov eax, dword [ebp - 0x24]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x1c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret