Function at 0x10076287
Capabilities:
Get socket status

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100d489c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x390
mov dword [ebp - 0x394], ecx
fld qword [ebp + 8]
fcomp qword [0x100da5e0]
fnstsw ax
test ah, 1
je 0x100762d1
mov dword [ebp - 0x39c], 0
mov dword [ebp - 0x398], 0xbff00000
jmp 0x100762e5
mov ecx, dword [ebp - 0x394]
call fcn.10076afe
fadd qword [ebp + 8]
fstp qword [ebp - 0x39c]
mov eax, dword [ebp - 0x394]
mov ecx, dword [ebp - 0x39c]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp - 0x398]
mov dword [eax + 0x14], edx
mov eax, dword [ebp - 0x394]
mov byte [eax + 0x18], 0
mov ecx, dword [ebp - 0x394]
mov byte [ecx + 0x19], 1
mov ecx, dword [ebp - 0x394]
call fcn.1006d0a0
test eax, eax
jbe 0x10076a02
mov ecx, dword [ebp - 0x394]
call fcn.1006d0a0
push eax
push 0x10105374
lea edx, [ebp - 0x18]
push edx
call fcn.100913f6
add esp, 0xc
mov dword [ebp - 0x32c], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x124], 0xffffffff
lea ecx, [ebp - 0x330]
call fcn.10076e70
lea eax, [ebp - 0x374]
push eax
mov ecx, dword [ebp - 0x394]
call fcn.10076cd0
mov ecx, dword [eax]
mov dword [ebp - 0x330], ecx
jmp 0x1007639b
lea ecx, [ebp - 0x330]
call fcn.10077230
lea edx, [ebp - 0x378]
push edx
mov ecx, dword [ebp - 0x394]
call fcn.10076d10
push eax
lea ecx, [ebp - 0x330]
call fcn.100715d0
and eax, 0xff
test eax, eax
je 0x10076607
lea ecx, [ebp - 0x330]
call fcn.10076e90
mov ecx, eax
call fcn.10072b80
mov ecx, eax
call fcn.1006cd50
mov dword [ebp - 0x334], eax
lea ecx, [ebp - 0x330]
call fcn.10076e90
mov ecx, eax
call fcn.10076ba0
mov eax, dword [eax]
and eax, 1
test eax, eax
je 0x10076489
mov dword [ebp - 0x338], 0
jmp 0x1007641f
mov ecx, dword [ebp - 0x338]
add ecx, 1
mov dword [ebp - 0x338], ecx
mov edx, dword [ebp - 0x338]
cmp edx, dword [ebp - 0x32c]
jae 0x10076446
mov eax, dword [ebp - 0x338]
mov ecx, dword [ebp + eax*4 - 0x328]
cmp ecx, dword [ebp - 0x334]
jne 0x10076444
jmp 0x10076446
jmp 0x10076410
mov edx, dword [ebp - 0x338]
cmp edx, dword [ebp - 0x32c]
jne 0x1007647f
cmp dword [ebp - 0x32c], 0x40
jae 0x1007647f
mov eax, dword [ebp - 0x338]
mov ecx, dword [ebp - 0x334]
mov dword [ebp + eax*4 - 0x328], ecx
mov edx, dword [ebp - 0x32c]
add edx, 1
mov dword [ebp - 0x32c], edx
xor eax, eax
test eax, eax
jne 0x10076404
lea ecx, [ebp - 0x330]
call fcn.10076e90
mov ecx, eax
call fcn.10076ba0
mov ecx, dword [eax]
and ecx, 2
test ecx, ecx
je 0x1007652d
mov dword [ebp - 0x33c], 0
jmp 0x100764c3
mov edx, dword [ebp - 0x33c]
add edx, 1
mov dword [ebp - 0x33c], edx
mov eax, dword [ebp - 0x33c]
cmp eax, dword [ebp - 0x120]
jae 0x100764ea
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp + ecx*4 - 0x11c]
cmp edx, dword [ebp - 0x334]
jne 0x100764e8
jmp 0x100764ea
jmp 0x100764b4
mov eax, dword [ebp - 0x33c]
cmp eax, dword [ebp - 0x120]
jne 0x10076523
cmp dword [ebp - 0x120], 0x40
jae 0x10076523
mov ecx, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x334]
mov dword [ebp + ecx*4 - 0x11c], edx
mov eax, dword [ebp - 0x120]
add eax, 1
mov dword [ebp - 0x120], eax
xor ecx, ecx
test ecx, ecx
jne 0x100764a8
lea ecx, [ebp - 0x330]
call fcn.10076e90
mov ecx, eax
call fcn.10076ba0
mov edx, dword [eax]
and edx, 4
test edx, edx
je 0x100765d1
mov dword [ebp - 0x340], 0
jmp 0x10076567
mov eax, dword [ebp - 0x340]
add eax, 1
mov dword [ebp - 0x340], eax
mov ecx, dword [ebp - 0x340]
cmp ecx, dword [ebp - 0x228]
jae 0x1007658e
mov edx, dword [ebp - 0x340]
mov eax, dword [ebp + edx*4 - 0x224]
cmp eax, dword [ebp - 0x334]
jne 0x1007658c
jmp 0x1007658e
jmp 0x10076558
mov ecx, dword [ebp - 0x340]
cmp ecx, dword [ebp - 0x228]
jne 0x100765c7
cmp dword [ebp - 0x228], 0x40
jae 0x100765c7
mov edx, dword [ebp - 0x340]
mov eax, dword [ebp - 0x334]
mov dword [ebp + edx*4 - 0x224], eax
mov ecx, dword [ebp - 0x228]
add ecx, 1
mov dword [ebp - 0x228], ecx
xor edx, edx
test edx, edx
jne 0x1007654c
lea ecx, [ebp - 0x330]
call fcn.10076e90
mov ecx, eax
call fcn.10076ba0
cmp dword [eax], 0
je 0x10076602
mov eax, dword [ebp - 0x334]
cmp eax, dword [ebp - 0x124]
jle 0x10076602
mov ecx, dword [ebp - 0x334]
mov dword [ebp - 0x124], ecx
jmp 0x10076390
fld qword [ebp + 8]
fcomp qword [0x100da5e0]
fnstsw ax
test ah, 1
je 0x10076646
push 0
lea edx, [ebp - 0x228]
push edx
lea eax, [ebp - 0x120]
push eax
lea ecx, [ebp - 0x32c]
push ecx
mov edx, dword [ebp - 0x124]
add edx, 1
push edx
call dword [sym.imp.WS2_32.dll_select]
mov dword [ebp - 0x1c], eax
jmp 0x100766ca
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.10033bf6
add esp, 8
call fcn.100307fc
mov dword [ebp - 0x348], eax
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.10033bf6
add esp, 8
fsubr qword [ebp + 8]
fmul qword [0x100df8d0]
sub esp, 8
fstp qword [esp]
call fcn.10033bf6
add esp, 8
call fcn.100307fc
cdq
mov ecx, 0xf4240
idiv ecx
mov dword [ebp - 0x344], edx
lea edx, [ebp - 0x348]
push edx
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x120]
push ecx
lea edx, [ebp - 0x32c]
push edx
mov eax, dword [ebp - 0x124]
add eax, 1
push eax
call dword [sym.imp.WS2_32.dll_select]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jge 0x10076703
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov dword [ebp - 0x34c], eax
mov ecx, dword [ebp - 0x34c]
push ecx
mov edx, dword [ebp - 0x1c]
push edx
push str.Error_in_XmlRpcDispatch::work:_error_in_select___d__errorcode:_d.
call fcn.1006d34e
add esp, 0xc
mov eax, dword [ebp - 0x394]
mov byte [eax + 0x19], 0
jmp 0x10076a0c
mov ecx, dword [ebp - 0x394]
mov byte [ecx + 0x1a], 0
lea edx, [ebp - 0x37c]
push edx
mov ecx, dword [ebp - 0x394]
call fcn.10076cd0
mov eax, dword [eax]
mov dword [ebp - 0x330], eax
lea ecx, [ebp - 0x380]
push ecx
mov ecx, dword [ebp - 0x394]
call fcn.10076d10
push eax
lea ecx, [ebp - 0x330]
call fcn.100715d0
and eax, 0xff
test eax, eax
je 0x100768dd
push 0
lea edx, [ebp - 0x384]
push edx
lea ecx, [ebp - 0x330]
call fcn.10076eb0
mov eax, dword [eax]
mov dword [ebp - 0x354], eax
lea ecx, [ebp - 0x354]
call fcn.10076e90
mov ecx, eax
call fcn.10072b80
mov dword [ebp - 0x358], eax
mov ecx, dword [ebp - 0x358]
call fcn.1006cd50
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x35c], 0xffffffff
mov ecx, dword [ebp - 0x350]
cmp ecx, dword [ebp - 0x124]
jg 0x100768d8
lea edx, [ebp - 0x32c]
push edx
mov eax, dword [ebp - 0x350]
push eax
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x100767eb
push 1
mov ecx, dword [ebp - 0x358]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x358]
call dword [edx + 8]
mov ecx, dword [ebp - 0x35c]
and ecx, eax
mov dword [ebp - 0x35c], ecx
lea edx, [ebp - 0x120]
push edx
mov eax, dword [ebp - 0x350]
push eax
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x10076823
push 2
mov ecx, dword [ebp - 0x358]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x358]
call dword [edx + 8]
mov ecx, dword [ebp - 0x35c]
and ecx, eax
mov dword [ebp - 0x35c], ecx
lea edx, [ebp - 0x228]
push edx
mov eax, dword [ebp - 0x350]
push eax
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1007685b
push 4
mov ecx, dword [ebp - 0x358]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x358]
call dword [edx + 8]
mov ecx, dword [ebp - 0x35c]
and ecx, eax
mov dword [ebp - 0x35c], ecx
mov edx, dword [ebp - 0x394]
xor eax, eax
mov al, byte [edx + 0x1a]
test eax, eax
je 0x1007686c
jmp 0x100768dd
cmp dword [ebp - 0x35c], 0
jne 0x100768b5
mov ecx, dword [ebp - 0x354]
push ecx
lea edx, [ebp - 0x388]
push edx
mov ecx, dword [ebp - 0x394]
call fcn.10076d70
mov ecx, dword [ebp - 0x358]
call fcn.1006cf40
and eax, 0xff
test eax, eax
jne 0x100768b3
mov eax, dword [ebp - 0x358]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x358]
call dword [edx + 4]
jmp 0x100768d8
cmp dword [ebp - 0x35c], 0xffffffff
je 0x100768d8
lea ecx, [ebp - 0x354]
call fcn.10076e90
mov ecx, eax
call fcn.10076ba0
mov ecx, dword [ebp - 0x35c]
mov dword [eax], ecx
jmp 0x10076727
mov edx, dword [ebp - 0x394]
xor eax, eax
mov al, byte [edx + 0x18]
test eax, eax
je 0x100769a9
mov ecx, dword [ebp - 0x394]
push ecx
lea ecx, [ebp - 0x368]
call fcn.10076c00
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x394]
call fcn.10076e30
lea edx, [ebp - 0x38c]
push edx
lea ecx, [ebp - 0x368]
call fcn.10076cd0
mov eax, dword [eax]
mov dword [ebp - 0x36c], eax
jmp 0x1007693b
lea ecx, [ebp - 0x36c]
call fcn.10077230
lea ecx, [ebp - 0x390]
push ecx
lea ecx, [ebp - 0x368]
call fcn.10076d10
push eax
lea ecx, [ebp - 0x36c]
call fcn.100715d0
and eax, 0xff
test eax, eax
je 0x1007698d
lea ecx, [ebp - 0x36c]
call fcn.10076e90
mov ecx, eax
call fcn.10072b80
mov dword [ebp - 0x370], eax
mov edx, dword [ebp - 0x370]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x370]
call dword [eax + 4]
jmp 0x10076930
mov ecx, dword [ebp - 0x394]
mov byte [ecx + 0x18], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x368]
call fcn.10076c70
mov edx, dword [ebp - 0x394]
xor eax, eax
mov al, byte [edx + 0x1b]
test eax, eax
je 0x100769bd
call fcn.100761f6
mov ecx, dword [ebp - 0x394]
fld qword [0x100da5e0]
fcomp qword [ecx + 0x10]
fnstsw ax
test ah, 0x41
je 0x100769fd
mov ecx, dword [ebp - 0x394]
call fcn.10076afe
mov edx, dword [ebp - 0x394]
fcomp qword [edx + 0x10]
fnstsw ax
test ah, 0x41
jne 0x100769fd
push str._endTime.
call fcn.1007622a
add esp, 4
jmp 0x10076a02
jmp 0x10076311
mov eax, dword [ebp - 0x394]
mov byte [eax + 0x19], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8