Function at 0x73e3d040
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov esi, dword [eax + 0x24]
mov ecx, esi
mov edi, dword [eax + 0x14]
push edi
mov dword [ebp - 8], esi
mov dword [ebp - 0xc], edi
call fcn.73df3810
mov dword [ebp - 4], eax
test eax, eax
je 0x73e3d6c5
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x10], 0
mov ecx, dword [eax + 0x18c]
shr ecx, 3
test cl, 1
jne 0x73e3d0bc
mov edi, dword [esi + 0x8c]
mov eax, dword [edi]
mov esi, dword [eax + 0x78]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e3d0b3
mov ecx, dword [ebp - 4]
lea eax, [ebp - 0x10]
push eax
push ebx
call fcn.73debaa0
test al, al
je 0x73e3d6c5
mov edi, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 8]
cmp byte [esi + 0x170], 0
je 0x73e3d0d9
mov ecx, dword [eax + 0x188]
test ecx, ecx
je 0x73e3d0d9
push ebx
call fcn.73e2d0a0
test eax, eax
jne 0x73e3d0ec
push dword [ebp - 0x10]
mov ecx, esi
push edi
call fcn.73df3960
test eax, eax
je 0x73e3d6c5
lea edx, [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
je 0x73e3d0f7
mov ecx, dword [eax]
mov eax, 0x112c
cmp word [ebx + 2], ax
je 0x73e3d6bc
mov eax, dword [ebx + 8]
lea esi, [ebx + 2]
add eax, ecx
movzx ecx, word [ebx]
add esi, ecx
cmp esi, eax
jae 0x73e3d6bc
mov edi, dword [ebp + 0xc]
mov ebx, 0x1012
mov edx, 0x115c
mov dword [ebp - 0xc], 0x117c
nop
movzx ecx, word [esi + 2]
cmp cx, bx
je 0x73e3d202
cmp cx, dx
jne 0x73e3d196
mov ecx, dword [esi + 4]
or dword [edi + 0x33c], 0x40000000
mov dword [edi + 0x1c8], ecx
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov dword [edi + 0x1d4], edx
mov edx, dword [edi + 0x340]
or edx, 1
mov dword [edi + 0x1d0], ecx
mov dword [edi + 0x340], edx
or edx, 2
mov ecx, dword [esi + 0x10]
mov dword [edi + 0x340], edx
or edx, 4
mov dword [edi + 0x1d8], ecx
mov ecx, dword [esi + 0x14]
mov dword [edi + 0x1dc], ecx
jmp 0x73e3d1de
cmp cx, word [ebp - 0xc]
jne 0x73e3d1e9
mov edx, dword [edi + 0x340]
mov cx, word [esi + 4]
or edx, 0x10000
mov dword [edi + 0x340], edx
or edx, 0x20000
mov word [edi + 0x2fe], cx
movzx ecx, word [esi + 0xa]
mov dword [edi + 0x340], edx
or edx, 0x40000
mov dword [edi + 0x300], ecx
mov ecx, dword [esi + 6]
mov dword [edi + 0x304], ecx
mov dword [edi + 0x340], edx
mov edx, 0x115c
movzx ecx, word [esi]
add esi, 2
add esi, ecx
cmp esi, eax
jb 0x73e3d130
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 4]
or dword [edi + 0x33c], 0x8000
mov ecx, dword [edi + 0x33c]
mov dword [edi + 0x2f0], eax
or ecx, 0x10000
movzx eax, word [esi + 0x18]
mov dword [edi + 0x33c], ecx
or ecx, 0x20000
mov dword [edi + 0x2f4], eax
mov eax, dword [esi + 0x14]
mov dword [edi + 0x33c], ecx
mov dword [edi + 0x2f8], eax
mov eax, dword [esi + 8]
or dword [edi + 0x340], 0x200000
mov dword [edi + 0x318], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 4], ecx
mov ecx, dword [edi + 0x340]
mov dword [edi + 0x31c], eax
or ecx, 0x400000
mov dword [edi + 0x340], ecx
mov dword [ebp - 0x18], ecx
mov ecx, dword [esi + 0x1a]
shl ecx, 0x16
xor ecx, dword [edi + 0x1bc]
and ecx, 0x400000
xor ecx, dword [edi + 0x1bc]
mov dword [edi + 0x1bc], ecx
or dword [edi + 0x334], 0x2000000
mov eax, dword [esi + 0x1a]
mov edx, dword [edi + 0x334]
shl eax, 0x16
or edx, 0x4000000
xor eax, ecx
and eax, 0x800000
xor eax, ecx
mov dword [edi + 0x1bc], eax
mov dword [edi + 0x334], edx
or edx, 0x8000000
mov ecx, dword [esi + 0x1a]
shl ecx, 0x16
xor ecx, eax
and ecx, 0x1000000
xor ecx, eax
mov dword [edi + 0x1bc], ecx
mov dword [edi + 0x334], edx
or edx, 0x10000000
mov eax, dword [esi + 0x1a]
shl eax, 0x16
xor eax, ecx
and eax, 0x2000000
xor eax, ecx
mov dword [edi + 0x1bc], eax
mov dword [edi + 0x334], edx
or edx, 0x20000000
mov ecx, dword [esi + 0x1a]
shl ecx, 0x16
xor ecx, eax
and ecx, 0x4000000
xor ecx, eax
mov dword [edi + 0x1bc], ecx
mov dword [edi + 0x334], edx
or edx, 0x40000000
mov eax, dword [esi + 0x1a]
shl eax, 0x15
xor eax, ecx
and eax, 0x8000000
xor eax, ecx
mov dword [edi + 0x1bc], eax
mov dword [edi + 0x334], edx
or edx, 0x80000000
mov ecx, dword [esi + 0x1a]
shl ecx, 0x13
xor ecx, eax
mov dword [ebp - 0xc], edx
and ecx, 0x10000000
xor ecx, eax
mov dword [edi + 0x1bc], ecx
mov dword [edi + 0x334], edx
mov edx, dword [esi + 0x1a]
shl edx, 0x16
xor edx, ecx
and edx, 0x20000000
xor edx, ecx
mov dword [edi + 0x1bc], edx
or dword [edi + 0x338], 1
mov eax, dword [esi + 0x1a]
mov ecx, dword [edi + 0x338]
shr eax, 2
or ecx, 0x80
xor eax, dword [edi + 0x1c0]
and eax, 8
xor eax, dword [edi + 0x1c0]
mov dword [edi + 0x1c0], eax
mov dword [edi + 0x338], ecx
or ecx, 0x40
mov ebx, dword [esi + 0x1a]
shr ebx, 8
xor ebx, eax
mov dword [ebp - 0x14], ecx
and ebx, 4
xor ebx, eax
mov dword [edi + 0x1c0], ebx
mov dword [edi + 0x338], ecx
mov eax, dword [esi + 0x1a]
shl eax, 0xc
xor eax, edx
and eax, 0x100000
xor eax, edx
mov edx, dword [ebp - 0xc]
mov dword [edi + 0x1bc], eax
or edx, 0x400000
mov dword [edi + 0x334], edx
or edx, 0x800000
mov ecx, dword [esi + 0x1a]
shl ecx, 8
xor ecx, eax
and ecx, 0x200000
xor ecx, eax
mov dword [edi + 0x1bc], ecx
mov dword [edi + 0x334], edx
mov eax, dword [esi + 0x1a]
mov edx, dword [ebp - 0x14]
shl eax, 0x13
or edx, 2
xor eax, ecx
and eax, 0x40000000
xor eax, ecx
mov dword [edi + 0x1bc], eax
mov dword [edi + 0x338], edx
or edx, 4
mov ecx, dword [esi + 0x1a]
shl ecx, 0x13
xor ecx, eax
mov eax, dword [esi + 0x1a]
shl eax, 0x13
and ecx, 0x7fffffff
xor ecx, eax
mov dword [edi + 0x338], edx
mov dword [edi + 0x1bc], ecx
mov eax, dword [esi + 0x1a]
add eax, eax
xor eax, ebx
and eax, 0x80000
xor eax, ebx
mov ebx, dword [ebp - 0x18]
mov dword [edi + 0x1c0], eax
or ebx, 8
mov dword [edi + 0x340], ebx
mov ecx, dword [esi + 0x1a]
shl ecx, 8
xor ecx, eax
and ecx, 0x8000000
xor ecx, eax
mov eax, dword [ebp - 4]
or eax, 0x10000000
mov dword [edi + 0x1c0], ecx
mov dword [edi + 0x33c], eax
mov edx, dword [esi + 0x1a]
shl edx, 8
xor edx, ecx
and edx, 0x10000000
or eax, 0x20000000
xor edx, ecx
mov dword [ebp - 4], eax
or ebx, 0x10
mov dword [edi + 0x1c0], edx
mov dword [edi + 0x33c], eax
mov eax, dword [esi + 0x1a]
shl eax, 8
xor eax, edx
mov dword [edi + 0x340], ebx
and eax, 0x20000000
or ebx, 0x200
xor eax, edx
mov dword [edi + 0x1c0], eax
mov eax, dword [esi + 0x1a]
shr eax, 0x16
xor eax, dword [edi + 0x1c4]
and eax, 2
xor eax, dword [edi + 0x1c4]
mov dword [edi + 0x1c4], eax
mov dword [edi + 0x340], ebx
or ebx, 0x1000
mov ecx, dword [esi + 0x1a]
shr ecx, 0x14
xor ecx, eax
and ecx, 0x10
xor ecx, eax
mov dword [edi + 0x1c4], ecx
mov dword [edi + 0x340], ebx
or ebx, 0x8000
mov eax, dword [esi + 0x1a]
shr eax, 0x19
and eax, 7
mov dword [edi + 0x340], ebx
mov word [edi + 0x2fc], ax
or ebx, 0x800000
mov eax, dword [esi + 0x1a]
shr eax, 0x15
xor eax, ecx
mov dword [edi + 0x340], ebx
and eax, 0x80
xor eax, ecx
mov dword [edi + 0x1c4], eax
test dword [esi + 0x1a], 0x40000
je 0x73e3d5f0
mov eax, dword [ebp - 4]
test eax, 0x40000000
jne 0x73e3d5f0
cmp byte [edi + 4], 0
je 0x73e3d5ac
mov eax, dword [edi]
mov byte [edi + 4], 0
mov ebx, dword [eax]
mov ecx, ebx
call dword [0x73f59474]
mov ecx, edi
call ebx
mov eax, dword [edi + 0x33c]
test eax, 0x40000000
jne 0x73e3d5f0
or eax, 0x40000000
mov dword [edi + 0x1c8], 0
mov dword [edi + 0x33c], eax
mov dword [edi + 0x1d0], 0
mov dword [edi + 0x1d4], 0
mov dword [edi + 0x1d8], 0
mov dword [edi + 0x1dc], 0
or dword [edi + 0x340], 7
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x90]
mov dword [ebp - 0x18], eax
mov eax, dword [eax]
mov ebx, dword [eax + 0xac]
mov ecx, ebx
call dword [0x73f59474]
mov ecx, dword [ebp - 0x18]
call ebx
movzx eax, ax
cmp eax, 0x14c
jne 0x73e3d622
mov ebx, 7
jmp 0x73e3d666
cmp eax, 0x8664
jne 0x73e3d630
mov ebx, 0xd0
jmp 0x73e3d666
cmp eax, 0xaa64
jne 0x73e3d63e
mov ebx, 0xf6
jmp 0x73e3d666
cmp eax, 0xa64e
jne 0x73e3d64c
mov ebx, 0xf9
jmp 0x73e3d666
cmp eax, 0x1c4
jne 0x73e3d65a
mov ebx, 0xf4
jmp 0x73e3d666
cmp eax, 0x3a64
jne 0x73e3d6bc
mov ebx, 0xf7
movzx eax, word [esi + 0x1c]
and eax, 3
push eax
push ebx
call fcn.73e32790
movzx eax, ax
add esp, 8
test ax, ax
je 0x73e3d690
or dword [edi + 0x338], 0x80000
mov word [edi + 0x28c], ax
mov eax, dword [esi + 0x1a]
shr eax, 0xe
and eax, 3
push eax
push ebx
call fcn.73e32790
movzx eax, ax
add esp, 8
test ax, ax
je 0x73e3d6bc
or dword [edi + 0x338], 0x100000
mov word [edi + 0x28e], ax
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret