Function at 0x408ee0
Capabilities:
Inspect section memory permissions

Disassembly:
sub esp, 8
push ebx
push esi
push edi
push 0xe8
push 3
push 0x18
xor ebx, ebx
push ebx
call fcn.00404190
mov ecx, dword [0x428574]
add esp, 0x10
cmp ch, 0x10
mov dword [esp + 0xc], eax
mov edi, 1
jne 0x408f81
mov edx, ecx
and edx, 0xf0
cmp edx, 0x20
ja 0x408f22
mov ecx, edi
jmp 0x408fab
cmp edx, 0x40
jne 0x408f38
and cl, 0xf
mov dl, 2
cmp dl, cl
sbb ecx, ecx
and ecx, 2
add ecx, 2
jmp 0x408fab
cmp edx, 0x50
jne 0x408f4e
and cl, 0xf
mov dl, 2
cmp dl, cl
sbb ecx, ecx
and ecx, 0x10
add ecx, 0x10
jmp 0x408fab
cmp edx, 0x60
jne 0x408f5a
mov ecx, 8
jmp 0x408fab
cmp edx, 0x80
jne 0x408f69
mov ecx, 0x300
jmp 0x408fab
sub edx, 0x90
neg edx
sbb edx, edx
and edx, 0x200
add edx, 0x200
jmp 0x408fa9
cmp ch, 0x11
jne 0x408f8d
mov ecx, 0x1000
jmp 0x408fab
cmp ch, 0x12
jne 0x408f99
mov ecx, 0x2000
jmp 0x408fab
xor edx, edx
cmp ch, 0x14
setne dl
sub edx, edi
and edx, 0x4000
mov ecx, edx
test ecx, 0x700
je 0x408fbd
mov ecx, eax
shr ecx, 0xd
and ecx, 4
jmp 0x408fbf
xor ecx, ecx
mov edx, eax
shr edx, 0xc
and edx, 3
add ecx, edx
mov dword [0x425b04], ecx
mov ecx, eax
push 0xa0
push 3
shr ecx, 0xe
shr eax, 0xa
and ecx, edi
and eax, edi
push 0x18
push ebx
mov dword [0x425b14], ecx
mov dword [0x428558], eax
call fcn.00404190
add esp, 0x10
cmp eax, 0xffffffff
mov dword [esp + 0xc], eax
je 0x409009
cmp eax, ebx
je 0x409009
mov esi, edi
jmp 0x40900b
xor esi, esi
mov ecx, dword [0x428574]
mov edx, eax
shr edx, 9
and edx, edi
cmp ch, 0x10
mov dword [0x428550], edx
jne 0x409146
mov ecx, eax
and ecx, 0x100
xor edx, edx
cmp ecx, 0x100
sete dl
xor ecx, ecx
and eax, 0x20000000
cmp eax, 0x20000000
sete cl
push 0x60
push ebx
push 0x18
push ebx
mov dword [0x425b18], edx
mov dword [0x42854c], edi
mov dword [0x428554], ecx
call fcn.00404190
mov ecx, dword [0x428574]
mov dword [esp + 0x1c], eax
shr eax, 0x10
and eax, 0x1f
add esp, 0x10
cmp ch, 0x10
mov dword [0x425b08], eax
jne 0x4090f4
mov eax, ecx
and eax, 0xf0
cmp eax, 0x20
ja 0x409096
mov eax, edi
jmp 0x40911c
cmp eax, 0x40
jne 0x4090ac
and cl, 0xf
mov dl, 2
cmp dl, cl
sbb eax, eax
and eax, 2
add eax, 2
jmp 0x40911c
cmp eax, 0x50
jne 0x4090c5
and cl, 0xf
mov eax, 2
cmp al, cl
sbb eax, eax
and eax, 0x10
add eax, 0x10
jmp 0x40911c
cmp eax, 0x60
jne 0x4090d1
mov eax, 8
jmp 0x40911c
cmp eax, 0x80
jne 0x4090df
mov eax, 0x300
jmp 0x40911c
sub eax, 0x90
neg eax
sbb eax, eax
and eax, 0x200
add eax, 0x200
jmp 0x40911c
cmp ch, 0x11
jne 0x409100
mov eax, 0x1000
jmp 0x40911c
cmp ch, 0x12
jne 0x40910c
mov eax, 0x2000
jmp 0x40911c
xor eax, eax
cmp ch, 0x14
setne al
sub eax, 1
and eax, 0x4000
test eax, 0x400
je 0x40919a
push 0x1f0
push 3
push 0x18
push ebx
call fcn.00404190
mov dword [esp + 0x1c], eax
shr eax, 0x14
add esp, 0x10
and eax, 0x3f
mov dword [0x42853c], eax
jmp 0x40919a
cmp ch, 0x11
jne 0x40916e
mov edx, dword [0x425b04]
xor ecx, ecx
and eax, 0x40000000
cmp eax, 0x40000000
sete cl
mov dword [0x425b08], edx
mov dword [0x42854c], ecx
jmp 0x409188
cmp ch, 0x12
je 0x409178
cmp ch, 0x14
jne 0x40919a
mov eax, dword [0x425b04]
mov dword [0x42854c], edi
mov dword [0x425b08], eax
mov dword [0x428554], edi
mov dword [0x425b14], edi
mov dword [0x425b18], ebx
push 0xd4
push 3
push 0x18
push ebx
call fcn.00404190
add esp, 0x10
cmp esi, ebx
mov dword [esp + 0xc], eax
je 0x4091c1
cmp eax, 0xffffffff
je 0x4091c1
cmp eax, ebx
je 0x4091c1
mov esi, edi
jmp 0x4091c3
xor esi, esi
mov ecx, dword [0x428574]
cmp ch, 0x10
jne 0x4091d8
and eax, 0x1f
mov dword [0x425b00], eax
jmp 0x40920e
cmp ch, 0x14
je 0x409201
cmp ch, 0x12
je 0x409201
cmp ch, 0x11
jne 0x409255
test al, 0x40
jne 0x4091f7
mov dword [0x425b00], 8
jmp 0x40920e
and eax, 0x3f
mov dword [0x425b00], eax
jmp 0x40920e
and eax, 0x3f
cmp ch, 0x11
mov dword [0x425b00], eax
jne 0x409255
push 0x88
push ebx
push 0x18
push ebx
call fcn.00404190
add esp, 0x10
cmp esi, ebx
mov dword [esp + 0xc], eax
je 0x409234
cmp eax, 0xffffffff
je 0x409234
cmp eax, ebx
je 0x409234
mov esi, edi
jmp 0x409236
xor esi, esi
cmp eax, 0xffffffff
je 0x409255
cmp eax, ebx
je 0x409255
mov ecx, eax
shr ecx, 8
and ecx, 0xf
shr eax, 0x10
mov dword [0x425af8], ecx
mov dword [0x425afc], eax
push edi
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
push 0xc0010071
call fcn.004043c0
mov eax, dword [esp + 0x20]
mov ecx, eax
and ecx, 7
mov edx, eax
shr edx, 0xa
shr eax, 3
mov dword [0x425b0c], ecx
mov ecx, dword [0x428574]
and edx, 0x7f
and eax, 0x7f
add esp, 0x10
cmp ch, 0x10
mov dword [0x428534], edx
mov dword [0x428538], eax
jne 0x409311
mov eax, ecx
and eax, 0xf0
cmp eax, 0x20
ja 0x4092b3
mov eax, edi
jmp 0x409339
cmp eax, 0x40
jne 0x4092cc
and cl, 0xf
mov eax, 2
cmp al, cl
sbb eax, eax
and eax, 2
add eax, 2
jmp 0x409339
cmp eax, 0x50
jne 0x4092e2
and cl, 0xf
mov dl, 2
cmp dl, cl
sbb eax, eax
and eax, 0x10
add eax, 0x10
jmp 0x409339
cmp eax, 0x60
jne 0x4092ee
mov eax, 8
jmp 0x409339
cmp eax, 0x80
jne 0x4092fc
mov eax, 0x300
jmp 0x409339
sub eax, 0x90
neg eax
sbb eax, eax
and eax, 0x200
add eax, 0x200
jmp 0x409339
cmp ch, 0x11
jne 0x40931d
mov eax, 0x1000
jmp 0x409339
cmp ch, 0x12
jne 0x409329
mov eax, 0x2000
jmp 0x409339
xor eax, eax
cmp ch, 0x14
setne al
sub eax, 1
and eax, 0x4000
test eax, 0x400
je 0x40934a
call fcn.00408d20
mov dword [0x425b0c], eax
push 0x4290ac
push 0x4290a8
push 0x4290a4
push 0x4290a0
push 0x80000002
call dword [0x4283e4]
push 0x4290bc
push 0x4290b8
push 0x4290b4
push 0x4290b0
push 0x80000003
call dword [0x4283e4]
push 0x4290cc
push 0x4290c8
push 0x4290c4
push 0x4290c0
push 0x80000004
call dword [0x4283e4]
mov ecx, dword [0x428574]
cmp ch, 0x10
mov byte [0x4290d1], bl
jne 0x409428
mov eax, ecx
and eax, 0xf0
cmp eax, 0x20
ja 0x4093cb
mov eax, edi
jmp 0x409450
cmp eax, 0x40
jne 0x4093e2
mov eax, ecx
and al, 0xf
mov dl, 2
cmp dl, al
sbb eax, eax
and eax, 2
add eax, 2
jmp 0x409450
cmp eax, 0x50
jne 0x4093f9
mov eax, ecx
and al, 0xf
mov dl, 2
cmp dl, al
sbb eax, eax
and eax, 0x10
add eax, 0x10
jmp 0x409450
cmp eax, 0x60
jne 0x409405
mov eax, 8
jmp 0x409450
cmp eax, 0x80
jne 0x409413
mov eax, 0x300
jmp 0x409450
sub eax, 0x90
neg eax
sbb eax, eax
and eax, 0x200
add eax, 0x200
jmp 0x409450
cmp ch, 0x11
jne 0x409434
mov eax, 0x1000
jmp 0x409450
cmp ch, 0x12
jne 0x409440
mov eax, 0x2000
jmp 0x409450
xor eax, eax
cmp ch, 0x14
setne al
sub eax, 1
and eax, 0x4000
test eax, 0x400
jne 0x40946a
cmp ch, 0x12
je 0x40946a
call fcn.00408dc0
pop edi
mov eax, esi
pop esi
pop ebx
add esp, 8
ret
mov dword [0x428560], edi
call fcn.00408dc0
cmp dword [0x428564], ebx
je 0x409493
cmp dword [0x42856c], ebx
je 0x40948d
cmp dword [0x428568], ebx
jne 0x409493
mov dword [0x428560], ebx
pop edi
mov eax, esi
pop esi
pop ebx
add esp, 8
ret