Function at 0x41c2d0
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
push ebp
xor ecx, ecx
mov ebp, esp
push edi
lea eax, [ebp + 0x10]
push esi
push ebx
sub esp, 0xdc
mov dword [ebp - 0x10], eax
mov edx, dword [ebp + 0x10]
xor ebx, ebx
mov dword [esp + 0xa4], ebx
mov edi, dword [ebp + 8]
xor ebx, ebx
mov dword [esp + 0x9c], ecx
mov esi, dword [ebp + 0xc]
lea eax, [edx + 0x50]
mov dword [esp + 0xd0], eax
mov eax, 0x14
xor ecx, ecx
mov dword [esp + 0xcc], eax
lea eax, [edx + 0x254]
mov dword [esp + 0xc8], eax
mov eax, 4
mov dword [esp + 0xc4], eax
lea eax, [edx + 0x250]
mov dword [esp + 0xc0], eax
mov eax, 4
mov dword [esp + 0xbc], eax
lea eax, [edx + 0x1d0]
mov dword [esp + 0xb8], eax
xor eax, eax
mov dword [esp + 0xb4], eax
lea eax, [edx + 0x9c]
mov dword [esp + 0xb0], eax
mov eax, 4
mov dword [esp + 0xac], eax
lea eax, [edx + 0x98]
mov dword [esp + 0xa8], eax
lea eax, [edx + 0x1ac]
mov dword [esp + 0xa0], eax
lea eax, [edx + 0x1a8]
mov dword [esp + 0x98], eax
xor eax, eax
mov dword [esp + 0x94], eax
lea eax, [edx + 0x1a4]
mov dword [esp + 0x90], eax
xor eax, eax
mov dword [esp + 0x8c], eax
lea eax, [edx + 0x1a0]
mov dword [esp + 0x88], eax
xor eax, eax
mov dword [esp + 0x84], eax
lea eax, [edx + 0x1b4]
mov dword [esp + 0x80], eax
xor eax, eax
mov dword [esp + 0x7c], eax
lea eax, [edx + 0x1b0]
mov dword [esp + 0x78], eax
xor eax, eax
mov dword [esp + 0x74], eax
lea eax, [edx + 0x1cc]
mov dword [esp + 0x70], eax
xor eax, eax
mov dword [esp + 0x6c], eax
lea eax, [edx + 0x1c8]
mov dword [esp + 0x68], eax
lea eax, [edx + 0xd0]
mov dword [esp + 0x60], eax
lea eax, [edx + 0xe4]
mov dword [esp + 0x58], eax
xor eax, eax
mov dword [esp + 0x54], eax
lea eax, [edx + 0x29c]
mov dword [esp + 0x50], eax
xor eax, eax
mov dword [esp + 0x4c], eax
lea eax, [edx + 0x1e0]
mov dword [esp + 0x48], eax
xor eax, eax
mov dword [esp + 0x44], eax
lea eax, [edx + 0x208]
mov dword [esp + 0x40], eax
xor eax, eax
mov dword [esp + 0x3c], eax
lea eax, [edx + 0x204]
mov dword [esp + 0x38], eax
xor eax, eax
mov dword [esp + 0x34], eax
lea eax, [edx + 0x200]
mov dword [esp + 0x30], eax
xor eax, eax
mov dword [esp + 0x2c], eax
lea eax, [edx + 0x1fc]
mov dword [esp + 0x28], eax
lea eax, [ebp - 0x10]
mov dword [esp + 0x20], eax
lea eax, [edx + 0x20]
add edx, 0x18
mov dword [esp + 0x18], eax
mov eax, 4
mov dword [esp + 0x14], eax
mov eax, 4
mov dword [esp + 0x64], ebx
xor ebx, ebx
mov dword [esp + 0x5c], ecx
mov ecx, 4
mov dword [esp + 0xc], eax
mov eax, 0x19
mov dword [esp + 0x24], ebx
xor ebx, ebx
mov dword [esp + 0x10], edx
mov dword [esp + 8], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 4], esi
mov dword [esp], edi
call fcn.0041bd20
mov edx, dword [ebp + 0x10]
movzx eax, byte [edx + 0x56]
test al, 8
je 0x41c4ea
mov ebx, 1
test byte [edx + 0x50], 1
je 0x41c4f3
or ebx, 4
test al, 0x10
je 0x41c4fa
or ebx, 8
movzx ecx, byte [edx + 0x58]
test cl, 0x10
je 0x41c506
or ebx, 0x10
test byte [edx + 0x57], 0x10
je 0x41c50f
or ebx, 0x20
test cl, 0x20
je 0x41c517
or ebx, 0x40
test cl, 8
je 0x41c522
or ebx, 0x80
movzx ecx, byte [edx + 0x54]
test cl, 2
je 0x41c531
or ebx, 0x100
test cl, 1
je 0x41c53c
or ebx, 0x200
shr al, 5
and eax, 3
dec eax
je 0x41c755
movzx eax, byte [edx + 0x56]
shr al, 5
and eax, 3
cmp eax, 2
je 0x41c770
test byte [edx + 0x55], 8
jne 0x41c568
or ebx, 0x1000
movzx eax, byte [edx + 0x5c]
test al, 0x20
je 0x41c576
or ebx, 0x2000
test al, 0x80
je 0x41c580
or ebx, 0x4000
movzx eax, byte [edx + 0x5e]
test al, 0x40
mov byte [ebp - 0x11], al
je 0x41c591
or ebx, 0x8000
movzx eax, byte [edx + 0x5d]
test al, 0x20
je 0x41c59f
or ebx, 0x10000
test byte [edx + 0x60], 4
je 0x41c5ab
or ebx, 0x20000
test al, 0x10
je 0x41c5b5
or ebx, 0x80000
test byte [ebp - 0x11], 4
je 0x41c5c1
or ebx, 0x100000
movzx eax, byte [edx + 0x5f]
test al, 8
je 0x41c5cf
or ebx, 0x200000
movzx ecx, byte [ebp - 0x11]
test cl, 8
je 0x41c5de
or ebx, 0x400000
test al, 1
je 0x41c5e8
or ebx, 0x800000
movzx eax, byte [edx + 0x5c]
test al, 2
je 0x41c5f6
or ebx, 0x1000000
test al, 1
je 0x41c600
or ebx, 0x2000000
test cl, 2
je 0x41c60b
or ebx, 0x4000000
test cl, 0x10
je 0x41c616
or ebx, 0x8000000
test byte [ebp - 0x11], 0x80
je 0x41c622
or ebx, 0x10000000
movzx eax, byte [edx + 0x57]
test al, 8
je 0x41c630
or ebx, 0x20000000
test al, 4
je 0x41c63a
or ebx, 0x40000000
test al, 2
je 0x41c644
or ebx, 0x80000000
mov eax, dword [edx + 0x254]
mov dword [esp + 0x68], eax
mov eax, dword [edx + 0x250]
mov dword [esp + 0x64], eax
mov eax, dword [edx + 0x1d0]
mov dword [esp + 0x60], eax
mov eax, dword [edx + 0x9c]
mov dword [esp + 0x5c], eax
mov eax, dword [edx + 0x98]
mov dword [esp + 0x58], eax
mov eax, dword [edx + 0x1ac]
mov dword [esp + 0x54], eax
mov eax, dword [edx + 0x1a8]
mov dword [esp + 0x50], eax
mov eax, dword [edx + 0x1a4]
mov dword [esp + 0x4c], eax
mov eax, dword [edx + 0x1a0]
mov dword [esp + 0x48], eax
mov eax, dword [edx + 0x1b4]
mov dword [esp + 0x44], eax
mov eax, dword [edx + 0x1b0]
mov dword [esp + 0x40], eax
mov eax, dword [edx + 0x1cc]
mov dword [esp + 0x3c], eax
mov eax, dword [edx + 0x1c8]
mov dword [esp + 0x38], eax
movsx eax, word [edx + 0xd0]
mov dword [esp + 0x34], eax
mov eax, dword [edx + 0xe4]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], eax
mov eax, dword [edx + 0x1e0]
mov dword [esp + 0x28], eax
mov eax, dword [edx + 0x208]
mov dword [esp + 0x24], eax
mov eax, dword [edx + 0x204]
mov dword [esp + 0x20], eax
mov eax, dword [edx + 0x200]
mov dword [esp + 0x1c], eax
mov eax, dword [edx + 0x1fc]
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], eax
mov eax, dword [edx + 0x20]
mov dword [esp + 0x10], eax
mov eax, dword [edx + 0x18]
mov dword [esp], edi
mov dword [esp + 0xc], eax
mov eax, 0x18
mov dword [esp + 8], eax
xor eax, eax
cmp esi, 0x20000000
setne al
dec eax
and eax, 0xffffffe4
add eax, 0x20
mov dword [esp + 4], eax
call fcn.0041c280
add esp, 0xdc
pop ebx
pop esi
pop edi
pop ebp
ret
movzx eax, byte [edx + 0x56]
or ebx, 0x400
shr al, 5
and eax, 3
cmp eax, 2
jne 0x41c55c
nop
or ebx, 0x800
jmp 0x41c55c