Function at 0x45a2cd9a
Capabilities:
Inspect section memory permissions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
push 0
lea eax, [ebp - 0x18]
push eax
call fcn.45a3999f
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
and edi, 0x10ffff
mov dword [ebp - 4], edi
mov ebx, 0x10000
jne 0x45a2cde2
test dword [ebp + 0xc], ebx
jne 0x45a2cde2
cmp dword [esi + 0x158], 8
je 0x45a2cde2
push esi
call fcn.45a38876
test al, al
je 0x45a2cf0e
mov eax, dword [ebp + 0x10]
dec eax
je 0x45a2d097
dec eax
je 0x45a2cff3
dec eax
dec eax
je 0x45a2cf54
sub eax, 0x380
je 0x45a2cead
dec eax
je 0x45a2ce31
mov eax, dword [esi + 0x158]
mov eax, dword [eax*4 + 0x45a3e3f8]
test eax, eax
je 0x45a2d007
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call eax
mov edi, eax
jmp 0x45a2d24f
mov ecx, dword [esi + 0x158]
mov eax, 0x100000
test dword [ecx*4 + 0x45a3e420], eax
je 0x45a2d007
test edi, edi
jne 0x45a2ce5c
test dword [ebp + 0xc], ebx
jne 0x45a2ce6e
push dword [esi + 0x6c]
call fcn.45a259ed
jmp 0x45a2ce6e
test dword [esi + 0x160], eax
je 0x45a2ce6e
test byte [ebp + 0xc], 4
je 0x45a2d03e
lea eax, [esi + 0x168]
push eax
push dword [ebp + 0x14]
call fcn.45a399fe
mov edi, eax
test edi, edi
jne 0x45a2d24f
test dword [ebp + 0xc], ebx
jne 0x45a2d24f
cmp dword [ebp - 4], eax
jne 0x45a2cea1
or byte [esi + 0x162], 0x10
jmp 0x45a2d24f
or byte [esi + 0x166], 0x10
jmp 0x45a2d24f
mov ecx, dword [esi + 0x158]
mov eax, 0x20000000
test dword [ecx*4 + 0x45a3e420], eax
je 0x45a2d007
test edi, edi
jne 0x45a2ced8
test dword [ebp + 0xc], ebx
jne 0x45a2ceea
push dword [esi + 0x6c]
call fcn.45a259ed
jmp 0x45a2ceea
test dword [esi + 0x160], eax
je 0x45a2ceea
test byte [ebp + 0xc], 4
je 0x45a2d03e
test edi, edi
jne 0x45a2cf15
test dword [ebp + 0xc], ebx
jne 0x45a2cf15
cmp dword [esi + 0x170], edi
jne 0x45a2cf02
push 0x32
jmp 0x45a2d009
mov eax, dword [esi + 0x6c]
cmp byte [eax + 0x2d4], 0
jne 0x45a2cf15
push 5
jmp 0x45a2d009
lea eax, [esi + 0x16c]
push eax
push dword [ebp + 0x14]
call fcn.45a399fe
mov edi, eax
test edi, edi
jne 0x45a2d24f
test dword [ebp + 0xc], ebx
jne 0x45a2d24f
cmp dword [ebp - 4], eax
jne 0x45a2cf48
or byte [esi + 0x163], 0x20
jmp 0x45a2d24f
or byte [esi + 0x167], 0x20
jmp 0x45a2d24f
mov ecx, dword [esi + 0x158]
mov eax, 0x1000000
test dword [ecx*4 + 0x45a3e420], eax
je 0x45a2d007
test edi, edi
jne 0x45a2cf7f
test dword [ebp + 0xc], ebx
jne 0x45a2cf91
push dword [esi + 0x6c]
call fcn.45a259ed
jmp 0x45a2cf91
test dword [esi + 0x160], eax
je 0x45a2cf91
test byte [ebp + 0xc], 4
je 0x45a2d03e
test edi, edi
jne 0x45a2cfa1
test dword [ebp + 0xc], ebx
jne 0x45a2cfa1
mov eax, 0x1000
jmp 0x45a2cfa4
or eax, 0xffffffff
push 1
push eax
push dword [ebp + 0x14]
lea eax, [ebp - 0x18]
push eax
call fcn.45a3a260
mov edi, eax
test edi, edi
jne 0x45a2d24f
lea eax, [esi + 0x11c]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.45a39bbe
test dword [ebp + 0xc], ebx
jne 0x45a2d24f
cmp dword [ebp - 4], edi
jne 0x45a2cfe7
or byte [esi + 0x163], 1
jmp 0x45a2d24f
or byte [esi + 0x167], 1
jmp 0x45a2d24f
mov ecx, dword [esi + 0x158]
mov eax, 0x40000000
test dword [ecx*4 + 0x45a3e420], eax
jne 0x45a2d00f
push 0x57
pop edi
jmp 0x45a2d24f
test edi, edi
jne 0x45a2d030
test dword [ebp + 0xc], ebx
jne 0x45a2d020
push dword [esi + 0x6c]
call fcn.45a259ed
test edi, edi
jne 0x45a2d045
test dword [ebp + 0xc], ebx
jne 0x45a2d045
mov eax, 0x400
jmp 0x45a2d048
test dword [esi + 0x160], eax
je 0x45a2d020
test byte [ebp + 0xc], 4
jne 0x45a2d020
xor edi, edi
jmp 0x45a2d24f
or eax, 0xffffffff
push 1
push eax
push dword [ebp + 0x14]
lea eax, [ebp - 0x18]
push eax
call fcn.45a3a260
mov edi, eax
test edi, edi
jne 0x45a2d24f
lea eax, [esi + 0x128]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.45a39bbe
test dword [ebp + 0xc], ebx
jne 0x45a2d24f
cmp dword [ebp - 4], edi
jne 0x45a2d08b
or byte [esi + 0x163], 0x40
jmp 0x45a2d24f
or byte [esi + 0x167], 0x40
jmp 0x45a2d24f
mov ecx, dword [esi + 0x158]
mov eax, 0x80000000
test dword [ecx*4 + 0x45a3e420], eax
je 0x45a2d007
test edi, edi
jne 0x45a2d0c2
test dword [ebp + 0xc], ebx
jne 0x45a2d0d4
push dword [esi + 0x6c]
call fcn.45a259ed
jmp 0x45a2d0d4
test dword [esi + 0x160], eax
je 0x45a2d0d4
test byte [ebp + 0xc], 4
je 0x45a2d03e
test edi, edi
jne 0x45a2d0ec
test dword [ebp + 0xc], ebx
jne 0x45a2d0ec
mov eax, dword [esi + 0x158]
mov eax, dword [eax*4 + 0x45a3e330]
jmp 0x45a2d0ef
or eax, 0xffffffff
push 0
push eax
push dword [ebp + 0x14]
lea eax, [ebp - 0x18]
push eax
call fcn.45a3a260
mov edi, eax
test edi, edi
jne 0x45a2d24f
push dword [esi + 0x158]
lea eax, [ebp - 0x18]
push eax
call fcn.45a2bf06
mov edi, eax
test edi, edi
jne 0x45a2d24f
lea eax, [ebp + 0x14]
push eax
push 0x40000
lea eax, [ebp - 0x18]
push eax
push dword [esi + 8]
call fcn.45a2be44
test eax, eax
jne 0x45a2d14c
push dword [ebp + 0x14]
call fcn.45a2cd65
mov edi, 0xb7
jmp 0x45a2d24f
mov eax, dword [esi + 0x158]
mov eax, dword [eax*4 + 0x45a3e3a8]
test eax, eax
je 0x45a2d173
lea ecx, [ebp - 0x18]
push ecx
mov ecx, dword [esi + 8]
push dword [ecx + 0x44]
call eax
mov edi, eax
test edi, edi
jne 0x45a2d24f
lea eax, [ebp - 0x18]
push eax
push dword [esi + 8]
call fcn.45a2bc84
test eax, eax
mov dword [ebp - 8], eax
jne 0x45a2d18d
push 8
jmp 0x45a2d009
mov eax, dword [ebp - 8]
mov dword [eax + 0xc], esi
mov edi, dword [esi + 0x68]
jmp 0x45a2d20b
cmp dword [edi + 0x10], 0
je 0x45a2d209
and dword [ebp + 0x14], 0
cmp dword [edi + 0x20], 0
jbe 0x45a2d209
mov eax, dword [edi + 0x1c]
mov ecx, dword [ebp + 0x14]
push edi
push dword [esi + 0x158]
push dword [eax + ecx*4]
call fcn.45a2c333
lea ecx, [ebp + 0x10]
push ecx
push dword [esi + 0x118]
mov dword [ebp + 8], eax
push eax
call fcn.45a2c3b8
mov eax, dword [ebp + 8]
push dword [ebp + 0x10]
add eax, 0x1c
push eax
mov dword [ebp - 0xc], eax
call fcn.45a39d6f
lea eax, [ebp + 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
push dword [ebp + 8]
call fcn.45a2c3b8
push dword [ebp + 0x10]
push esi
push dword [ebp - 0xc]
call fcn.45a39cc0
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [edi + 0x20]
jb 0x45a2d1a8
mov edi, dword [edi]
test edi, edi
jne 0x45a2d198
mov eax, dword [esi + 8]
lea edi, [esi + 0x118]
push dword [edi]
add eax, 0xc
push eax
call dword [sym.imp.ntdll.dll_RtlDeleteElementGenericTableAvl]
test al, al
jne 0x45a2d22e
mov eax, dword [edi]
and dword [eax + 0xc], 0
mov eax, dword [ebp - 8]
mov dword [edi], eax
xor edi, edi
test dword [ebp + 0xc], ebx
jne 0x45a2d24f
cmp dword [ebp - 4], edi
jne 0x45a2d248
or byte [esi + 0x163], 0x80
jmp 0x45a2d24f
or byte [esi + 0x167], 0x80
lea eax, [ebp - 0x18]
push eax
call fcn.45a39bee
test edi, edi
jne 0x45a2d265
mov esi, dword [esi + 0x6c]
inc dword [esi + 0x2d0]
mov eax, edi
pop edi
pop esi
pop ebx
leave
ret 0x10