Function at 0xfac31d
Capabilities:
Inspect section memory permissions

Disassembly:
push 0x84
mov eax, 0xfd7475
call fcn.00fa1e50
mov dword [ebp - 0x28], ecx
mov esi, dword [fcn.00fa1290]
lea eax, [ebp - 0x80]
xor edi, edi
push eax
mov dword [ebp - 0x30], edi
call esi
lea eax, [ebp - 0x90]
push eax
call esi
mov esi, dword [ebp + 0x10]
mov eax, dword [esi]
lea ecx, [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp - 0x80]
push ecx
push edi
push 0xfaced0
push esi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x38], edi
call dword [eax + 0x10]
cmp eax, edi
jl 0xfac422
cmp word [ebp - 0x80], 8
jne 0xfbb72d
mov eax, dword [esi]
lea ecx, [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp - 0x90]
push ecx
push edi
push 0xfaceb8
push esi
call dword [eax + 0x10]
cmp eax, edi
jl 0xfac422
cmp word [ebp - 0x90], 8
jne 0xfbb72d
lea eax, [ebp - 0x10]
push eax
mov esi, 0x7fffffff
push esi
push dword [ebp - 0x78]
call fcn.00faceed
cmp eax, edi
jl 0xfac422
lea eax, [ebp - 0x2c]
push eax
push esi
push dword [ebp - 0x88]
call fcn.00faceed
cmp eax, edi
jl 0xfac422
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x2c]
lea esi, [ecx + eax + 2]
push esi
push edi
call dword [0xfa12a4]
mov ebx, eax
mov dword [ebp - 0x30], ebx
cmp ebx, edi
je 0xfbb721
push dword [ebp - 0x78]
push esi
push ebx
call fcn.00fa8981
cmp eax, edi
jl 0xfac422
push 0xfacecc
push esi
push ebx
call fcn.00fac2a5
cmp eax, edi
jl 0xfac422
push dword [ebp - 0x88]
push esi
push ebx
call fcn.00fac2a5
mov dword [ebp - 0x10], eax
mov esi, dword [fcn.00fa128c]
lea eax, [ebp - 0x80]
push eax
call esi
lea eax, [ebp - 0x90]
push eax
call esi
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov ecx, dword [ebp + 0xc]
and ecx, 0x400
xor eax, eax
or eax, ecx
push 1
pop esi
je 0xfac4b1
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp - 0x2c]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4dc]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp - 0x2c], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3b9e
cmp word [ebp - 0x24], 3
je 0xfbb710
cmp word [ebp - 0x24], si
jne 0xfb3b92
mov eax, dword [ebp - 0x28]
mov dword [eax + 0x650], esi
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov ecx, dword [ebp + 0xc]
and ecx, 0x1000
xor eax, eax
or eax, ecx
je 0xfac538
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x2c]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb494]
mov dword [ebp - 0x2c], edi
push eax
mov dword [ebp - 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3bba
cmp word [ebp - 0x24], 8
jne 0xfb3bae
mov esi, dword [ebp - 0x28]
add esi, 0x6ac
mov eax, dword [esi]
cmp eax, edi
jne 0xfbb741
push dword [ebp - 0x1c]
call dword [fcn.00fa1288]
mov dword [esi], eax
cmp eax, edi
je 0xfbb74d
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x40000000
xor ecx, ecx
or eax, ecx
je 0xfac5ae
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x2c]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4d8]
mov dword [ebp - 0x2c], edi
push eax
mov dword [ebp - 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3bd6
xor eax, eax
cmp word [ebp - 0x24], 0xb
je 0xfbb761
inc eax
cmp word [ebp - 0x24], ax
jne 0xfb3bca
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x66c], eax
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
mov ebx, dword [0xfa12b0]
and eax, 4
xor ecx, ecx
or eax, ecx
je 0xfb3bf2
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x2c]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb48c]
mov dword [ebp - 0x2c], edi
push eax
mov dword [ebp - 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfbb79c
cmp word [ebp - 0x24], 8
jne 0xfbb776
mov esi, dword [ebp - 0x28]
lea eax, [esi + 0x6b0]
push eax
push dword [ebp - 0x1c]
call ebx
test eax, eax
jl 0xfb3be6
push dword [esi + 0x6d4]
lea ecx, [esi + 8]
push dword [ebp + 0x14]
push dword [ebp - 0x1c]
call fcn.00fad366
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 8
xor ecx, ecx
or eax, ecx
je 0xfac6c4
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb490]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3c06
cmp word [ebp - 0x24], 8
je 0xfb3ad8
cmp word [ebp - 0x24], 1
jne 0xfb3bfa
mov edi, dword [ebp - 0x28]
add edi, 0x6c0
mov esi, 0xfa8c80
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x28]
xor edi, edi
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x10
xor ecx, ecx
or eax, ecx
je 0xfac743
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb498]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3c22
cmp word [ebp - 0x24], 8
je 0xfbb7b6
cmp word [ebp - 0x24], 1
jne 0xfb3c16
mov esi, dword [ebp - 0x28]
add esi, 0x680
mov eax, dword [esi]
cmp eax, edi
jne 0xfbb7eb
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
mov esi, dword [ebp - 0x28]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x20
xor ecx, ecx
or eax, ecx
je 0xfac7c2
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb49c]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3c56
cmp word [ebp - 0x24], 8
je 0xfb3af4
cmp word [ebp - 0x24], 1
jne 0xfb3c4a
mov esi, dword [ebp - 0x28]
add esi, 0x690
mov eax, dword [esi]
cmp eax, edi
jne 0xfbb80d
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
mov esi, dword [ebp - 0x28]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x40
xor ecx, ecx
or eax, ecx
je 0xfac83c
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4a0]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3c76
cmp word [ebp - 0x24], 3
jne 0xfb3c66
mov eax, dword [ebp - 0x1c]
sub eax, edi
je 0xfb3b87
dec eax
jne 0xfbb823
mov dword [esi + 0x654], 1
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x4000000
xor ecx, ecx
or eax, ecx
je 0xfac8af
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4c8]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3c92
xor eax, eax
cmp word [ebp - 0x24], 0xb
je 0xfbb844
inc eax
cmp word [ebp - 0x24], ax
jne 0xfb3c86
mov dword [esi + 0x698], eax
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x80000000
xor ecx, ecx
or eax, ecx
je 0xfac920
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4c0]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3cae
cmp word [ebp - 0x24], 0xb
je 0xfbb859
cmp word [ebp - 0x24], 1
jne 0xfb3ca2
mov dword [esi + 0x670], edi
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x20000000
xor ecx, ecx
or eax, ecx
je 0xfac991
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4d4]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3cca
cmp word [ebp - 0x24], 0xb
je 0xfbb876
cmp word [ebp - 0x24], 1
jne 0xfb3cbe
mov dword [esi + 0x668], edi
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x8000000
xor ecx, ecx
or eax, ecx
je 0xfaca0a
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4cc]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3ce6
cmp word [ebp - 0x24], 8
je 0xfbb893
cmp word [ebp - 0x24], 1
jne 0xfb3cda
mov eax, dword [esi + 0x69c]
cmp eax, edi
jne 0xfbb936
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x10000000
xor ecx, ecx
or eax, ecx
je 0xfaca83
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4d0]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3d02
cmp word [ebp - 0x24], 8
je 0xfbb950
cmp word [ebp - 0x24], 1
jne 0xfb3cf6
mov eax, dword [esi + 0x688]
cmp eax, edi
jne 0xfbb9f3
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x1000000
xor ecx, ecx
or eax, ecx
je 0xfacaf4
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4bc]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3d1e
cmp word [ebp - 0x24], 0xb
je 0xfbba0d
cmp word [ebp - 0x24], 1
jne 0xfb3d12
mov dword [esi + 0x6a4], edi
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x2000000
xor ecx, ecx
or eax, ecx
je 0xfacb54
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4c4]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jge 0xfbba2a
cmp eax, 0x80041002
jne 0xfbba5d
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x80
xor ecx, ecx
or eax, ecx
je 0xfacbc5
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4a4]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3d2e
cmp word [ebp - 0x24], 3
jne 0xfbba89
mov eax, dword [ebp - 0x1c]
sub eax, edi
jne 0xfbba65
mov dword [esi + 0x658], edi
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x100
xor ecx, ecx
or eax, ecx
je 0xfacc36
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4a8]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3d4a
cmp word [ebp - 0x24], 0xb
je 0xfbbab1
cmp word [ebp - 0x24], 1
jne 0xfb3d3e
mov dword [esi + 0x65c], edi
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x200
xor ecx, ecx
or eax, ecx
je 0xfacca6
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4ac]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3d5a
cmp word [ebp - 0x24], 0xb
jne 0xfbbace
xor eax, eax
cmp word [ebp - 0x1c], 0xffff
sete al
mov dword [esi + 0x660], eax
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x400
xor ecx, ecx
or eax, ecx
je 0xfacd16
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4b0]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3d6a
cmp word [ebp - 0x24], 0xb
jne 0xfbbaf4
xor eax, eax
cmp word [ebp - 0x1c], 0xffff
sete al
mov dword [esi + 0x664], eax
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
mov ebx, 0x800
and eax, ebx
xor ecx, ecx
or eax, ecx
je 0xfacd88
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4b4]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3d8a
xor eax, eax
cmp word [ebp - 0x24], 0xb
jne 0xfb3d7a
cmp word [ebp - 0x1c], 0xffff
sete al
mov dword [esi + 0x674], eax
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [ebp + 8]
and eax, 0x1000
xor ecx, ecx
or eax, ecx
je 0xface13
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4b8]
mov dword [ebp - 0x14], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfbbb41
cmp word [ebp - 0x24], 8
jne 0xfbbb2e
push dword [ebp - 0x30]
lea eax, [esi + 0x684]
push eax
lea eax, [esi + 0x67c]
push eax
lea eax, [esi + 0x678]
push eax
push dword [ebp - 0x1c]
call fcn.00fad65d
cmp eax, edi
mov dword [ebp - 0x10], eax
jl 0xfbbb35
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov eax, dword [esi + 0x678]
cmp eax, 4
je 0xface35
cmp eax, 0xa
je 0xface35
cmp dword [esi + 0x28], edi
je 0xfbbb98
cmp dword [ebp - 0x10], edi
jl 0xface9f
mov ecx, dword [ebp + 0xc]
and ecx, ebx
xor eax, eax
or eax, ecx
je 0xface9f
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa1290]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
lea edx, [ebp + 0x14]
push edx
lea edx, [ebp + 0xc]
push edx
lea edx, [ebp - 0x24]
push edx
push edi
push dword [0xfdb4e0]
mov dword [ebp + 0xc], edi
push eax
mov dword [ebp + 0x14], edi
call dword [ecx + 0x10]
cmp eax, edi
jl 0xfb3da6
cmp word [ebp - 0x24], 8
je 0xfbbba4
cmp word [ebp - 0x24], 1
jne 0xfb3d9a
mov dword [esi + 0x6e0], edi
lea eax, [ebp - 0x24]
push eax
call dword [fcn.00fa128c]
cmp dword [ebp - 0x30], edi
je 0xfacead
push dword [ebp - 0x30]
call dword [fcn.00fa1284]
mov eax, dword [ebp - 0x10]
call fcn.00fa1e90
ret 0x10
lea eax, [esi + 0x6c0]
push eax
push dword [ebp - 0x1c]
call ebx
cmp eax, edi
mov dword [ebp - 0x10], eax
jge 0xfac6ba
jmp 0xfb3bfa
mov eax, dword [esi + 0x690]
cmp eax, edi
jne 0xfbb801
push dword [ebp - 0x1c]
call dword [fcn.00fa1288]
mov dword [esi + 0x690], eax
cmp eax, edi
je 0xfb3c3e
lea ecx, [ebp - 0x70]
call fcn.00fade6b
mov dword [ebp - 4], edi
push dword [esi + 0x690]
lea ecx, [ebp - 0x70]
call fcn.00fad9e1
test eax, eax
jl 0xfb3c32
cmp word [ebp - 0x5c], 0xffff
mov dword [ebp - 0x10], edi
jne 0xfb3c32
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x40]
imul ecx, ecx, 0x18
add ecx, dword [ebp - 0x4c]
cdq
mov ebx, 0x3e8
imul ecx, ecx, 0x3c
add ecx, dword [ebp - 0x48]
idiv ebx
imul ecx, ecx, 0x3c
add ecx, dword [ebp - 0x44]
imul ecx, ecx, 0x3e8
add ecx, eax
mov dword [esi + 0x694], ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x70]
call fcn.00fad99f
jmp 0xfac7b5
mov dword [esi + 0x654], edi
jmp 0xfac832
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac4a7
cmp eax, 0x80041002
jne 0xfbb739
jmp 0xfac4a7
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac52e
cmp eax, 0x80041002
jne 0xfbb759
jmp 0xfac52e
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac5a4
cmp eax, 0x80041002
jne 0xfbb76e
jmp 0xfac5a4
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac63a
mov esi, dword [ebp - 0x28]
jmp 0xfac644
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac6ba
cmp eax, 0x80041002
jne 0xfbb7ae
jmp 0xfac6ba
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac736
cmp eax, 0x80041002
jne 0xfbb7f9
jmp 0xfac736
mov dword [ebp - 0x10], 0x80041012
jmp 0xfb3b76
mov dword [ebp - 0x10], 0x80041006
jmp 0xfac7b5
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac7b5
cmp eax, 0x80041002
jne 0xfbb81b
jmp 0xfac7b5
cmp word [ebp - 0x24], 1
je 0xfb3b87
jmp 0xfbb830
cmp eax, 0x80041002
jne 0xfbb83c
jmp 0xfac832
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac8a5
cmp eax, 0x80041002
jne 0xfbb851
jmp 0xfac8a5
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac916
cmp eax, 0x80041002
jne 0xfbb86e
jmp 0xfac916
mov dword [ebp - 0x10], 0x80041012
jmp 0xfac987
cmp eax, 0x80041002
jne 0xfbb88b
jmp 0xfac987
mov dword [ebp - 0x10], 0x80041012
jmp 0xfaca00
cmp eax, 0x80041002
jne 0xfbb948
jmp 0xfaca00
mov dword [ebp - 0x10], 0x80041012
jmp 0xfaca79
cmp eax, 0x80041002
jne 0xfbba05
jmp 0xfaca79
mov dword [ebp - 0x10], 0x80041012
jmp 0xfacaea
cmp eax, 0x80041002
jne 0xfbba22
jmp 0xfacaea
cmp eax, 0x80041002
jne 0xfbbaa9
jmp 0xfacbbb
mov dword [ebp - 0x10], 0x80041012
jmp 0xfacc2c
cmp eax, 0x80041002
jne 0xfbbac6
jmp 0xfacc2c
cmp eax, 0x80041002
jne 0xfbbaec
jmp 0xfacc9c
cmp eax, 0x80041002
jne 0xfbbb12
jmp 0xfacd0c
inc eax
cmp word [ebp - 0x24], ax
je 0xfacd78
jmp 0xfbbb1a
cmp eax, 0x80041002
jne 0xfbbb26
jmp 0xfacd7e
mov dword [ebp - 0x10], 0x80041012
jmp 0xface95
cmp eax, 0x80041002
jne 0xfbbbc3
jmp 0xface95