Function at 0x40beb0
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
push esi
push edi
mov edi, dword [esp + 0x14]
mov eax, dword [edi + 0x234]
cmp eax, 1
jle 0x40becb
add eax, 5
mov dword [edi + 0x234], eax
mov eax, dword [edi + 0x234]
mov esi, dword [esp + 0x10]
mov dword [esi + 0x15c], eax
mov eax, dword [edi + 0x26c]
cmp eax, 0xffffffff
jne 0x40beea
or eax, eax
jmp 0x40beeb
dec eax
mov dword [esi + 0x1a0], eax
movzx ecx, word [edi + 0x27c]
mov word [esi + 0x1c2], cx
mov dx, word [edi + 0x280]
xor ebp, ebp
mov word [esi + 0x1c0], dx
mov ax, word [edi + 0x260]
inc ax
mov word [esi + 0x1ba], ax
movzx ecx, word [edi + 0x264]
mov word [esi + 0x1bc], cx
mov edx, dword [edi + 0x238]
mov dword [esi + 0x160], edx
mov dword [esi + 0x164], ebp
mov dword [esi + 0x168], ebp
mov dword [esi + 0x16c], ebp
mov dword [esi + 0x170], ebp
mov dword [esi + 0x174], ebp
mov dword [esi + 0x178], ebp
mov dword [esi + 0x17c], ebp
mov dword [esi + 0x180], ebp
mov dword [esi + 0x184], ebp
mov dword [esi + 0x188], ebp
mov dword [esi + 0x18c], ebp
mov dword [esi + 0x190], ebp
mov dword [esi + 0x194], ebp
mov dword [esi + 0x198], ebp
mov dword [esi + 0x19c], ebp
cmp dword [edi + 0x318], ebp
je 0x40bfa5
mov dword [esi + 0x164], 1
cmp dword [edi + 0x31c], ebp
je 0x40bfb7
mov dword [esi + 0x168], 0x8000000
cmp dword [edi + 0x324], ebp
je 0x40bfc9
mov dword [esi + 0x16c], 4
mov ecx, 8
cmp dword [edi + 0x328], ebp
je 0x40bfdc
mov dword [esi + 0x174], ecx
cmp dword [edi + 0x32c], ebp
je 0x40bfee
mov dword [esi + 0x17c], 0x20000
cmp dword [edi + 0x330], ebp
je 0x40c000
or dword [esi + 0x17c], 0x80000000
cmp dword [edi + 0x334], ebp
je 0x40c012
mov dword [esi + 0x184], 0x200
cmp dword [edi + 0x338], ebp
je 0x40c024
or dword [esi + 0x17c], 0x200000
push ebx
mov ebx, 0x8000
cmp dword [edi + 0x33c], ebp
je 0x40c038
mov dword [esi + 0x178], ebx
cmp dword [edi + 0x340], ebp
je 0x40c04a
or dword [esi + 0x178], 0x4000
cmp dword [edi + 0x344], ebp
je 0x40c05c
or dword [esi + 0x16c], 0x400
cmp dword [edi + 0x348], ebp
je 0x40c06e
mov dword [esi + 0x170], 0x40000000
mov eax, 0x40
cmp dword [edi + 0x34c], ebp
je 0x40c081
or dword [esi + 0x178], eax
cmp dword [edi + 0x350], ebp
je 0x40c093
or dword [esi + 0x178], 0x80000
cmp dword [edi + 0x3a0], ebp
je 0x40c0a2
or dword [esi + 0x16c], 0x10
cmp dword [edi + 0x3a4], ebp
je 0x40c0b0
mov dword [esi + 0x190], eax
cmp dword [edi + 0x364], ebp
je 0x40c0be
or dword [esi + 0x164], ecx
mov ecx, 0x10000
cmp dword [edi + 0x368], ebp
je 0x40c0d1
mov dword [esi + 0x18c], ecx
mov eax, 0x4000000
cmp dword [edi + 0x398], ebp
je 0x40c0e4
or dword [esi + 0x168], eax
cmp dword [edi + 0x320], ebp
je 0x40c0f2
or dword [esi + 0x170], eax
cmp dword [edi + 0x354], ebp
je 0x40c100
or dword [esi + 0x16c], ecx
cmp dword [edi + 0x358], ebp
je 0x40c112
or dword [esi + 0x17c], 0x2000
mov ecx, 0x2000000
cmp dword [edi + 0x35c], ebp
je 0x40c125
or dword [esi + 0x178], ecx
mov edx, 0x1000000
cmp dword [edi + 0x360], ebp
je 0x40c138
mov dword [esi + 0x180], edx
cmp dword [edi + 0x36c], ebp
je 0x40c14a
or dword [esi + 0x16c], 0x400000
cmp dword [edi + 0x370], ebp
je 0x40c159
or dword [esi + 0x174], 4
cmp dword [edi + 0x374], ebp
je 0x40c167
or dword [esi + 0x174], eax
mov eax, 0x800000
cmp dword [edi + 0x378], ebp
je 0x40c17a
or dword [esi + 0x180], eax
cmp dword [edi + 0x37c], ebp
je 0x40c189
or dword [esi + 0x184], 2
cmp dword [edi + 0x380], ebp
je 0x40c19b
mov dword [esi + 0x188], 0x10000
cmp dword [edi + 0x384], ebp
je 0x40c1a9
or dword [esi + 0x188], ecx
cmp dword [edi + 0x388], ebp
je 0x40c1b7
or dword [esi + 0x190], ebx
cmp dword [edi + 0x38c], ebp
je 0x40c1c6
or dword [esi + 0x174], 0x40
cmp dword [edi + 0x390], ebp
je 0x40c1d5
or dword [esi + 0x18c], 0x40
cmp dword [edi + 0x394], ebp
je 0x40c1e7
or dword [esi + 0x184], 0x10000
cmp dword [edi + 0x8b8], ebp
je 0x40c1f9
or dword [esi + 0x16c], 0x40000000
cmp dword [edi + 0x8bc], ebp
je 0x40c207
or dword [esi + 0x16c], eax
cmp dword [edi + 0x8c0], ebp
je 0x40c215
or dword [esi + 0x16c], edx
mov eax, dword [edi + 0x39c]
sub eax, 1
je 0x40c23e
sub eax, 1
je 0x40c236
sub eax, 1
jne 0x40c248
or dword [esi + 0x190], 0x80000
jmp 0x40c248
or dword [esi + 0x17c], ebx
jmp 0x40c248
or dword [esi + 0x168], 0x20000000
mov eax, dword [edi + 0x23c]
dec eax
cmp eax, 3
ja case.default.0x40c254
jmp dword [eax*4 + 0x40dda0]
or dword [esi + 0x168], 0x20
jmp case.default.0x40c254
or dword [esi + 0x168], 0x80
jmp case.default.0x40c254
or dword [esi + 0x17c], 0x400
jmp case.default.0x40c254
or dword [esi + 0x17c], 0x800
mov eax, dword [edi + 0x244]
sub eax, 1
mov edx, 0x40000
mov ecx, 0x100000
je 0x40c2b5
sub eax, 1
je 0x40c2ad
sub eax, 1
jne 0x40c2bb
or dword [esi + 0x178], edx
jmp 0x40c2bb
or dword [esi + 0x16c], ebx
jmp 0x40c2bb
or dword [esi + 0x168], ecx
mov eax, dword [edi + 0x898]
cmp eax, 3
ja case.default.0x40c2c6
jmp dword [eax*4 + 0x40ddb0]
or dword [esi + 0x170], 0x400000
jmp case.default.0x40c2c6
or dword [esi + 0x170], 0x800000
jmp case.default.0x40c2c6
or dword [esi + 0x170], 0x200000
jmp case.default.0x40c2c6
or dword [esi + 0x170], 0xc00000
mov eax, dword [edi + 0x248]
sub eax, 1
je 0x40c317
sub eax, 1
jne 0x40c321
or dword [esi + 0x168], 0x80000
jmp 0x40c321
or dword [esi + 0x164], 0x4000
mov eax, dword [edi + 0x24c]
sub eax, 1
je 0x40c352
sub eax, 1
je 0x40c349
sub eax, 1
jne 0x40c35c
or dword [esi + 0x164], 4
or dword [esi + 0x180], 0x80
jmp 0x40c35c
or dword [esi + 0x164], 4
jmp 0x40c35c
or dword [esi + 0x164], 0x10000
mov eax, dword [edi + 0x250]
sub eax, 1
je 0x40c378
sub eax, 1
jne 0x40c382
or dword [esi + 0x16c], 0x80000
jmp 0x40c382
or dword [esi + 0x16c], 0x200000
mov eax, dword [edi + 0x254]
dec eax
cmp eax, 3
ja case.default.0x40c38e
jmp dword [eax*4 + 0x40ddc0]
or dword [esi + 0x174], 0x2000
jmp case.default.0x40c38e
or dword [esi + 0x174], 0x4000
jmp case.default.0x40c38e
or dword [esi + 0x174], ebx
jmp case.default.0x40c38e
or dword [esi + 0x174], 0x10000
mov eax, dword [edi + 0x258]
sub eax, 1
je 0x40c3e8
sub eax, 1
je 0x40c3dc
sub eax, 1
jne 0x40c3ef
or dword [esi + 0x174], ecx
jmp 0x40c3ef
or dword [esi + 0x174], 0x200000
jmp 0x40c3ef
or dword [esi + 0x170], 2
mov eax, dword [edi + 0x25c]
cmp eax, 3
ja case.default.0x40c3fa
jmp dword [eax*4 + 0x40ddd0]
or dword [esi + 0x184], 8
jmp case.default.0x40c3fa
or dword [esi + 0x184], 4
jmp case.default.0x40c3fa
or dword [esi + 0x184], 0x400
jmp case.default.0x40c3fa
or dword [esi + 0x188], 0x20000000
mov eax, dword [edi + 0x268]
dec eax
cmp eax, 3
ja case.default.0x40c435
jmp dword [eax*4 + 0x40dde0]
mov dword [esi + 0x194], reloc.dxwnd.dll_Ordinal_1
jmp case.default.0x40c435
mov dword [esi + 0x194], 1
jmp case.default.0x40c435
mov dword [esi + 0x194], 0x11
jmp case.default.0x40c435
mov dword [esi + 0x194], 0x21
mov eax, dword [edi + 0x270]
sub eax, 1
mov ecx, 0x10000000
je 0x40c4a8
sub eax, 1
je 0x40c496
sub eax, 1
jne 0x40c4b2
or dword [esi + 0x164], 0x20000000
or dword [esi + 0x17c], ecx
jmp 0x40c4b2
or dword [esi + 0x164], 0x20000000
or dword [esi + 0x168], edx
jmp 0x40c4b2
or dword [esi + 0x164], 0x20000000
mov eax, dword [edi + 0x864]
sub eax, 1
je 0x40c4cb
sub eax, 1
jne 0x40c4d2
or dword [esi + 0x180], 8
jmp 0x40c4d2
or dword [esi + 0x180], 4
mov eax, dword [edi + 0x868]
sub eax, 1
je 0x40c4ee
sub eax, 1
jne 0x40c4f5
or dword [esi + 0x164], 0x80
jmp 0x40c4f5
or dword [esi + 0x180], 0x10
mov eax, dword [edi + 0x86c]
sub eax, 1
je 0x40c50e
sub eax, 1
jne 0x40c515
or dword [esi + 0x180], 2
jmp 0x40c515
or dword [esi + 0x180], 1
mov eax, dword [edi + 0x8a4]
sub eax, 1
je 0x40c531
sub eax, 1
jne 0x40c53b
or dword [esi + 0x164], 0x800
jmp 0x40c53b
or dword [esi + 0x16c], 0x2000
mov eax, dword [edi + 0x8a8]
sub eax, 1
je 0x40c557
sub eax, 1
jne 0x40c561
or dword [esi + 0x188], 0x4000
jmp 0x40c561
or dword [esi + 0x188], 0x2000
mov eax, dword [edi + 0x8b0]
sub eax, 1
mov edx, 0x1000
je 0x40c57e
sub eax, 1
jne 0x40c588
or dword [esi + 0x180], edx
jmp 0x40c588
or dword [esi + 0x180], 0x200
mov eax, dword [edi + 0x274]
sub eax, 1
je 0x40c5b2
sub eax, 1
je 0x40c5a6
sub eax, 1
jne 0x40c5b9
or dword [esi + 0x184], 1
jmp 0x40c5b9
or dword [esi + 0x164], 0x2000
jmp 0x40c5b9
or dword [esi + 0x168], 8
mov eax, dword [edi + 0x8b4]
sub eax, 1
je 0x40c5d5
sub eax, 1
jne 0x40c5df
or dword [esi + 0x168], 0x4000
jmp 0x40c5df
or dword [esi + 0x168], 0x200000
mov eax, dword [edi + 0x278]
sub eax, 1
je 0x40c5fb
sub eax, 1
jne 0x40c605
or dword [esi + 0x184], 0x80000
jmp 0x40c605
or dword [esi + 0x174], 0x40000000
mov eax, dword [edi + 0x8a0]
sub eax, 1
je 0x40c62c
sub eax, 1
je 0x40c623
sub eax, 1
jne 0x40c633
or dword [esi + 0x188], 4
jmp 0x40c633
or dword [esi + 0x188], 2
jmp 0x40c633
or dword [esi + 0x188], 1
mov eax, dword [edi + 0x8c4]
sub eax, 1
je 0x40c64f
sub eax, 1
jne 0x40c659
or dword [esi + 0x174], 0x2000000
jmp 0x40c659
or dword [esi + 0x174], 0x1000000
mov eax, dword [edi + 0x288]
sub eax, 1
je 0x40c675
sub eax, 1
jne 0x40c67c
or dword [esi + 0x174], 0x400000
jmp 0x40c67c
or dword [esi + 0x17c], 2
cmp dword [edi + 0x240], ebp
je 0x40c68e
or dword [esi + 0x174], 0x400
cmp dword [edi + 0x28c], ebp
je 0x40c69d
or dword [esi + 0x164], 0x10
cmp dword [edi + 0x290], ebp
je 0x40c6af
or dword [esi + 0x164], 0x200
cmp dword [edi + 0x294], ebp
je 0x40c6c1
or dword [esi + 0x178], 0x80000000
cmp dword [edi + 0x298], ebp
je 0x40c6d3
or dword [esi + 0x178], 0x800000
cmp dword [edi + 0x29c], ebp
je 0x40c6e5
or dword [esi + 0x17c], 0x4000
cmp dword [edi + 0x2a0], ebp
je 0x40c6f7
or dword [esi + 0x17c], 0x10000
cmp dword [edi + 0x2a4], ebp
je 0x40c709
or dword [esi + 0x17c], 0x100000
cmp dword [edi + 0x2a8], ebp
je 0x40c718
or dword [esi + 0x164], 0x20
cmp dword [edi + 0x2ac], ebp
je 0x40c72a
or dword [esi + 0x178], 0x8000000
cmp dword [edi + 0x2b0], ebp
je 0x40c73c
or dword [esi + 0x184], 0x2000
cmp dword [edi + 0x2b4], ebp
je 0x40c74a
or dword [esi + 0x178], ecx
mov eax, 0x100
cmp dword [edi + 0x2b8], ebp
je 0x40c75d
or dword [esi + 0x194], eax
cmp dword [edi + 0x2bc], ebp
je 0x40c76c
or dword [esi + 0x194], 8
cmp dword [edi + 0x2cc], ebp
je 0x40c77e
or dword [esi + 0x194], 0x40000000
cmp dword [edi + 0x2c0], ebp
je 0x40c790
or dword [esi + 0x194], 0x20000000
cmp dword [edi + 0x2c4], ebp
je 0x40c7a2
or dword [esi + 0x194], 0x8000000
cmp dword [edi + 0x2c8], ebp
je 0x40c7b0
or dword [esi + 0x194], ecx
cmp dword [edi + 0x2d0], ebp
je 0x40c7bf
or dword [esi + 0x194], 4
cmp dword [edi + 0x2d4], ebp
je 0x40c7cd
or dword [esi + 0x194], edx
cmp dword [edi + 0x2d8], ebp
je 0x40c7df
or dword [esi + 0x194], 0x4000
cmp dword [edi + 0x2dc], ebp
je 0x40c7ed
or dword [esi + 0x194], ebx
cmp dword [edi + 0x2e0], ebp
je 0x40c7ff
or dword [esi + 0x194], 0x10000
cmp dword [edi + 0x2e4], ebp
je 0x40c811
or dword [esi + 0x194], 0x20000
cmp dword [edi + 0x2e8], ebp
je 0x40c823
or dword [esi + 0x194], 0x40000
cmp dword [edi + 0x2ec], ebp
je 0x40c835
or dword [esi + 0x194], 0x80000
cmp dword [edi + 0x2f0], ebp
je 0x40c847
or dword [esi + 0x194], 0x200000
cmp dword [edi + 0x2f4], ebp
je 0x40c859
or dword [esi + 0x194], 0x100000
cmp dword [edi + 0x2f8], ebp
je 0x40c86b
or dword [esi + 0x194], 0x2000
cmp dword [edi + 0x300], ebp
je 0x40c87a
or dword [esi + 0x194], 2
cmp dword [edi + 0x2fc], ebp
je 0x40c88c
or dword [esi + 0x194], 0x800
cmp dword [edi + 0x304], ebp
je 0x40c89b
or dword [esi + 0x194], 0x40
cmp dword [edi + 0x308], ebp
je 0x40c8ad
mov dword [esi + 0x198], 0x8000000
cmp dword [edi + 0x30c], ebp
je 0x40c8bf
or dword [esi + 0x194], 0x80
cmp dword [edi + 0x310], ebp
je 0x40c8d1
or dword [esi + 0x194], 0x200
cmp dword [edi + 0x314], ebp
je 0x40c8e3
or dword [esi + 0x194], 0x400
cmp dword [edi + 0x590], ebp
je 0x40c8f2
or dword [esi + 0x164], 0x40
cmp dword [edi + 0x594], ebp
je 0x40c904
or dword [esi + 0x180], 0x4000000
cmp dword [edi + 0x598], ebp
je 0x40c913
or dword [esi + 0x18c], 4
cmp dword [edi + 0x59c], ebp
je 0x40c921
or dword [esi + 0x184], eax
cmp dword [edi + 0x6b8], ebp
je 0x40c92f
or dword [esi + 0x168], ecx
cmp dword [edi + 0x6bc], ebp
je 0x40c941
or dword [esi + 0x16c], 0x800
cmp dword [edi + 0x6c0], ebp
je 0x40c953
or dword [esi + 0x170], 0x80000000
cmp dword [edi + 0x6c4], ebp
je 0x40c962
or dword [esi + 0x188], 0x20
cmp dword [edi + 0x6c8], ebp
je 0x40c971
or dword [esi + 0x188], 0x40
cmp dword [edi + 0x6cc], ebp
je 0x40c983
or dword [esi + 0x178], 0x20000000
cmp dword [edi + 0x6d0], ebp
je 0x40c995
or dword [esi + 0x178], 0x40000000
cmp dword [edi + 0x6d4], ebp
je 0x40c9a7
or dword [esi + 0x16c], 0x20000
cmp dword [edi + 0x6d8], ebp
je 0x40c9b9
or dword [esi + 0x16c], 0x100000
cmp dword [edi + 0x6dc], ebp
je 0x40c9c8
or dword [esi + 0x170], 0x10
cmp dword [edi + 0x6e0], ebp
je 0x40c9d7
or dword [esi + 0x170], 0x20
cmp dword [edi + 0x6e4], ebp
je 0x40c9e9
or dword [esi + 0x180], 0x20000
cmp dword [edi + 0x6e8], ebp
je 0x40c9fb
or dword [esi + 0x180], 0x8000000
cmp dword [edi + 0x6ec], ebp
je 0x40ca0d
or dword [esi + 0x198], 0x1000000
cmp dword [edi + 0x6f0], ebp
je 0x40ca1f
or dword [esi + 0x198], 0x2000000
cmp dword [edi + 0x6f4], ebp
je 0x40ca31
or dword [esi + 0x198], 0x4000000
cmp dword [edi + 0x6f8], ebp
je 0x40ca43
or dword [esi + 0x198], 0x200000
cmp dword [edi + 0x6fc], ebp
je 0x40ca55
mov dword [esi + 0x19c], 2
cmp dword [edi + 0x700], ebp
je 0x40ca64
or dword [esi + 0x19c], 4
cmp dword [edi + 0x704], ebp
je 0x40ca72
or dword [esi + 0x170], eax
cmp dword [edi + 0x708], ebp
je 0x40ca84
or dword [esi + 0x170], 0x200
cmp dword [edi + 0x70c], ebp
je 0x40ca96
or dword [esi + 0x170], 0x80
cmp dword [edi + 0x710], ebp
je 0x40caa5
or dword [esi + 0x174], 2
cmp dword [edi + 0x714], ebp
je 0x40cab3
or dword [esi + 0x178], eax
cmp dword [edi + 0x718], ebp
je 0x40cac5