Function at 0x462990
Capabilities:
Inspect section memory permissions

Disassembly:
push ebx
sub esp, 0x18
mov ebx, dword [esp + 0x24]
movzx edx, byte [ebx + 0x70]
mov eax, dword [ebx + 0x2c]
test dl, dl
jne 0x457537
test al, 8
je 0x457560
test al, 1
jne 0x457577
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x45754c
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
and eax, 0xffffffbf
or eax, 1
mov dword [ebx + 0x2c], eax
add esp, 0x18
pop ebx
ret
mov ecx, dword [esp + 0x20]
or eax, 8
test al, 1
mov dword [ebx + 0x2c], eax
mov edx, dword [ecx + 0x2c]
mov dword [ebx + 0x28], edx
mov dword [ecx + 0x2c], ebx
je 0x45753b
mov dword [esp + 8], 0x3e
mov dword [esp + 4], str.src_win_async.c
mov dword [esp], 0x545b1c
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x45753b
push ebx
sub esp, 0x18
mov ebx, dword [esp + 0x24]
mov eax, dword [ebx + 0x2c]
test al, 0x40
jne 0x459cc1
test al, 1
jne 0x459ca0
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x459c64
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
mov edx, eax
and edx, 0xffffffbf
mov ecx, edx
or ecx, 1
mov dword [ebx + 0x2c], ecx
mov ecx, dword [ebx + 0x74]
test ecx, ecx
jne 0x459c93
test al, 8
jne 0x459c93
mov eax, dword [esp + 0x20]
or edx, 9
mov dword [ebx + 0x2c], edx
mov eax, dword [eax + 0x2c]
mov dword [ebx + 0x28], eax
mov eax, dword [esp + 0x20]
mov dword [eax + 0x2c], ebx
add esp, 0x18
pop ebx
ret
mov dword [esp + 8], 0x21d
mov dword [esp + 4], str.src_win_fs_event.c
mov dword [esp], 0x545eec
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x459c53
mov eax, ebx
call fcn.00459050
mov eax, dword [ebx + 0x2c]
jmp 0x459c4f
push esi
push ebx
sub esp, 0x14
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
test byte [ebx + 0x2c], 1
jne 0x4629c0
cmp dword [ebx + 8], 0x10
mov esi, dword [ebx + 4]
mov dword [ebx + 0xc], eax
ja case.0x4629b6.0
mov eax, dword [ebx + 8]
jmp dword [eax*4 + 0x5462ec]
mov dword [esp + 8], 0x47
mov dword [esp + 4], str.src_win_handle.c
mov dword [esp], 0x5462c1
call fcn.0049c730
add esp, 0x14
pop ebx
pop esi
ret
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
add esp, 0x14
pop ebx
pop esi
jmp 0x46b7d0
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
add esp, 0x14
pop ebx
pop esi
jmp 0x457520
mov dword [esp], ebx
call fcn.00462f80
mov eax, dword [ebx + 0x2c]
test al, 1
jne 0x462bd0
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x462a34
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
mov edx, eax
and edx, 0xffffffbf
test al, 8
jne 0x462bc2
mov eax, dword [esi + 0x2c]
or edx, 9
mov dword [ebx + 0x2c], edx
mov dword [ebx + 0x28], eax
mov dword [esi + 0x2c], ebx
add esp, 0x14
pop ebx
pop esi
ret
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
add esp, 0x14
pop ebx
pop esi
jmp 0x459c40
mov dword [esp], ebx
call fcn.0047b600
mov eax, dword [ebx + 0x2c]
test al, 1
je 0x462a23
mov dword [esp + 8], 0x8d
mov dword [esp + 4], str.src_win_handle.c
mov dword [esp], 0x5462c4
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x462a23
mov dword [esp], ebx
call fcn.00463170
mov eax, dword [ebx + 0x2c]
test al, 1
je 0x462a23
mov dword [esp + 8], 0x77
mov dword [esp + 4], str.src_win_handle.c
mov dword [esp], 0x5462c4
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x462a23
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
add esp, 0x14
pop ebx
pop esi
jmp 0x466390
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
add esp, 0x14
pop ebx
pop esi
jmp 0x468a10
mov dword [esp], ebx
call fcn.00462d90
mov eax, dword [ebx + 0x2c]
test al, 1
je 0x462a23
mov dword [esp + 8], 0x6b
mov dword [esp + 4], str.src_win_handle.c
mov dword [esp], 0x5462c4
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x462a23
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
add esp, 0x14
pop ebx
pop esi
jmp 0x469e10
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
add esp, 0x14
pop ebx
pop esi
jmp fcn.0046ec10
mov dword [esp], ebx
call fcn.00470400
mov eax, dword [ebx + 0x2c]
test al, 1
je 0x462a23
mov dword [esp + 8], 0x65
mov dword [esp + 4], str.src_win_handle.c
mov dword [esp], 0x5462c4
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x462a23
mov dword [esp + 0x20], ebx
add esp, 0x14
pop ebx
pop esi
jmp 0x475b70
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], esi
add esp, 0x14
pop ebx
pop esi
jmp 0x476660
or edx, 1
mov dword [ebx + 0x2c], edx
add esp, 0x14
pop ebx
pop esi
ret
mov dword [esp + 8], 0x71
mov dword [esp + 4], str.src_win_handle.c
mov dword [esp], 0x5462c4
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x462a23
call sub.msvcrt.dll_abort
lea esi, [esi]
push esi
push ebx
sub esp, 0x14
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov eax, dword [ebx + 0x2c]
test ah, 1
je 0x4663e1
mov ecx, eax
and ch, 0xfe
sub dword [ebx + 0x40], 1
mov dword [ebx + 0x2c], ecx
jne 0x4664d0
test al, 1
jne 0x466500
test al, 0x40
je 0x466500
mov edx, eax
and eax, 0x20
mov ecx, eax
and edx, 0xfffffebf
test ecx, ecx
mov dword [ebx + 0x2c], edx
mov eax, edx
jne 0x466520
test ah, 8
je 0x466413
mov edx, eax
and dh, 0xf7
sub dword [ebx + 0x40], 1
mov dword [ebx + 0x2c], edx
jne 0x4664a0
test al, 1
jne 0x466413
test al, 0x40
je 0x466413
mov edx, eax
and edx, 0xfffff7bf
test al, 0x20
mov dword [ebx + 0x2c], edx
jne 0x466510
mov dword [esp + 4], ebx
mov dword [esp], esi
call fcn.004662c0
mov eax, dword [ebx + 0x3c]
mov edx, dword [ebx + 0x2c]
test eax, eax
jne 0x46642e
test dl, 8
je 0x466460
mov eax, edx
and eax, 0xfffe7fff
and edx, 1
mov dword [ebx + 0x2c], eax
jne 0x46647b
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x46644e
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
and eax, 0xffffffbf
or eax, 1
mov dword [ebx + 0x2c], eax
add esp, 0x14
pop ebx
pop esi
ret
mov eax, dword [esi + 0x2c]
or edx, 8
mov dword [ebx + 0x28], eax
mov eax, edx
mov dword [esi + 0x2c], ebx
and eax, 0xfffe7fff
and edx, 1
mov dword [ebx + 0x2c], eax
je 0x46643d
mov dword [esp + 8], 0x31a
mov dword [esp + 4], str.src_win_pipe.c
mov dword [esp], 0x5467f4
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x46643d
jns 0x466413
mov dword [esp + 8], 0x310
mov dword [esp + 4], str.src_win_pipe.c
mov dword [esp], 0x5467da
call fcn.0049c730
jmp 0x466413
mov eax, ecx
jns 0x4663e1
mov dword [esp + 8], 0x30b
mov dword [esp + 4], str.src_win_pipe.c
mov dword [esp], 0x5467da
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x4663e1
mov eax, ecx
jmp 0x4663e1
mov eax, dword [ebx + 4]
sub dword [eax + 4], 1
jmp 0x466413
mov edx, dword [ebx + 4]
sub dword [edx + 4], 1
jmp 0x4663e1
push ebx
sub esp, 0x38
mov ebx, dword [esp + 0x44]
mov eax, dword [ebx + 0x2c]
mov byte [ebx + 0xfc], 0
mov edx, eax
and edx, 1
test eax, 0x2000000
je 0x468a80
test edx, edx
jne 0x468b40
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x468a47
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
mov edx, eax
and edx, 0xffffffbf
mov ecx, edx
or ecx, 1
cmp word [ebx + 0xf8], 0
mov dword [ebx + 0x2c], ecx
jne 0x468a79
test al, 8
jne 0x468a79
mov eax, dword [esp + 0x40]
or edx, 9
mov dword [ebx + 0x2c], edx
mov eax, dword [eax + 0x2c]
mov dword [ebx + 0x28], eax
mov eax, dword [esp + 0x40]
mov dword [eax + 0x2c], ebx
xor eax, eax
add esp, 0x38
pop ebx
ret
test edx, edx
jne 0x468b72
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x468a99
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
mov edx, eax
and edx, 0xffffffbf
mov ecx, edx
or ecx, 1
cmp word [ebx + 0xf8], 0
mov dword [ebx + 0x2c], ecx
je 0x468a5e
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x468240
mov dword [esp], 0x5767e0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x18], 1
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], 0x7fffffff
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0x7ff
call fcn.0046f5c0
lea eax, [esp + 0x10]
mov dword [esp + 0xc], 0x5767e8
mov dword [esp + 8], 0x5767c0
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x34]
mov dword [esp], eax
call fcn.0047ad00
sub esp, 0x10
cmp eax, 0xffffffff
jne 0x468a79
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
jne 0x468a7b
jmp 0x468a79
mov dword [esp + 8], 0x1f1
mov dword [esp + 4], str.src_win_poll.c
mov dword [esp], 0x546d08
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
mov edx, eax
and edx, 0x60
cmp edx, 0x60
jne 0x468a40
jmp 0x468a47
mov dword [esp + 8], 0xfd
mov dword [esp + 4], str.src_win_poll.c
mov dword [esp], 0x546d08
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x468a88
push ebx
sub esp, 0x18
mov ebx, dword [esp + 0x24]
mov eax, dword [ebx + 0x2c]
test al, 1
jne 0x469e90
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x469e30
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
and eax, 0xffffffbf
or eax, 1
mov dword [ebx + 0x2c], eax
mov eax, dword [ebx + 0x7c]
cmp eax, 0xffffffff
je 0x469e60
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_UnregisterWaitEx]
sub esp, 8
test eax, eax
je 0x469eb4
mov dword [ebx + 0x7c], 0xffffffff
movzx eax, byte [ebx + 0x84]
test al, al
jne 0x469e89
mov eax, dword [ebx + 0x2c]
test al, 8
jne 0x469e89
or eax, 8
mov dword [ebx + 0x2c], eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x2c]
mov dword [ebx + 0x28], eax
mov eax, dword [esp + 0x20]
mov dword [eax + 0x2c], ebx
add esp, 0x18
pop ebx
ret
mov dword [esp + 8], 0x384
mov dword [esp + 4], str.src_win_process.c
mov dword [esp], 0x546f5c
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x469e1f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 4], str.UnregisterWaitEx
mov dword [esp], eax
call fcn.00458810
lea esi, [esi]
push ebx
sub esp, 0x18
mov ebx, dword [esp + 0x24]
mov dword [esp], ebx
call fcn.0046ac70
mov eax, dword [ebx + 0x2c]
test al, 1
jne 0x46b830
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x46b7f8
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
mov edx, eax
and edx, 0xffffffbf
mov ecx, edx
or ecx, 1
mov dword [ebx + 0x2c], ecx
mov ecx, dword [ebx + 0x84]
test ecx, ecx
jne 0x46b82a
test al, 8
jne 0x46b82a
mov eax, dword [esp + 0x20]
or edx, 9
mov dword [ebx + 0x2c], edx
mov eax, dword [eax + 0x2c]
mov dword [ebx + 0x28], eax
mov eax, dword [esp + 0x20]
mov dword [eax + 0x2c], ebx
add esp, 0x18
pop ebx
ret
mov dword [esp + 8], 0x103
mov dword [esp + 4], str.src_win_signal.c
mov dword [esp], 0x547420
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x46b7e7
push ebx
sub esp, 0x18
mov ebx, dword [esp + 0x20]
mov eax, dword [ebx + 0x18]
cmp eax, 0xffffffff
je 0x475b89
cmp eax, 2
jle 0x475c10
cmp eax, 0xffffffff
je 0x475c38
mov dword [esp], eax
call sub.msvcrt.dll__close_1
mov edx, dword [ebx + 0x2c]
test dh, 1
jne 0x475c56
mov eax, edx
mov dword [ebx + 0x18], 0xffffffff
mov dword [ebx + 0x90], 0xffffffff
and eax, 0xfffe7fff
and edx, 1
mov dword [ebx + 0x2c], eax
jne 0x475c70
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x475bdb
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
mov edx, eax
and edx, 0xffffffbf
mov ecx, edx
or ecx, 1
mov dword [ebx + 0x2c], ecx
mov ecx, dword [ebx + 0x3c]
test ecx, ecx
jne 0x475c05
test al, 8
jne 0x475c05
mov eax, dword [ebx + 4]
or edx, 9
mov dword [ebx + 0x2c], edx
mov edx, dword [eax + 0x2c]
mov dword [ebx + 0x28], edx
mov dword [eax + 0x2c], ebx
add esp, 0x18
pop ebx
ret
mov dword [esp + 8], 0x888
mov dword [esp + 4], 0x547980
mov dword [esp], str.handle__u.fd___1__handle__u.fd___2
call fcn.0049c730
mov eax, dword [ebx + 0x18]
cmp eax, 0xffffffff
jne 0x475b92
mov eax, dword [ebx + 0x90]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebx + 0x2c]
sub esp, 4
test dh, 1
je 0x475ba6
mov dword [esp], ebx
call fcn.004753a0
mov edx, dword [ebx + 0x2c]
jmp 0x475ba6
mov dword [esp + 8], 0x894
mov dword [esp + 4], 0x547980
mov dword [esp], 0x5481f4
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x475bca
push ebx
sub esp, 0x18
mov ebx, dword [esp + 0x24]
mov dword [esp], ebx
call fcn.00456e80
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov eax, dword [ebx + 0x2c]
sub esp, 4
mov dword [ebx + 0x38], 0xffffffff
test al, 1
jne 0x4766d2
mov edx, eax
and edx, 0x60
cmp edx, 0x60
je 0x47669e
mov edx, dword [ebx + 4]
add dword [edx + 4], 1
mov edx, eax
and edx, 0xffffffbf
mov ecx, edx
or ecx, 1
mov dword [ebx + 0x2c], ecx
mov ecx, dword [ebx + 0x3c]
test ecx, ecx
jne 0x4766cd
test al, 8
jne 0x4766cd
mov eax, dword [esp + 0x20]
or edx, 9
mov dword [ebx + 0x2c], edx
mov eax, dword [eax + 0x2c]
mov dword [ebx + 0x28], eax
mov eax, dword [esp + 0x20]
mov dword [eax + 0x2c], ebx
add esp, 0x18
pop ebx
ret
mov dword [esp + 8], 0xb9
mov dword [esp + 4], str.src_win_udp.c
mov dword [esp], str.___handle___flags__UV__HANDLE_CLOSING_
call fcn.0049c730
mov eax, dword [ebx + 0x2c]
jmp 0x47668d