Function at 0x71cf3177
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa4
xor eax, eax
push ebx
mov ebx, ecx
mov dword [ebp - 0x28], eax
xor ecx, ecx
mov dword [ebp - 0x38], eax
inc ecx
mov dword [ebp - 0x2c], eax
push esi
test byte [ebx + 0x1964], 0x20
push edi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x24], eax
mov byte [ebp - 1], cl
mov dword [ebp - 0x20], eax
jne 0x71d4756f
test byte [ebx + 0x1978], 2
jne 0x71d5b840
cmp byte [ebx + 0x193a], al
jne 0x71d33db2
cmp dword [ebp + 8], 0x29
mov byte [ebp - 0x12], al
mov byte [ebp - 0x11], al
je 0x71d32ab6
mov esi, dword [ebp + 0x20]
mov edx, dword [ebx + 0x568]
mov dword [ebp - 0x18], 0x37
mov eax, dword [esi]
lea edi, [esi + 0xc]
mov ecx, dword [esi + 4]
mov dword [ebp - 0x28], eax
movsx eax, byte [edi + 0xc]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x30], ecx
mov al, byte [eax + 0x653b5d8]
mov dword [ebp - 8], eax
mov byte [ebp - 0x1c], al
test edx, edx
jne 0x71d12199
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x10]
mov eax, dword [esi + 8]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x2c], eax
test ecx, 0x400000
jne 0x71d18257
mov eax, ecx
mov ecx, 0x840
and eax, ecx
cmp eax, ecx
je 0x71d5b876
mov eax, dword [edi]
and eax, 0xf
jne 0x71d5b885
mov eax, dword [esi + 0xa4]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x40], eax
mov eax, dword [esi + 0xb0]
mov dword [ebp - 0x34], eax
mov eax, dword [esi + 0xb4]
mov dword [ebp - 0x24], eax
cmp ecx, dword [ebx + 0x1954]
je 0x71d28fc9
mov eax, dword [esi + 0xa8]
xor edx, edx
sub eax, edx
jne 0x71d0d9d1
push dword [ebp + 0x24]
mov ecx, ebx
push edx
push dword [ebp - 0x1c]
push dword [esi]
push edx
call fcn.71cf2e9f
cmp dword [esi + 0xac], 0
mov ecx, eax
mov dword [ebp - 0xc], ecx
jne 0x71d0d748
test dword [ebp - 0x30], 0x200000
push 0x20
pop edx
jne 0x71d1aa77
mov eax, dword [ebp - 0x18]
cmp eax, 0x22
je 0x71d28c06
cmp eax, edx
je 0x71d28c06
cmp eax, 0x21
je 0x71d28c06
cmp eax, 0x2f
je 0x71d28c06
cmp eax, 0x30
je 0x71d28c06
mov eax, dword [ebp - 0x30]
test eax, 0x40000
jne 0x71d25fc3
mov eax, dword [edi]
and eax, 0xf
cmp eax, 5
je 0x71d5b94b
cmp eax, 0xb
je 0x71d5b94b
mov eax, dword [ebp - 0x30]
test eax, 0x100000
jne 0x71d33ee8
cmp dword [ebx + 0x568], 0
mov esi, dword [ebp - 0xc]
jne 0x71cf3396
push eax
push edi
push dword [ebp - 0x28]
mov ecx, ebx
push esi
call fcn.71cf2e1a
test dword [esi + 0x10], 0x80000000
jne 0x71d31b23
cmp dword [ebp + 8], 0x29
je 0x71d40ff8
mov eax, dword [edi]
and eax, 0xf
cmp eax, 1
je 0x71d41004
cmp eax, 3
je 0x71d41004
push 4
pop ecx
cmp eax, ecx
je 0x71d41004
mov eax, dword [edi]
xor ecx, ecx
and eax, 0xf
cmp al, 5
je 0x71d5bb5f
test byte [edi], 0x80
jne 0x71d27409
mov eax, dword [ebp - 0x24]
neg eax
push ecx
sbb eax, eax
mov ecx, ebx
not eax
and eax, dword [ebp - 0x34]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x3c]
push edi
push eax
movzx eax, word [edi + 0xe]
push eax
call fcn.71cf3042
mov esi, dword [ebp - 0xc]
mov dword [esi + 0x28], eax
test eax, eax
je 0x71cf3430
mov eax, dword [eax + 0x10]
and eax, 0xf
or dword [esi + 0x10], eax
test byte [ebp - 0x30], 8
jne 0x71d0c26d
cmp dword [ebp + 8], 0x73
mov edi, dword [ebp + 0x14]
je 0x71d1530f
lea eax, [ebp - 0x50]
mov ecx, ebx
push eax
call fcn.71cf1efe
push dword [ebp - 0x40]
mov ecx, ebx
push dword [ebp + 0x10]
push dword [eax]
call fcn.71d04cad
cmp dword [ebx + 0x18f8], 0
mov edx, eax
jl 0x71d12245
test dword [esi + 0x10], 0x30000000
jne 0x71cf3492
push edx
mov ecx, ebx
call fcn.71d04457
test al, al
jne 0x71d0558e
mov eax, dword [edx + 0x10]
and eax, 0xf
mov dword [esi + 0x24], edx
or dword [esi + 0x10], eax
cmp dword [ebp + 8], 0x73
je 0x71d15316
cmp byte [ebp + 0x18], 0
jne 0x71d5b8a8
mov esi, dword [ebp - 0xc]
mov edi, dword [ebx + 0x568]
test edi, edi
jne 0x71d12327
push dword [ebp - 0x34]
mov ecx, ebx
push esi
call fcn.71cf35fa
xor eax, eax
inc eax
mov ecx, ebx
cmp byte [ebp - 8], al
je 0x71d04a6e
call fcn.71cf2bac
mov esi, dword [ebp - 0x2c]
and esi, 0x80000
mov dword [ebp - 0x2c], esi
jne 0x71d488d4
cmp dword [ebx + 0x1a24], 0
jne 0x71d49452
mov edi, dword [ebp - 0x10]
push dword [edi + 4]
movsx eax, byte [edi + 0xc]
mov ecx, ebx
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.71cf2cee
lea ecx, [ebp - 0x44]
call fcn.71cf1e5c
test esi, esi
jne 0x71d48907
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x24], eax
cmp dword [ebx + 0x1a24], 0
jne 0x71d4945d
cmp byte [ebp - 8], 0x11
mov esi, dword [ebp - 0xc]
je 0x71d1cacb
cmp byte [esi], 0x4b
jne 0x71d0c2ec
test dword [esi + 0x10], 0x40000000
je 0x71d0c2d1
push dword [ebx + 0x64c]
mov edx, esi
mov ecx, ebx
push 0xffffffffffffffff
call fcn.71cf251b
mov ecx, dword [ebp - 8]
mov dl, 6
movzx eax, cl
mov ecx, ebx
mov al, byte [eax + 0x653b430]
mov byte [ebp - 0x48], al
push dword [ebp - 0x48]
call fcn.71cf20cf
or dword [eax + 0x10], 2
mov dword [eax + 0x24], esi
mov esi, eax
xor ecx, ecx
inc ecx
cmp byte [ebp - 0x11], 0
jne 0x71cf35d7
cmp byte [ebp - 0x12], 0
jne 0x71d31ac1
push dword [ebp - 0x40]
mov ecx, ebx
push dword [ebp - 0x24]
push esi
call fcn.71cf1e75
mov al, byte [ebp - 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
push dword [ebx + 0x64c]
mov edx, esi
push 0xffffffffffffffff
call fcn.71cf251b
jmp 0x71cf35eb
mov eax, 0x80
or word [esi + 0x40], ax
jmp 0x71cf3492
cmp dword [ebp + 8], 0x73
jne 0x71cf34a8
jmp 0x71cf343d
mov al, byte [esi + 0x42]
xor ecx, ecx
and al, 7
inc ecx
cmp al, cl
je 0x71d2de14
test byte [esi + 0x40], 0x40
je 0x71d0c2ec
jmp 0x71cf35c1
xor eax, eax
mov ecx, ebx
push 0xffffffffffffffff
inc eax
push eax
call fcn.71cf2bc4
jmp 0x71cf35be
or dword [ecx + 0x10], 0x8000000
jmp 0x71cf32f9
sub eax, 1
je 0x71d5ba1b
sub eax, 1
je 0x71d218d1
sub eax, 1
je 0x71d42e55
sub eax, 1
jne 0x71d5bacf
push dword [ebp + 0x24]
mov ecx, ebx
push edx
push dword [ebp - 0x1c]
push dword [esi]
push edx
call fcn.71cf2e9f
mov ecx, eax
mov dword [ebp - 0xc], ecx
or dword [ecx + 0x10], 0x20000000
jmp 0x71cf32f9
mov eax, dword [edx + 0xc]
test byte [eax], 1
jne 0x71d5b84f
test ecx, 0x100000
jne 0x71d427e7
test ecx, 0x20000000
jne 0x71d3f138
test ecx, 0x40000
jne 0x71d45c35
mov eax, dword [edi]
and eax, 0xf
cmp eax, 0xb
je 0x71d5b862
cmp eax, 5
je 0x71d5b86c
test cl, 0x40
je 0x71cf324d
cmp dword [edi + 0x18], 0
je 0x71cf324d
cmp dword [ebp + 8], 0x6f
jne 0x71cf324d
mov ecx, 0x653fa94
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x6c], 0xfffffffe
mov dword [ebp - 0x60], ecx
mov eax, dword [eax + 0x9c]
lea esi, [ebp - 0x6c]
mov dword [ebp - 0x68], eax
mov eax, dword [ebx + 0x1954]
mov dword [ebp - 0x64], eax
mov byte [ebp - 0x5c], 0
push 5
pop ecx
lea edi, [ebx + 0x18f8]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 8]
mov al, cl
jmp 0x71cf35f1
cmp dword [ebp + 8], 0x6f
jne 0x71cf34c6
test dword [esi + 0x10], 0x38000000
je 0x71cf34c6
lea eax, [edi + 0x30]
mov ecx, ebx
push eax
push dword [esi + 0x24]
push dword [esi + 0x28]
call fcn.71d135e4
test eax, eax
je 0x71cf34c6
xor eax, eax
inc eax
mov byte [edi + 0x230], al
jmp 0x71cf34c6
mov edx, edi
jmp 0x71cf3479
mov eax, dword [ebp - 0x2c]
test eax, 0x40000
jne 0x71d2d8e0
test eax, 0x2000000
jne 0x71d2e965
mov eax, dword [ebp - 0x34]
push eax
push esi
mov ecx, ebx
call fcn.71cf35fa
push dword [ebx + 0x64c]
mov edx, esi
mov ecx, ebx
push 0xffffffffffffffff
call fcn.71cf251b
test dword [ebp - 0x2c], 0x10000
jne 0x71d1cc9f
cmp byte [edi], 0x41
je 0x71d5bc1d
mov esi, dword [edi + 0x24]
xor eax, eax
push 0xe
mov ecx, ebx
lea edx, [eax + 1]
call fcn.71cf20cf
push dword [ebp - 0x38]
push 1
or dword [eax + 0x28], 0xffffffff
mov dword [eax + 0x24], esi
push eax
mov ecx, ebx
call fcn.71cf1e75
jmp 0x71d12245
cmp dword [ebp + 0x10], 0
jne 0x71cf326e
lea eax, [ebp - 0x18]
mov ecx, ebx
push eax
push dword [ebp + 0x1c]
mov eax, dword [ebp + 0xc]
push dword [eax + 8]
push edi
push dword [ebp - 0x28]
push edx
call fcn.71d181ea
mov esi, eax
mov dword [ebp - 0xc], esi
test esi, esi
jne 0x71d1ef7a
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp + 0x20]
jmp 0x71cf326e
or word [ecx + 0x40], dx
jmp 0x71cf330c
cmp byte [esi], 0x4b
jne 0x71d0c2ec
push dword [edi + 4]
mov ecx, ebx
push esi
call fcn.71d1ca5e
mov esi, eax
jmp 0x71cf356a
mov eax, dword [edi + 0x24]
mov esi, dword [eax + 0x24]
mov eax, dword [ebx + 0x1c]
imul ecx, esi, 0x60
mov al, byte [ecx + eax]
mov ecx, ebx
and al, 0x1f
mov byte [ebp - 0x48], al
xor eax, eax
push dword [ebp - 0x48]
lea edx, [eax + 1]
call fcn.71cf20cf
mov edi, eax
mov ecx, ebx
push 0
push dword [ebp - 0x38]
lea eax, [ebp - 0x4c]
or dword [edi + 0x28], 0xffffffff
push eax
mov dword [edi + 0x24], esi
call fcn.71d044c5
mov ecx, eax
call fcn.71cf1e5c
push dword [eax + 4]
push dword [eax]
push edi
jmp 0x71d1538c
xor eax, eax
inc eax
mov byte [ebp - 0x11], al
jmp 0x71cf34d7
lea eax, [esi + 0xb8]
cmp byte [eax], dl
jne 0x71d40074
push dword [ebp + 0x24]
mov ecx, ebx
push edx
push dword [ebp - 0x1c]
push dword [esi]
push edx
call fcn.71cf2e9f
mov ecx, eax
mov eax, dword [esi + 0xcc]
mov dword [ebp - 0xc], ecx
or dword [ecx + 0x10], 0x10000000
mov dword [ecx + 0x48], eax
xor eax, eax
inc eax
cmp dword [esi + 0xc8], eax
jne 0x71cf32f9
add eax, 0x7f
or word [ecx + 0x40], ax
jmp 0x71cf32f9
or word [ecx + 0x40], 0x10
cmp dword [ebp + 8], 0x6f
jne 0x71cf334f
and dword [ecx + 0x10], 0xf7ffffff
jmp 0x71cf334f
cmp dword [ebp - 0x38], 0
je 0x71d5b880
mov eax, dword [ebp - 0x34]
xor ecx, ecx
mov esi, eax
inc ecx
and esi, 0xfffffffe
test cl, al
je 0x71d2ee83
mov edx, dword [ebx + 0x568]
mov eax, dword [ebp - 0x2c]
test edx, edx
jne 0x71d27512
test eax, 0x80000
jne 0x71d5bbfb
cmp dword [ebp - 0x24], 0
push ecx
push ecx
mov ecx, ebx
jne 0x71d32f96
push esi
call fcn.71d275ca
mov edi, dword [ebx + 0x1948]
mov dword [ebp - 0x1c], eax
push esi
mov eax, dword [edi]
mov esi, dword [eax + 0x118]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
mov eax, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x10]
push eax
xor eax, eax
mov ecx, ebx
inc eax
push eax
push 0x48
call fcn.71cf2c3e
mov ecx, eax
jmp 0x71cf33e7
test eax, 0x80000
je 0x71d2744b
mov ecx, 0x653fbb4
jmp 0x71d12202
or word [ecx + 0x40], 0x40
jmp 0x71cf333e
push dword [ebx + 0x19cc]
push dword [ebx + 0x698]
call fcn.71d192fa
mov ecx, dword [ebp - 0x28]
jmp 0x71cf32c0
push 0xe
pop eax
mov ecx, ebx
mov dword [ebp - 8], eax
mov byte [esi + 1], al
call fcn.71cf2bac
push dword [ebp - 0x38]
xor eax, eax
inc eax
push eax
push esi
jmp 0x71d1538c
push esi
call fcn.71d2dda1
test al, al
jne 0x71cf35c1
jmp 0x71d0c2e1
lea eax, [ebp - 0x18]
mov ecx, ebx
push eax
push esi
call fcn.71d2e85f
mov esi, eax
mov eax, dword [ebp - 0x18]
jmp 0x71d15338
mov byte [ebp - 1], al
jmp 0x71cf31ec
cmp dword [ebp - 0x24], 0
jne 0x71d32fb2
push ecx
push ecx
push esi
mov ecx, ebx
call fcn.71d2ee35
mov edi, dword [ebx + 0x1948]
push esi
mov dword [ebp - 0x1c], eax
mov edx, dword [edi]
mov esi, dword [edx + 0x64]
jmp 0x71d27477
mov eax, dword [ebp - 8]
movzx eax, al
test byte [eax + 0x653b5f0], cl
je 0x71cf35d7
cmp byte [eax + 0x653b710], 4
jae 0x71cf35d7
mov al, byte [eax + 0x653b430]
mov ecx, ebx
push esi
mov byte [ebp - 0x48], al
push dword [ebp - 0x48]
push 0x18
call fcn.71cf2c3e
mov esi, eax
mov eax, dword [ebp - 8]
mov byte [esi + 0x28], al
jmp 0x71cf35d7
cmp byte [ebp - 1], 0
je 0x71d31b3d
mov byte [ebp - 1], 0
mov dword [ebp - 0x20], 0x653eb9c
xor eax, eax
mov ecx, ebx
push edi
inc eax
push esi
mov byte [ebp - 0x12], al
call fcn.71d31b54
jmp 0x71cf34a8
mov edi, dword [ebx + 0x1948]
lea eax, [ebp - 0xa0]
push eax
mov eax, dword [ebp + 0xc]
push dword [ebx + 0x648]
mov esi, dword [edi]
push dword [eax + 8]
push dword [ebx + 0x194c]
mov ecx, dword [esi + 0x78]
call dword [0x653b188]
mov ecx, edi
call dword [esi + 0x78]
movsx eax, byte [ebp - 0x94]
mov ecx, ebx
push dword [ebp + 0x24]
mov al, byte [eax + 0x653b5d8]
mov dword [ebp - 8], eax
lea eax, [ebp - 0xa0]
push eax
call fcn.71d32a3e
mov ecx, eax
lea edi, [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
shr eax, 2
not eax
mov dword [ebp - 0xc], ecx
and eax, 8
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x30], eax
jmp 0x71cf3344
lea eax, [ebp - 0x18]
push eax
push dword [ebp + 0xc]
call fcn.71d0c061
test eax, eax
jne 0x71d2748f
jmp 0x71d12245
push 0
push ecx
mov ecx, ebx
jmp 0x71d32f96
mov dword [ebp - 0x20], 0x653ec90
jmp 0x71d2eda9
mov edx, dword [ebx + 0x568]
test edx, edx
jne 0x71d427e7
xor ecx, ecx
inc ecx
mov dword [ebx + 0x1a30], ecx
mov byte [ebx + 0x193a], cl
jmp 0x71cf3377
mov ecx, 0x653eed0
jmp 0x71d12202
mov edx, dword [ebx + 0x568]
test edx, edx
jne 0x71d5b941
push ecx
push eax
push ecx
mov ecx, ebx
call fcn.71d32d8e
mov esi, eax
mov ecx, ebx
xor eax, eax
inc eax
push eax
call fcn.71d04614
sub esp, 0xc
mov edi, eax
mov ecx, ebx
push 0xffffffffffffffff
push esi
push edi
call fcn.71d15536
xor eax, eax
mov ecx, ebx
push 8
lea edx, [eax + 1]
call fcn.71cf20cf
push 0xffffffffffffffff
push 0
push dword [ebp - 0x1c]
mov esi, eax
mov ecx, ebx
push esi
push 2
or dword [esi + 0x28], 0xffffffff
mov dword [esi + 0x24], edi
call fcn.71cf2e9f
mov ecx, eax
mov byte [ebp - 1], 0
mov eax, dword [esi + 0x10]
and eax, 0xb
mov dword [ebp - 0xc], ecx
or eax, 0x10000004
mov dword [ebp - 0x20], 0x653ee88
or dword [ecx + 0x10], eax
mov edi, dword [ebp - 0x10]
jmp 0x71cf32f9
mov eax, dword [edi]
and al, 0xf
cmp al, 2
jne 0x71cf33ad
mov edi, dword [ebx + 0x1948]
push dword [ebp - 0x10]
mov eax, dword [edi]
mov esi, dword [eax + 0x220]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
test al, al
jne 0x71d5bada
mov eax, dword [ebx + 0x568]
test eax, eax
je 0x71d5b880
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x4c], 0x653fb4c
mov eax, dword [eax + 0x9c]
lea esi, [ebp - 0x58]
or dword [ebp - 0x58], 0xffffffff
mov dword [ebp - 0x54], eax
mov eax, dword [ebx + 0x1954]
mov dword [ebp - 0x50], eax
mov byte [ebp - 0x48], 0
jmp 0x71d1223a
mov ecx, 0x653efc0
jmp 0x71d12202
mov edx, dword [ebx + 0x568]
test edx, edx
jne 0x71d5b8a1
push 0
push edi
lea eax, [ebp - 0x3c]
mov ecx, ebx
push eax
movzx eax, word [edi + 0xe]
push eax
call fcn.71cf3042
mov dword [ebp - 0x40], eax
mov ecx, ebx
lea eax, [ebp - 0x50]
push eax
call fcn.71cf1efe
push dword [esi + 0xa4]
mov ecx, ebx
push dword [ebp + 0x10]
push dword [eax]
call fcn.71d04cad
xor ecx, ecx
cmp dword [ebx + 0x18f8], ecx
jl 0x71d12245
push ecx
push 0xffffffffffffffff
push ecx
lea ecx, [ebp - 0x3c]
push ecx
push eax
mov ecx, ebx
call fcn.71d21426
mov ecx, dword [ebp + 0xc]
push esi
push ecx
push eax
mov ecx, ebx
call fcn.71d424c8
cmp dword [ebx + 0x18f8], 0
mov edi, eax
jl 0x71d12245
xor eax, eax
mov ecx, ebx
inc eax
push eax
call fcn.71d04614
sub esp, 0xc
mov esi, eax
mov ecx, ebx
push 0xffffffffffffffff
push edi
push esi
call fcn.71d15536
xor eax, eax
mov ecx, ebx
push 8
lea edx, [eax + 1]
call fcn.71cf20cf
push dword [ebp + 0x24]
mov edi, eax
mov ecx, ebx
push dword [ebp - 0x40]
push dword [ebp - 0x1c]
or dword [edi + 0x28], 0xffffffff
push edi
push 2
mov dword [edi + 0x24], esi
call fcn.71cf2e9f
mov esi, eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xc], esi
mov dword [esi + 0x24], eax
mov eax, dword [edi + 0x10]
and eax, 0xb
or eax, 4
or dword [esi + 0x10], eax
jmp 0x71cf34a8
mov ecx, 0x653efa0
jmp 0x71d12202
mov dword [ebp - 0x20], 0x653f210
jmp 0x71d2eda9
mov ecx, dword [ebp + 0xc]
push dword [ebp - 0x10]
mov edi, dword [ebx + 0x1948]
push dword [ecx]
mov eax, dword [edi]
push dword [ecx + 8]
push dword [ecx + 4]
mov esi, dword [eax + 0x7c]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x2c]
jmp 0x71cf3502
cmp byte [ebp + 0x1c], 0
je 0x71cf353e
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x24], eax
test al, al
jns 0x71cf354a
or eax, 0x100
jmp 0x71cf3544
mov edi, dword [ebp + 0x20]
add edi, 0x44
jmp 0x71cf3515
test al, al
jns 0x71cf3557
or eax, 0x2000
mov dword [ebp - 0x24], eax
jmp 0x71cf3557
int3
mov dword [ebp - 0x20], 0x653fa00
jmp 0x71d2eda9
mov ecx, 0x653fa14
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x4c], ecx
jmp 0x71d41047
mov ecx, 0x653fa48
jmp 0x71d12202
mov ecx, 0x653fa70
jmp 0x71d12202
cmp dword [ebp + 8], 0x6f
jne 0x71cf327f
call fcn.71d51571
cmp eax, 5
je 0x71cf328a
cmp eax, 0xb
je 0x71cf328a
call fcn.71d5156a
jmp 0x71d4a9d8
mov ecx, 0x653faf8
jmp 0x71d5b854
test dword [ebx + 0x1a34], 0xffffff00
jne 0x71d5b897
mov al, byte [ebp - 1]
test al, al
je 0x71d5bc37
mov ecx, dword [ebp - 8]
cmp cl, byte [ebx + 0x1979]
je 0x71d5bc25
xor al, al
mov ecx, 0x653fbc4
test al, al
je 0x71d5bc3d
test byte [esi + 0x42], 7
jne 0x71d5bc30
test dword [esi + 0x10], 0x30000000
jne 0x71d5bc30
mov ecx, dword [ebp - 0x28]
mov edi, dword [ebx + 0x1948]
push dword [ebp + 0x18]
push ecx
mov eax, dword [edi]
push dword [ebp - 0x28]
push dword [ebx + 0x1954]
mov esi, dword [eax + 0x18]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
mov esi, dword [ebp - 0xc]
test al, al
je 0x71cf34b8
xor eax, eax
inc eax
or word [esi + 0x40], ax
jmp 0x71cf34b8
mov ecx, 0x653fad0
jmp 0x71d5b854
or dword [ecx + 0x10], 0x4000000
push 4
pop eax
or word [ecx + 0x40], ax
cmp byte [ebp - 1], 0
je 0x71d5b973
mov byte [ebp - 1], 0
mov dword [ebp - 0x20], 0x653fb38
cmp dword [ebp + 8], 0x29
je 0x71cf3366
mov eax, dword [edi + 8]
push dword [ebp - 0x10]
mov edi, dword [ebx + 0x1948]
mov ecx, dword [ebp + 0xc]
push dword [ebx + 0x648]
mov dword [ebp - 0x18], eax
mov eax, dword [edi]
push dword [ecx + 8]
push dword [ebx + 0x194c]
mov esi, dword [eax + 0x7c]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
mov edi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
cmp dword [edi + 8], ecx
je 0x71cf3366
test ecx, ecx
je 0x71cf3366
mov al, byte [edi + 0xc]
cmp al, 0x14
je 0x71cf3366
cmp al, 0x12
je 0x71cf3366
cmp al, 0x11
je 0x71cf3366
cmp al, 0x16
je 0x71cf3366
mov edi, dword [ebx + 0x1948]
push ecx
mov eax, dword [edi]
mov esi, dword [eax + 0x118]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
mov edi, dword [ebp - 0x10]
jmp 0x71cf3366
mov edx, dword [ebx + 0x568]
test edx, edx
je 0x71d5ba2f
mov ecx, 0x653fb14
jmp 0x71d5b854
push dword [esi]
lea eax, [esi + 0xb8]
push 0xd0000000
push eax
push ecx
mov ecx, ebx
call fcn.71d0c026
cmp dword [ebx + 0x18f8], 0
mov esi, eax
jl 0x71d12245
xor eax, eax
mov ecx, ebx
inc eax
push eax
call fcn.71d04614
sub esp, 0xc
mov edi, eax
mov ecx, ebx
push 0xffffffffffffffff
push esi
push edi
call fcn.71d15536
xor eax, eax
mov ecx, ebx
push 8
lea edx, [eax + 1]
call fcn.71cf20cf
push dword [ebp + 0x24]
mov esi, eax
mov ecx, ebx
push 0
push dword [ebp - 0x1c]
or dword [esi + 0x28], 0xffffffff
push esi
push 2
mov dword [esi + 0x24], edi
call fcn.71cf2e9f
mov edx, dword [ebp + 0x20]
mov ecx, eax
mov eax, dword [esi + 0x10]
and eax, 0xb
mov dword [ebp - 0xc], ecx
or eax, dword [ecx + 0x10]
or eax, 4
mov dword [ecx + 0x10], eax
cmp dword [edx + 0xac], 0
je 0x71d400fb
or eax, 0x8000000
mov dword [ecx + 0x10], eax
jmp 0x71d400fb
mov ecx, dword [ebp - 0xc]
jmp 0x71cf32f9
mov edi, dword [ebx + 0x1948]
lea ecx, [ebp - 0x18]
push ecx
push dword [ebp - 0x10]
mov eax, dword [edi]
mov esi, dword [eax + 0x21c]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
push 0
push ecx
push ecx
push 0xa0000000
push dword [ebp - 0x18]
mov ecx, ebx
push eax
call fcn.71d0bffe
mov ecx, eax
cmp byte [eax], 0x1d
jne 0x71d5bb22
mov ecx, dword [eax + 0x24]
mov esi, dword [ebp - 0xc]
mov edx, 0x4000
or dword [eax + 0x10], edx
or dword [ecx + 0x10], edx
cmp byte [ebp - 1], 0
mov edi, dword [ebp - 0x10]
mov dword [esi + 0x48], eax
je 0x71cf33cf
mov byte [ebp - 1], 0
mov dword [ebp - 0x20], 0x653fb78
jmp 0x71cf33cf
mov edi, dword [ebx + 0x1948]
push dword [ebp - 0x10]
mov eax, dword [edi]
mov esi, dword [eax + 0x244]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
test al, al
jne 0x71d5bba2
mov eax, dword [ebx + 0x568]
or dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x60], 0x653fb88
mov eax, dword [eax + 0xc]
jmp 0x71d12215
mov edi, dword [ebx + 0x1948]
lea ecx, [ebp - 0x48]
push ecx
push dword [ebp - 0x10]
mov eax, dword [edi]
mov esi, dword [eax + 0x240]
mov ecx, esi
call dword [0x653b188]
mov ecx, edi
call esi
push 0
push ecx
push ecx
push 0x90000000
push dword [ebp - 0x48]
mov ecx, ebx
push eax
call fcn.71d0bffe
push eax
xor eax, eax
mov ecx, ebx
inc eax
push eax
push 0x48
call fcn.71cf2c3e
mov edi, dword [ebp - 0x10]
mov ecx, eax
jmp 0x71cf33de
cmp byte [ebp + 0x1c], 0
je 0x71d2744b
push 8
mov dl, 7
mov ecx, ebx
call fcn.71cf20cf
and dword [eax + 0x24], 0
and dword [eax + 0x28], 0
jmp 0x71d2748f
mov edi, dword [edi + 0x28]
jmp 0x71d1536b
mov ecx, dword [ebp - 0x20]
jmp 0x71d5b8db
xor ecx, ecx
jmp 0x71d5b900
mov ecx, dword [ebp - 0x20]
mov edi, dword [ebx + 0x1948]
xor eax, eax
push ecx
push 0xffffffffffffffff
inc eax
mov esi, dword [edi]
push eax
push dword [ebp - 0x28]
push dword [ebx + 0x1954]
mov ecx, dword [esi + 0x1c]
call dword [0x653b188]
mov ecx, edi
call dword [esi + 0x1c]
jmp 0x71cf34b2