Function at 0x4418f6
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push ebx
push esi
mov esi, ecx
call fcn.0043c220
mov ebx, dword [ebp + 0xc]
test ebx, 0x20000000
jne 0x44193c
push dword [ebp + 8]
test ebx, 0x2000
je 0x441922
call fcn.0042e574
jmp 0x441927
call fcn.0042d578
pop ecx
test al, al
je 0x44193c
push 0x7b
call fcn.004479b9
pop ecx
push 2
pop eax
jmp 0x441db4
mov ecx, ebx
mov edx, ebx
and ecx, 8
push edi
sete al
mov edi, 0x200
and edx, 0x10
mov byte [esi + 0x77], al
mov byte [esi + 0x79], al
sete al
mov byte [esi + 0x78], al
mov byte [esi + 0x7a], al
xor eax, eax
mov dword [ebp - 4], eax
test ecx, ecx
jne 0x441971
mov eax, bind
mov dword [ebp - 4], eax
jmp 0x44197b
test edi, ebx
je 0x44197b
or ebx, 0x100
test edx, edx
jne 0x441989
or eax, 0x40000000
mov dword [ebp - 4], eax
jmp 0x441993
test ebx, 0x100
je 0x441993
or ebx, edi
xor edi, edi
mov ecx, ebx
shr ecx, 8
inc edi
and ecx, edi
mov eax, ebx
mov edx, ecx
or edx, 2
and eax, 0x200
mov eax, ebx
cmove edx, ecx
mov ecx, ebx
and ecx, 0xe0000000
mov dword [ebp - 8], edx
and eax, 0x2000
cmp ecx, 0x20000000
je 0x441b79
cmp ecx, 0x40000000
je 0x441b60
cmp ecx, 0x60000000
je 0x441afb
cmp ecx, 0x80000000
je 0x441a7b
cmp ecx, 0xa0000000
je 0x441a4f
test eax, eax
je 0x441a0f
push bind
push dword [ebp + 8]
lea ecx, [esi + 0x1c]
call fcn.0042c488
jmp 0x441bad
mov ecx, dword [ebp + 8]
cmp byte [ecx], 0x7c
je 0x441a2a
push bind
push ecx
lea ecx, [esi + 0x10]
call fcn.0042c007
jmp 0x441bad
push 0xfde9
lea eax, [esi + 0x1c]
push eax
lea eax, [ecx + 1]
push bind
push eax
call fcn.00448457
add esp, 0x10
or ebx, 0x2000
jmp 0x441bad
push dword [ebp + 8]
test eax, eax
lea eax, [ebp - 0x18]
push eax
je 0x441a66
call fcn.0043df17
pop ecx
pop ecx
lea ecx, [esi + 0x1c]
jmp 0x441a70
call fcn.0043de22
pop ecx
pop ecx
lea ecx, [esi + 0x10]
push eax
call fcn.00407495
jmp 0x441b56
push dword [ebp + 8]
test eax, eax
je 0x441abd
lea eax, [ebp - 0x24]
push eax
call fcn.0043f4ca
push 0
mov ecx, 0x47c724
push 0
cmp dword [eax], 0
cmovne ecx, dword [eax]
lea eax, [ebp - 0x18]
push ecx
push eax
call fcn.0043e00c
add esp, 0x18
lea ecx, [esi + 0x1c]
push eax
call fcn.00407495
lea ecx, [ebp - 0x18]
call fcn.00423fb2
jmp 0x441ba2
lea eax, [ebp - 0x18]
push eax
call fcn.0043f41c
push 0
mov ecx, 0x47c720
push 0
cmp dword [eax], 0
cmovne ecx, dword [eax]
lea eax, [ebp - 0x24]
push ecx
push eax
call fcn.0043dd65
add esp, 0x18
lea ecx, [esi + 0x10]
push eax
call fcn.00407495
lea ecx, [ebp - 0x24]
call fcn.00423fb2
lea ecx, [ebp - 0x18]
jmp 0x441ba5
test eax, eax
lea eax, [ebp - 0x18]
push eax
je 0x441b25
call fcn.00447d34
push dword [ebp + 8]
mov ecx, 0x47c724
cmp dword [eax], 0
cmovne ecx, dword [eax]
lea eax, [ebp - 0x24]
push ecx
push eax
call fcn.0043f19d
lea ecx, [esi + 0x1c]
jmp 0x441b45
call fcn.00447cd0
push dword [ebp + 8]
mov ecx, 0x47c720
cmp dword [eax], 0
cmovne ecx, dword [eax]
lea eax, [ebp - 0x24]
push ecx
push eax
call fcn.0043f0e3
lea ecx, [esi + 0x10]
add esp, 0x10
push eax
call fcn.00407495
lea ecx, [ebp - 0x24]
call fcn.00423fb2
lea ecx, [ebp - 0x18]
call fcn.00423fb2
jmp 0x441bad
push 0
push 0
push dword [ebp + 8]
test eax, eax
lea eax, [ebp - 0x24]
push eax
je 0x441b91
call fcn.0043e00c
lea ecx, [esi + 0x1c]
jmp 0x441b99
test eax, eax
je 0x441b88
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x24]
push eax
jmp 0x441b6f
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.0043dd65
lea ecx, [esi + 0x10]
add esp, 0x10
push eax
call fcn.00407495
lea ecx, [ebp - 0x24]
call fcn.00423fb2
or ebx, 3
lea eax, [esi + 0x1c]
mov dword [ebp - 0xc], eax
lea ecx, [esi + 0x10]
test ebx, 0x2000
je 0x441bc9
push 0xffffffffffffffff
push ecx
push eax
call fcn.0043f82d
jmp 0x441bd2
push 0
push eax
push ecx
call fcn.004405ed
add esp, 0xc
mov eax, ebx
and eax, 3
push 4
pop edx
mov dword [ebp + 8], edx
sub eax, 1
je 0x441bf7
sub eax, 1
je 0x441bf3
sub eax, 1
jne 0x441bfd
push 2
jmp 0x441bf9
mov edx, edi
jmp 0x441bfa
push 3
pop edx
mov dword [ebp + 8], edx
and dword [ebp + 0xc], 0
cmp dword [esi + 0x1c], 0
mov eax, 0x47c724
push 0
push dword [ebp + 0x10]
cmovne eax, dword [esi + 0x1c]
push edx
push 0
push dword [ebp - 8]
push dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [esi + 0xc], eax
cmp eax, 0xffffffff
jne 0x441d76
test bl, 0x40
je 0x441c51
mov ecx, dword [ebp + 0xc]
mov eax, ecx
inc ecx
mov dword [ebp + 0xc], ecx
test eax, eax
jne 0x441c51
push 0x96
call fcn.004479d0
mov edx, dword [ebp + 8]
pop ecx
jmp 0x441c01
call sub.KERNEL32.dll_GetLastError
cmp eax, 0x20
jne 0x441c75
test ebx, 0x1000
jne 0x441c75
mov edx, dword [ebp + 0xc]
mov ecx, edx
inc edx
mov dword [ebp + 0xc], edx
cmp ecx, 5
jge 0x441c75
push 0x64
jmp 0x441c46
and dword [esi + 0xc], 0
cmp eax, 0x33
ja 0x441d35
je 0x441d67
dec eax
sub eax, 1
je 0x441d31
sub eax, 1
je 0x441d02
sub eax, 1
je 0x441cfe
sub eax, 1
je 0x441cc9
sub eax, 0xa
je 0x441cc2
sub eax, 6
je 0x441cbb
sub eax, 0xb
jne 0x441d72
push 5
jmp 0x441d71
push 0x14
jmp 0x441d71
push 0x15
jmp 0x441d71
call sub.KERNEL32.dll_GetLastError
cmp byte [esi + 0x78], 0
mov ebx, eax
je 0x441cf2
cmp dword [esi + 0x1c], 0
mov ecx, 0x47c724
cmovne ecx, dword [esi + 0x1c]
push ecx
call fcn.0043d915
pop ecx
test al, al
je 0x441cf2
push 0xd
jmp 0x441cf4
push 0xc
pop edi
push ebx
call fcn.004479b9
pop ecx
jmp 0x441d72
push 8
jmp 0x441d71
mov esi, dword [ebp - 0xc]
mov ecx, esi
push edi
call fcn.00422e5b
cmp ax, 0x3a
jne 0x441d2d
push 0
mov ecx, esi
call fcn.00422e5b
mov byte [ebp + 0xb], al
lea eax, [ebp + 0xb]
push eax
call fcn.0043d17e
pop ecx
test al, al
je 0x441cc2
push 4
jmp 0x441d71
push 3
jmp 0x441d71
cmp eax, 0x50
ja 0x441d56
je 0x441d52
cmp eax, 0x35
je 0x441d67
cmp eax, 0x3f
jbe 0x441d72
cmp eax, 0x41
jbe 0x441d67
cmp eax, 0x43
je 0x441d67
jmp 0x441d72
push 0xa
jmp 0x441d71
cmp eax, 0x57
je 0x441d6f
cmp eax, 0x7b
je 0x441d6b
cmp eax, 0x4b3
jne 0x441d72
push 0x13
jmp 0x441d71
push 2
jmp 0x441d71
push 9
pop edi
mov eax, edi
jmp 0x441db3
test bl, bl
jns 0x441d91
mov ecx, esi
call fcn.00441853
test al, al
jne 0x441d91
mov ecx, esi
call fcn.0043c220
push 6
pop eax
jmp 0x441db3
test ebx, 0x400
je 0x441da2
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax + 0x34]
test ebx, 0x800
je 0x441db1
mov ecx, esi
call fcn.0043c220
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret 0xc