Function at 0x438210
Capabilities:
Set socket configuration

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x10
mov esi, dword [esp + 0x24]
mov edx, str.set_file_block_mode
mov ecx, esi
call fcn.004351f0
test eax, eax
je 0x4382ee
cmp dword [eax + 4], 0
je 0x4382ee
cmp dword [eax], 0x57887c
je 0x438311
call dword [sym.imp.msvcrt.dll__errno]
mov dword [eax], pe_nt_image_headers32
cmp byte [0x5ac048], 0
jns 0x438307
call fcn.004ce330
cmp eax, 1
jg 0x438307
call dword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [eax]
lea edi, [esp + 4]
mov ecx, edi
push 0xffffffffffffffff
push 0
push 1
push 0
push 0x490
push str.system_core_adb_sysdeps_win32.cpp
call fcn.004ce350
mov ecx, edi
call fcn.004ce340
mov edi, eax
mov eax, esp
push esi
push str.Setting_nonblocking_on_non_socket__d
push eax
call fcn.004cf170
add esp, 0xc
mov eax, dword [esp]
push dword [eax - 0xc]
push eax
push edi
call fcn.0055d520
add esp, 0xc
mov eax, dword [esp]
lea ecx, [eax - 0xc]
cmp ecx, 0x56dff0
je 0x438446
mov edx, 0xffffffff
lock xadd dword [eax - 4], edx
test edx, edx
jg 0x438446
lea eax, [esp + 8]
push eax
call fcn.00533980
jmp 0x438446
call dword [sym.imp.msvcrt.dll__errno]
mov dword [eax], 9
cmp byte [0x5ac048], 0
js 0x4383db
xor eax, eax
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
mov cl, byte [esp + 0x28]
xor cl, 1
movzx ecx, cl
mov dword [esp + 4], ecx
lea ecx, [esp + 4]
push ecx
push 0x8004667e
push dword [eax + 0xc]
call dword [sym.imp.WS2_32.dll_ioctlsocket]
test eax, eax
je 0x4383d4
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, eax
mov edi, eax
call fcn.00435990
cmp byte [0x5ac048], 0
jns 0x438307
call fcn.004ce330
cmp eax, 1
jg 0x438307
call dword [sym.imp.msvcrt.dll__errno]
mov ebp, dword [eax]
mov ebx, esp
mov ecx, ebx
push 0xffffffffffffffff
push 0
push 1
push 0
push 0x48a
push str.system_core_adb_sysdeps_win32.cpp
call fcn.004ce350
mov ecx, ebx
call fcn.004ce340
mov ebx, eax
lea eax, [esp + 8]
push edi
push esi
push str.Setting__d_nonblocking_failed___d_
push eax
call fcn.004cf170
add esp, 0x10
mov eax, dword [esp + 8]
push dword [eax - 0xc]
push eax
push ebx
call fcn.0055d520
add esp, 0xc
mov eax, dword [esp + 8]
lea ecx, [eax - 0xc]
cmp ecx, 0x56dff0
jne 0x438476
mov ecx, esp
call fcn.004ce390
call dword [sym.imp.msvcrt.dll__errno]
mov dword [eax], ebp
jmp 0x438307
mov al, 1
jmp 0x438309
call fcn.004ce330
cmp eax, 1
jg 0x438307
call dword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [eax]
lea edi, [esp + 4]
mov ecx, edi
push 0xffffffffffffffff
push 0
push 1
push 0
push 0x481
push str.system_core_adb_sysdeps_win32.cpp
call fcn.004ce350
mov ecx, edi
call fcn.004ce340
mov edi, eax
mov eax, esp
push esi
push str.Setting_nonblocking_on_bad_file_descriptor__d
push eax
call fcn.004cf170
add esp, 0xc
mov eax, dword [esp]
push dword [eax - 0xc]
push eax
push edi
call fcn.0055d520
add esp, 0xc
mov eax, dword [esp]
lea ecx, [eax - 0xc]
cmp ecx, 0x56dff0
jne 0x43845c
lea ecx, [esp + 4]
call fcn.004ce390
call dword [sym.imp.msvcrt.dll__errno]
mov dword [eax], ebx
jmp 0x438307
mov edx, 0xffffffff
lock xadd dword [eax - 4], edx
test edx, edx
jg 0x438446
lea eax, [esp + 8]
push eax
call fcn.00533980
jmp 0x438446
mov edx, 0xffffffff
lock xadd dword [eax - 4], edx
test edx, edx
jg 0x4383c0
lea eax, [esp + 0xc]
push eax
call fcn.00533980
jmp 0x4383c0