Function at 0x592cda
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov edi, eax
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x30], ecx
mov ebx, dword [ebp + 8]
mov al, byte [eax]
cmp al, 0x61
ja 0x592d12
test al, al
je case.default.0x592d29
lea edx, [eax - 1]
cmp dl, 0x60
ja case.0x592d29.4
movzx edx, dl
jmp dword [edx*4 + 0x60972c]
cmp al, 0x81
je 0x594e05
lea edx, [eax + 0x40]
cmp dl, 6
ja case.default.0x592d29
movzx edx, dl
jmp dword [edx*4 + 0x6098b0]
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.InitialObjectDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
mov dword [esp], ebx
mov ecx, esi
mov edx, str.objectDescriptorID
mov eax, dword [ebp - 0x2c]
call fcn.004b777d
movzx eax, word [edi + 2]
mov dword [esp + 8], eax
test ebx, ebx
je 0x592dad
mov dword [esp + 4], str.od_d
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.005929f7
movzx ecx, word [edi + 2]
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.binaryID
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
jmp 0x592dd3
mov dword [esp + 4], 0x608c02
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], eax
mov dword [esp], 0xa
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fputc
mov dword [esp], ebx
mov ecx, esi
mov edx, str.Profiles
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
movzx ecx, byte [edi + 0x23]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.audioProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x24]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.visualProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x22]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.sceneProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x25]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.graphicsProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x21]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.ODProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x20]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.includeInlineProfileLevelFlag
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
test ebx, ebx
je 0x592e81
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
cmp dword [edi + 4], 0
je 0x592ebe
mov dword [esp], ebx
mov ecx, esi
mov edx, 0x608cb9
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.URLstring
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x592eeb
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x592ec2
test ebx, ebx
je 0x592eeb
mov dword [esp + 4], 1
mov dword [esp], 1
mov ecx, esi
mov edx, str.Descr
mov eax, dword [ebp - 0x2c]
call fcn.004b76b0
mov eax, dword [ebp - 0x30]
add eax, 2
mov dword [ebp - 0x30], esi
mov esi, eax
mov eax, dword [edi + 8]
xor edx, edx
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], str.esDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
mov eax, dword [edi + 0xc]
xor ecx, ecx
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], str.ociDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0xa
mov dword [esp + 4], ebx
mov dword [esp], str.ipmpDescrPtr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.0059123b
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0xb
mov dword [esp + 4], ebx
mov dword [esp], str.ipmpDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.0059123b
mov eax, dword [edi + 0x14]
xor edx, edx
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], str.extDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
cmp dword [edi + 0x28], 0
je 0x592fcc
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], ebx
mov ecx, esi
mov edx, str.toolListDescr
mov eax, dword [ebp - 0x2c]
call fcn.004b76b0
lea ecx, [ebx + esi]
mov eax, dword [edi + 0x28]
mov dword [esp], ebx
mov edx, dword [ebp - 0x2c]
call fcn.00592cda
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], ebx
mov ecx, esi
mov edx, str.toolListDescr
mov eax, dword [ebp - 0x2c]
call fcn.004b7715
test ebx, ebx
je 0x592ff2
mov dword [esp + 4], 1
mov dword [esp], 1
mov ecx, dword [ebp - 0x30]
mov edx, str.Descr
mov eax, dword [ebp - 0x2c]
call fcn.004b7715
mov esi, dword [ebp - 0x30]
lea ecx, [esi - 1]
mov dword [ebp + 8], ebx
mov edx, str.InitialObjectDescriptor
jmp 0x594fc4
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov eax, edi
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.00591468
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov eax, edi
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.00591938
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.SLConfigDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
test ebx, ebx
je 0x59304f
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
cmp byte [edi + 1], 0
je 0x5930a3
mov dword [esp], ebx
mov ecx, esi
mov edx, str.predefined
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
movzx ecx, byte [edi + 1]
mov edx, str.predefined
test ebx, ebx
je 0x59307f
mov edx, 0x608b79
mov dword [esp + 4], ebx
mov dword [esp], esi
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x593141
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x59312b
test ebx, ebx
jne 0x59312b
movzx ecx, byte [edi + 2]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.useAccessUnitStartFlag
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
movzx ecx, byte [edi + 3]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.useAccessUnitEndFlag
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
movzx ecx, byte [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.useRandomAccessPointFlag
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
movzx ecx, byte [edi + 6]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.usePaddingFlag
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
test ebx, ebx
jne 0x593150
movzx ecx, byte [edi + 7]
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], esi
mov edx, str.useTimeStampsFlag
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
jmp 0x593150
mov dword [esp], 1
mov ecx, esi
mov edx, str.custom
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
cmp byte [edi + 1], 0
jne 0x59325c
jmp 0x5930ab
movzx ecx, byte [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.useIdleFlag
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
test ebx, ebx
jne 0x593186
movzx ecx, byte [edi + 9]
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], esi
mov edx, str.durationFlag
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
mov ecx, dword [edi + 0xc]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.timeStampResolution
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x10]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.OCRResolution
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x14]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.timeStampLength
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x15]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.OCRLength
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x16]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.AU_Length
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x17]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.instantBitrateLength
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x18]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.degradationPriorityLength
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x19]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.AU_SeqNumLength
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 0x1a]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.packetSeqNumLength
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x593268
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov eax, dword [ebp - 0x30]
add eax, 2
mov dword [ebp - 0x34], eax
cmp byte [edi + 9], 0
je 0x5932e5
mov dword [esp], ebx
mov ecx, eax
mov edx, str.Duration
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov ecx, dword [edi + 0x1c]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, str.timescale
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, word [edi + 0x20]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, str.accessUnitDuration
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, word [edi + 0x22]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, str.compositionUnitDuration
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x5932e5
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
cmp byte [edi + 7], 0
jne 0x593340
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.noUseTimeStamps
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov ecx, dword [edi + 0x28]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, str.startDecodingTimeStamp
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x30]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, str.startCompositionTimeStamp
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x593362
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x593344
test ebx, ebx
je 0x593362
mov dword [esp + 4], 1
mov dword [esp], 1
mov ecx, esi
mov edx, str.custom
mov eax, dword [ebp - 0x2c]
call fcn.004b7715
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.SLConfigDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ES_ID_Inc
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
inc eax
mov dword [esp], eax
mov edx, str.trackID
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x5933ac
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ES_ID_Inc
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ES_ID_Ref
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
movzx ecx, word [edi + 2]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
inc eax
mov dword [esp], eax
mov edx, str.trackRef
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x5933f7
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ES_ID_Ref
jmp 0x594fc4
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov eax, edi
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.0059215b
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.MP4ObjectDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
mov dword [esp], ebx
mov ecx, esi
mov edx, str.objectDescriptorID
mov eax, dword [ebp - 0x2c]
call fcn.004b777d
movzx eax, word [edi + 2]
mov dword [esp + 8], eax
test ebx, ebx
je 0x59349b
mov dword [esp + 4], str.od_d
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.005929f7
movzx ecx, word [edi + 2]
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.binaryID
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
jmp 0x5934c1
mov dword [esp + 4], 0x608c02
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], eax
mov dword [esp], 0xa
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fputc
cmp dword [edi + 4], 0
je 0x5934fe
mov dword [esp], ebx
mov ecx, esi
mov edx, 0x608cb9
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.URLstring
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x59352b
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x593502
test ebx, ebx
je 0x59352b
mov dword [esp + 4], 1
mov dword [esp], 1
mov ecx, esi
mov edx, str.Descr
mov eax, dword [ebp - 0x2c]
call fcn.004b76b0
mov eax, dword [ebp - 0x30]
add eax, 2
mov dword [ebp - 0x30], esi
mov esi, eax
mov eax, dword [edi + 0x18]
test eax, eax
je 0x59354b
cmp dword [eax + 4], 0
je 0x59354b
xor ecx, ecx
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], str.esDescrInc
jmp 0x59355f
mov eax, dword [edi + 8]
xor edx, edx
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], str.esDescrRef
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
mov eax, dword [edi + 0xc]
xor edx, edx
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], str.ociDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0xa
mov dword [esp + 4], ebx
mov dword [esp], str.ipmpDescrPtr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.0059123b
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0xb
mov dword [esp + 4], ebx
mov dword [esp], str.ipmpDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.0059123b
mov eax, dword [edi + 0x14]
xor ecx, ecx
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], str.extDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
test ebx, ebx
je 0x59360b
mov dword [esp + 4], 1
mov dword [esp], 1
mov ecx, dword [ebp - 0x30]
mov edx, str.Descr
mov eax, dword [ebp - 0x2c]
call fcn.004b7715
mov esi, dword [ebp - 0x30]
lea ecx, [esi - 1]
mov dword [ebp + 8], ebx
mov edx, str.MP4ObjectDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ObjectDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
mov dword [esp], ebx
mov ecx, esi
mov edx, str.objectDescriptorID
mov eax, dword [ebp - 0x2c]
call fcn.004b777d
movzx eax, word [edi + 2]
mov dword [esp + 8], eax
test ebx, ebx
je 0x593698
mov dword [esp + 4], str.od_d
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.005929f7
movzx ecx, word [edi + 2]
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.binaryID
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
jmp 0x5936be
mov dword [esp + 4], 0x608c02
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], eax
mov dword [esp], 0xa
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fputc
cmp dword [edi + 4], 0
je 0x5936fb
mov dword [esp], ebx
mov ecx, esi
mov edx, 0x608cb9
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.URLstring
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x593728
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x5936ff
test ebx, ebx
je 0x593728
mov dword [esp + 4], 1
mov dword [esp], 1
mov ecx, esi
mov edx, str.Descr
mov eax, dword [ebp - 0x2c]
call fcn.004b76b0
mov eax, dword [ebp - 0x30]
add eax, 2
mov dword [ebp - 0x30], esi
mov esi, eax
mov eax, dword [edi + 8]
xor ecx, ecx
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], str.esDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
mov eax, dword [edi + 0xc]
xor edx, edx
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], str.ociDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0xa
mov dword [esp + 4], ebx
mov dword [esp], str.ipmpDescrPtr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.0059123b
mov eax, dword [edi + 0x10]
mov dword [esp + 8], 0xb
mov dword [esp + 4], ebx
mov dword [esp], str.ipmpDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.0059123b
mov eax, dword [edi + 0x14]
xor ecx, ecx
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], str.extDescr
mov ecx, esi
mov edx, dword [ebp - 0x2c]
call fcn.00591372
test ebx, ebx
je 0x5937e8
mov dword [esp + 4], 1
mov dword [esp], 1
mov ecx, dword [ebp - 0x30]
mov edx, str.Descr
mov eax, dword [ebp - 0x2c]
call fcn.004b7715
mov esi, dword [ebp - 0x30]
lea ecx, [esi - 1]
mov dword [ebp + 8], ebx
mov edx, str.ObjectDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ContentClassificationDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
mov dword [esp], eax
mov edx, str.classificationEntity
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, word [edi + 8]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
mov dword [esp], eax
mov edx, str.classificationTable
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x10]
mov dword [esp + 0xc], ebx
mov eax, dword [ebp - 0x30]
mov dword [esp + 8], eax
mov eax, dword [edi + 0xc]
mov dword [esp], eax
xor edx, edx
mov dword [esp + 4], edx
mov edx, str.ccd__contentClassificationData
mov eax, dword [ebp - 0x2c]
call fcn.004b7947
test ebx, ebx
je 0x593873
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ContentClassificationDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ContentClassificationDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
lea ecx, [edi + 1]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
mov dword [esp], eax
mov edx, str.creationDate
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
jmp 0x593867
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ContentCreatorNameDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
test ebx, ebx
je 0x5938d1
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x1c]
mov eax, dword [edi + 4]
call fcn.00425f4e
mov esi, eax
test eax, eax
je 0x59395d
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.Creator
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov ecx, dword [esi]
mov edx, str.languageCode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [esi + 4]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, str.isUTF8
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
mov ecx, dword [esi + 8]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, str.Name
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x5938dd
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x5938dd
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ContentCreatorNameDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ContentIdentificationDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
movzx ecx, byte [edi + 2]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
mov dword [esp], eax
mov edx, str.protectedContent
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
test ebx, ebx
je 0x5939a7
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
cmp byte [edi + 3], 0
je 0x5939e9
mov dword [esp], ebx
mov ecx, esi
mov edx, str.contentType
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
movzx ecx, byte [edi + 5]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.contentType
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x5939e9
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
cmp byte [edi + 4], 0
je 0x593a3c
mov dword [esp], ebx
mov ecx, esi
mov edx, str.contentIdentifierType
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
movzx ecx, byte [edi + 6]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.contentIdentifierType
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.contentIdentifier
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x593a3c
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ContentIdentificationDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ExpandedTextualDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.languageCode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.isUTF8
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
mov ecx, dword [edi + 0x14]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.nonItemText
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x593ab7
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov eax, dword [edi + 0xc]
test eax, eax
je 0x593b46
mov eax, dword [eax + 4]
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x40]
cmp dword [ebp - 0x34], edx
je 0x593b46
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0x34]
call fcn.00425c8e
mov dword [ebp - 0x38], eax
mov eax, dword [edi + 0x10]
mov edx, dword [ebp - 0x34]
call fcn.00425c8e
mov dword [ebp - 0x3c], eax
mov dword [esp], ebx
mov ecx, esi
mov edx, str.item
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov dword [esp + 4], ebx
mov dword [esp], esi
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
mov edx, 0x60905f
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov dword [esp + 4], ebx
mov dword [esp], esi
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
mov edx, 0x60906b
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x593b41
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
inc dword [ebp - 0x34]
jmp 0x593acd
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ExpandedTextualDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ExtensionProfileLevelDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov esi, dword [ebp - 0x30]
inc esi
movzx ecx, byte [edi + 1]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.profileLevelIndicationIndex
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 2]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.ODProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 3]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.sceneProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.audioProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 5]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.visualProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 6]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.graphicsProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 7]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.MPEGJProfileLevelIndication
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x59500f
jmp 0x594f82
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPI_DescrPointer
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
movzx ecx, word [edi + 2]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
inc eax
mov dword [esp], eax
mov edx, str.IPI_ES_Id
jmp 0x593c0d
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPMP_Descriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
movzx ecx, byte [edi + 1]
mov dword [esp + 8], 1
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.IPMP_DescriptorID
mov eax, dword [ebp - 0x2c]
call fcn.004b7827
movzx ecx, word [edi + 2]
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.IPMPS_Type
mov eax, dword [ebp - 0x2c]
call fcn.004b7827
mov eax, dword [edi]
not eax
test eax, 0xffffff00
jne 0x593d9f
movzx ecx, word [edi + 0xc]
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.IPMP_DescriptorIDEx
mov eax, dword [ebp - 0x2c]
call fcn.004b7827
lea ecx, [edi + 0xe]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.IPMP_ToolID
mov eax, dword [ebp - 0x2c]
call fcn.004b78c1
movzx ecx, byte [edi + 0x1e]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.controlPointCode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
cmp byte [edi + 0x1e], 0
je 0x593d1c
movzx ecx, byte [edi + 0x1f]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.sequenceCode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x593d28
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [esp + 4], 1
mov dword [esp], ebx
mov ecx, esi
mov edx, str.IPMPX_Data
mov eax, dword [ebp - 0x2c]
call fcn.004b76b0
mov eax, dword [ebp - 0x30]
add eax, 2
mov dword [ebp - 0x38], eax
mov eax, dword [edi + 0x20]
test eax, eax
je 0x593d83
mov eax, dword [eax + 4]
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x3c]
cmp dword [ebp - 0x34], edx
je 0x593d83
mov eax, dword [edi + 0x20]
mov edx, dword [ebp - 0x34]
call fcn.00425c8e
mov dword [esp], ebx
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.00582f89
inc dword [ebp - 0x34]
jmp 0x593d5d
mov dword [esp + 4], 1
mov dword [esp], ebx
mov ecx, esi
mov edx, str.IPMPX_Data
mov eax, dword [ebp - 0x2c]
call fcn.004b7715
jmp 0x593de0
mov ecx, dword [edi + 4]
cmp word [edi + 2], 0
jne 0x593dbf
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.URLString
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
jmp 0x593de0
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov eax, dword [edi + 8]
mov dword [esp], eax
xor esi, esi
mov dword [esp + 4], esi
mov edx, str.IPMP_data
mov eax, dword [ebp - 0x2c]
call fcn.004b7947
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPMP_Descriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPMP_DescriptorPointer
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
movzx ecx, byte [edi + 1]
cmp cl, 0xff
jne 0x593e73
mov dword [esp], ebx
mov ecx, esi
mov edx, str.IPMP_DescriptorID
mov eax, dword [ebp - 0x2c]
call fcn.004b777d
mov dword [esp + 8], 0xff
mov dword [esp + 4], 0x608c02
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov edx, ebx
mov eax, dword [ebp - 0x2c]
call fcn.005929f7
movzx ecx, word [edi + 2]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.IPMP_DescriptorIDEx
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, word [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.IPMP_ES_ID
jmp 0x593e7f
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.IPMP_DescriptorID
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
jne 0x594f82
xor ecx, ecx
mov dword [ebp + 8], ecx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPMP_DescriptorPointer
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.KeyWordDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.languageCode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.isUTF8
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
test ebx, ebx
je 0x593ef5
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
xor edx, edx
mov dword [ebp - 0x1c], edx
lea edx, [ebp - 0x1c]
mov eax, dword [edi + 0xc]
call fcn.00425f4e
mov dword [ebp - 0x34], eax
test eax, eax
je 0x593f45
mov dword [esp], ebx
mov ecx, esi
mov edx, str.keyWord
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov dword [esp + 4], ebx
mov dword [esp], esi
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov edx, 0x608b79
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x593efa
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x593efa
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.KeyWordDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.LanguageDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov ax, word [edi + 4]
xchg al, ah
movzx edx, word [edi + 6]
mov byte [ebp - 0x1c], dl
mov word [ebp - 0x1b], ax
mov byte [ebp - 0x19], 0
lea ecx, [ebp - 0x1c]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
inc eax
mov dword [esp], eax
mov edx, str.languageCode
mov eax, dword [ebp - 0x2c]
call fcn.004b8007
test ebx, ebx
jne 0x593fb6
xor eax, eax
mov dword [esp], eax
mov ecx, dword [ebp - 0x30]
mov edx, str.LanguageDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b7655
jmp 0x59500f
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x59500f
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.OCICreationDateDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
lea ecx, [edi + 1]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
inc eax
mov dword [esp], eax
mov edx, str.OCICreationDate
jmp 0x594533
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.OCICreatorNameDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x1c]
mov eax, dword [edi + 4]
call fcn.00425f4e
mov esi, eax
test eax, eax
je 0x59408d
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.Creator
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov ecx, dword [esi]
mov edx, str.languageCode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [esi + 4]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, str.isUTF8
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
mov ecx, dword [esi + 8]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, 0x6091ff
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x59400d
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x59400d
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.OCICreatorNameDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ProfileLevelIndicationIndexDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
movzx ecx, byte [edi + 1]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x30]
inc eax
mov dword [esp], eax
mov edx, str.profileLevelIndicationIndex
jmp 0x593c0d
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.QoS_Descriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x34], eax
cmp byte [edi + 1], 0
je 0x59412b
mov dword [esp], ebx
mov ecx, eax
mov edx, str.predefined
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
movzx ecx, byte [edi + 1]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, 0x608b79
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x5942b0
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x5942b0
xor eax, eax
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x1c]
mov eax, dword [edi + 4]
call fcn.00425f4e
mov esi, eax
test eax, eax
je 0x5942b0
mov al, byte [esi]
cmp al, 4
je 0x594227
ja 0x59416e
cmp al, 2
je 0x5941c8
cmp al, 3
je 0x5941d5
dec al
jne 0x594257
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.QoSMaxDelay
jmp 0x594191
cmp al, 0x42
je 0x594237
cmp al, 0x43
je 0x594247
cmp al, 0x41
jne 0x594257
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.QoSMaxAUSize
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov ecx, dword [esi + 8]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, 0x608b79
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x594130
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x594130
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.QoSPrefMaxDelay
jmp 0x594191
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.QoSLossProb
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
fld dword [esi + 8]
fstp dword [ebp - 0x38]
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, 0x608b79
mov eax, dword [ebp - 0x2c]
call fcn.004b777d
fld dword [ebp - 0x38]
fstp qword [esp + 8]
mov dword [esp + 4], 0x609261
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov edx, ebx
mov eax, dword [ebp - 0x2c]
call fcn.005929f7
jmp 0x5941b3
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.QoSMaxGapLoss
jmp 0x594191
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.QoSAvgAUSize
jmp 0x594191
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.QoSMaxAURate
jmp 0x594191
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, str.QoSCustom
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
movzx ecx, byte [esi]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, 0x6092a3
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [esi + 0xc]
mov dword [esp + 0xc], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp + 8], eax
mov eax, dword [esi + 8]
mov dword [esp], eax
xor eax, eax
mov dword [esp + 4], eax
mov edx, str.customData
mov eax, dword [ebp - 0x2c]
call fcn.004b7947
jmp 0x5941b3
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.QoS_Descriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.RatingDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov esi, dword [ebp - 0x30]
inc esi
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.ratingEntity
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, word [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.ratingCriteria
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x10]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov eax, dword [edi + 0xc]
mov dword [esp], eax
xor eax, eax
mov dword [esp + 4], eax
mov edx, str.ratingInfo
jmp 0x595002
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.RegistrationDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov esi, dword [ebp - 0x30]
inc esi
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.formatIdentifier
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0xc]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov eax, dword [edi + 8]
mov dword [esp], eax
xor edi, edi
mov dword [esp + 4], edi
mov edx, str.additionalIdentificationInfo
jmp 0x595002
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ShortTextualDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.languageCode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, byte [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.isUTF8
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
test ebx, ebx
je 0x5943ca
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [esp], ebx
mov ecx, esi
mov edx, str.event
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
mov ecx, dword [edi + 0xc]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, 0x6091ff
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov ecx, dword [edi + 0x10]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, 0x60906b
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
je 0x594416
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.ShortTextualDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.SMPTECameraPositionDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x34], eax
movzx ecx, byte [edi + 1]
mov dword [esp + 4], ebx
mov dword [esp], eax
mov edx, str.cameraID
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x594464
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
xor esi, esi
mov dword [ebp - 0x1c], esi
lea edx, [ebp - 0x1c]
mov eax, dword [edi + 4]
call fcn.00425f4e
mov esi, eax
test eax, eax
je 0x5944cf
mov dword [esp], ebx
mov ecx, dword [ebp - 0x34]
mov edx, 0x609373
mov eax, dword [ebp - 0x2c]
call fcn.004b7fa8
movzx ecx, byte [esi]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, 0x60937d
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [esi + 4]
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
mov edx, 0x608b79
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x594469
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x594469
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.SMPTECameraPositionDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.SupplementaryContentIdentification
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov esi, dword [ebp - 0x30]
inc esi
mov ecx, dword [edi + 4]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.languageCode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.supplContentIdentiferTitle
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov ecx, dword [edi + 0xc]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.supplContentIdentiferValue
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
jmp 0x593c15
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.SegmentDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
movsd xmm0, qword [edi + 8]
mov dword [esp], ebx
mov ecx, esi
mov edx, str.startTime
mov eax, dword [ebp - 0x2c]
call fcn.004b787d
movsd xmm0, qword [edi + 0x10]
mov dword [esp], ebx
mov ecx, esi
mov edx, str.duration
mov eax, dword [ebp - 0x2c]
call fcn.004b787d
mov ecx, dword [edi + 0x18]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, 0x6091ff
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
jne 0x594f82
xor ecx, ecx
mov dword [ebp + 8], ecx
mov ecx, dword [ebp - 0x30]
mov edx, str.SegmentDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.MediaTimeDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov ecx, dword [ebp - 0x30]
inc ecx
movsd xmm0, qword [edi + 8]
mov dword [esp], ebx
mov edx, str.mediaTimestamp
mov eax, dword [ebp - 0x2c]
call fcn.004b787d
jmp 0x593c15
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPMP_ToolListDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
test ebx, ebx
je 0x594608
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov eax, dword [ebp - 0x30]
lea ecx, [eax + 1]
mov eax, dword [edi + 4]
xor edx, edx
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], str.ipmpTool
mov edx, dword [ebp - 0x2c]
call fcn.00591372
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPMP_ToolListDescriptor
jmp 0x594fc4
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPMP_Tool
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
lea ecx, [edi + 1]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.IPMP_ToolID
mov eax, dword [ebp - 0x2c]
call fcn.004b78c1
mov ecx, dword [edi + 0x15c]
test ecx, ecx
je 0x594688
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.ToolURL
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
cmp dword [edi + 0x158], 0
je 0x5946d5
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], ebx
mov ecx, esi
mov edx, str.toolParamDesc
mov eax, dword [ebp - 0x2c]
call fcn.004b76b0
lea ecx, [ebx + esi]
mov eax, dword [edi + 0x158]
mov dword [esp], ebx
mov edx, dword [ebp - 0x2c]
call fcn.00582f89
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], ebx
mov ecx, esi
mov edx, str.toolParamDesc
mov eax, dword [ebp - 0x2c]
call fcn.004b7715
test ebx, ebx
je 0x5946e1
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.IPMP_Tool
jmp 0x594fc4
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov eax, edi
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.00592468
mov edx, dword [edi + 0x38]
mov eax, dword [edi + 4]
call fcn.0042852d
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
test ebx, ebx
jne 0x594841
xor ebx, ebx
mov dword [esp], ebx
mov ecx, eax
mov edx, str.MuxInfo
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
cmp dword [ebp - 0x34], 0
je 0x594764
xor ecx, ecx
mov dword [esp + 4], ecx
mov dword [esp], esi
mov ecx, dword [ebp - 0x34]
mov edx, str.fileName
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
jmp 0x594781
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x594781
xor edx, edx
mov dword [esp + 4], edx
mov dword [esp], esi
mov edx, str.fileName
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov ecx, dword [edi + 0xc]
test ecx, ecx
je 0x59479e
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], esi
mov edx, str.streamFormat
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x5947bb
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], esi
mov edx, str.GroupID
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x5947d8
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], esi
mov edx, str.startTime
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x5947f5
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], esi
mov edx, str.duration
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x594812
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], esi
mov edx, str.textNode
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov ecx, dword [edi + 0x1c]
test ecx, ecx
je 0x59482f
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.fontNode
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
xor edx, edx
mov dword [ebp + 8], edx
mov ecx, dword [ebp - 0x30]
mov edx, str.MuxInfo
jmp 0x594fc4
mov dword [esp], 1
mov ecx, dword [ebp - 0x30]
mov edx, str.StreamSource
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
cmp dword [ebp - 0x34], 0
je 0x594886
mov dword [esp + 4], 1
mov dword [esp], esi
mov ecx, dword [ebp - 0x34]
mov edx, 0x6094a8
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
jmp 0x5948a5
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x5948a5
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, 0x6094a8
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [esp], 1
mov ecx, esi
mov edx, str.MP4MuxHints
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x5948e2
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.GroupID
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x594901
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.startTime
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x594920
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.duration
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test byte [edi + 0x28], 1
je 0x59493c
mov dword [esp], 1
mov ecx, esi
mov edx, str.useDataReference
mov eax, dword [ebp - 0x2c]
call fcn.004b7fb6
test byte [edi + 0x28], 2
je 0x594958
mov dword [esp], 1
mov ecx, esi
mov edx, str.noFrameDrop
mov eax, dword [ebp - 0x2c]
call fcn.004b7fb6
mov eax, dword [edi + 0x28]
test al, 8
je 0x594971
mov dword [esp + 4], 1
mov dword [esp], esi
mov ecx, str.implicit
jmp 0x594985
test al, 0x10
je 0x594992
mov dword [esp + 4], 1
mov dword [esp], esi
mov ecx, str.explicit
mov edx, str.SBR_Type
mov eax, dword [ebp - 0x2c]
call fcn.004b8007
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x5949b1
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.textNode
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov ecx, dword [edi + 0x1c]
test ecx, ecx
je 0x5949d0
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.fontNode
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
mov dword [esp + 4], 1
mov dword [esp], 1
mov ecx, dword [ebp - 0x30]
mov edx, str.StreamSource
mov eax, dword [ebp - 0x2c]
call fcn.004b7715
jmp 0x59500f
mov edx, str.BIFSv2Config
cmp dword [edi + 4], 1
jne 0x594a0c
mov edx, str.BIFSConfig
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
movzx ecx, word [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.nodeIDbits
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, word [edi + 0xa]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.routeIDbits
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
cmp dword [edi + 4], 2
jne 0x594a6e
movzx ecx, word [edi + 0xc]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.protoIDbits
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov eax, dword [edi + 0x1c]
test eax, eax
je 0x594b90
mov eax, dword [eax + 4]
mov dword [ebp - 0x3c], eax
test eax, eax
je 0x594b90
test ebx, ebx
je 0x594a93
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [esp], ebx
mov ecx, esi
mov edx, str.AnimationMask
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov ecx, dword [edi + 0x18]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.randomAccess
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
test ebx, ebx
je 0x594ac8
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
xor eax, eax
mov dword [ebp - 0x34], eax
mov eax, dword [edi + 0x1c]
mov edx, dword [ebp - 0x34]
call fcn.00425c8e
mov dword [ebp - 0x38], eax
mov dword [esp], ebx
mov ecx, esi
mov edx, str.ElementaryMask
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x594b0d
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.atNode
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
jmp 0x594b2b
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x594b2b
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.atNode
mov eax, dword [ebp - 0x2c]
call fcn.004b8066
test ebx, ebx
jne 0x594b36
xor eax, eax
mov dword [esp], eax
jmp 0x594b45
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov dword [esp], 1
mov ecx, esi
mov edx, str.ElementaryMask
mov eax, dword [ebp - 0x2c]
call fcn.004b7655
inc dword [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
cmp dword [ebp - 0x34], edx
jne 0x594acd
mov dword [esp], ebx
mov ecx, esi
mov edx, str.AnimationMask
mov eax, dword [ebp - 0x2c]
call fcn.004b7655
mov edx, str.BIFSv2Config
cmp dword [edi + 4], 1
jne 0x594b85
mov edx, str.BIFSConfig
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
jmp 0x594fc4
test ebx, ebx
je 0x594bdd
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
mov esi, dword [ebp - 0x30]
add esi, 2
mov dword [esp], 1
mov ecx, esi
mov edx, str.commandStream
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov ecx, dword [edi + 0x10]
mov dword [esp + 4], 1
mov dword [esp], esi
mov edx, str.pixelMetric
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
mov eax, dword [ebp - 0x2c]
call fcn.004b79ea
jmp 0x594c0a
xor eax, eax
mov dword [esp], eax
mov ecx, esi
mov edx, str.isCommandStream
mov eax, dword [ebp - 0x2c]
call fcn.004b7fb6
mov ecx, dword [edi + 0x10]
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], esi
mov edx, str.pixelMetric
mov eax, dword [ebp - 0x2c]
call fcn.004b7fea
cmp word [edi + 0x14], 0
je 0x594c72
cmp word [edi + 0x16], 0
je 0x594c72
test ebx, ebx
je 0x594c33
inc esi
mov dword [esp], 1
mov ecx, esi
mov edx, 0x60956e
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
movzx ecx, word [edi + 0x14]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.pixelWidth
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
movzx ecx, word [edi + 0x16]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.pixelHeight
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
je 0x594c8d
dec esi
mov eax, dword [ebp - 0x2c]
call fcn.004b7a02
jmp 0x594c76
test ebx, ebx
je 0x594c8d
mov dword [esp], 1
mov ecx, esi
mov edx, str.commandStream
mov eax, dword [ebp - 0x2c]
call fcn.004b7655
dec esi
lea ecx, [esi - 1]
mov edx, str.BIFSv2Config
cmp dword [edi + 4], 1
jne 0x594ca0
mov edx, str.BIFSConfig
mov dword [ebp + 8], ebx
jmp 0x594fc4
mov edx, str.ExpGolombPointsCodec
cmp byte [edi + 3], 0
je 0x594cb8
mov edx, str.Unknown
mov eax, str.full
cmp byte [edi + 1], 0
je 0x594cc8
mov eax, str.mini
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov dword [esp + 4], str._lsr:LASeRHeader_profile__s__pointsCodec__s_
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
movzx eax, byte [edi + 8]
test al, al
je 0x594d02
mov dword [esp + 8], eax
mov dword [esp + 4], str._colorComponentBits__d_
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
cmp byte [edi + 0xc], 0
je 0x594d1b
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], eax
mov dword [esp], str._newSceneIndicator_true_
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fputs
movzx eax, byte [edi + 0xa]
test al, al
je 0x594d3a
mov dword [esp + 8], eax
mov dword [esp + 4], str._coordBits__d_
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
cmp byte [edi + 5], 0
je 0x594d53
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], eax
mov dword [esp], str._useFullRequestHost_true_
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fputs
movzx eax, byte [edi + 4]
test al, al
je 0x594d72
mov dword [esp + 8], eax
mov dword [esp + 4], str._pathComponents__d_
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
movzx eax, word [edi + 6]
test ax, ax
je 0x594d98
cmp ax, 0x3e8
je 0x594d98
mov dword [esp + 8], eax
mov dword [esp + 4], str._timeResolution__d_
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
movsx eax, byte [edi + 9]
test al, al
je 0x594db7
mov dword [esp + 8], eax
mov dword [esp + 4], str._resolution__d_
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
movzx eax, byte [edi + 0xb]
test al, al
je 0x594dd6
mov dword [esp + 8], eax
mov dword [esp + 4], str._scaleBits_minus_coordBits__d_
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call fcn.005adc24
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], eax
mov dword [esp], 0x609672
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fputs
jmp 0x59500f
mov dword [ebp + 8], ebx
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov eax, edi
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.00592a21
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.AuxiliaryVideoData
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
mov ecx, dword [edi + 4]
mov dword [esp + 8], 1
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.aux_video_type
mov eax, dword [ebp - 0x2c]
call fcn.004b7827
mov ecx, dword [edi + 8]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.position_offset_h
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0xc]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.position_offset_v
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x10]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.knear
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x14]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.kfar
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x18]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.parallax_zero
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x1c]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.parallax_scale
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x20]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.dref
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
mov ecx, dword [edi + 0x24]
mov dword [esp + 4], ebx
mov dword [esp], esi
mov edx, str.wref
mov eax, dword [ebp - 0x2c]
call fcn.004b77dc
test ebx, ebx
jne 0x594f82
xor eax, eax
mov dword [ebp + 8], eax
mov ecx, dword [ebp - 0x30]
mov edx, str.LanguageDescriptor
jmp 0x594fc4
mov eax, dword [ebp - 0x30]
lea esi, [eax + 1]
jmp 0x594fd3
mov esi, dword [ebp - 0x30]
inc esi
cmp al, 5
jne 0x594fd3
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.DecoderSpecificInfo
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
test ebx, ebx
je 0x594f91
mov dword [esp + 4], 1
mov dword [esp], esi
mov ecx, 0x609702
mov edx, 0x609707
mov eax, dword [ebp - 0x2c]
call fcn.004b8007
mov ecx, dword [edi + 8]
mov dword [esp + 0xc], 1
mov dword [esp + 8], esi
mov eax, dword [edi + 4]
mov dword [esp], eax
xor edi, edi
mov dword [esp + 4], edi
mov edx, 0x60970c
mov eax, dword [ebp - 0x2c]
call fcn.004b7947
mov eax, dword [ebp - 0x2c]
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.004b7a02
mov ecx, dword [edi + 8]
xor edx, edx
mov dword [esp + 0xc], edx
mov dword [esp + 8], esi
mov eax, dword [edi + 4]
mov dword [esp], eax
xor ebx, ebx
mov dword [esp + 4], ebx
mov edx, 0x609710
mov eax, dword [ebp - 0x2c]
call fcn.004b7947
xor esi, esi
mov dword [ebp + 8], esi
mov ecx, dword [ebp - 0x30]
mov edx, 0x608aee
mov eax, dword [ebp - 0x2c]
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.004b7655
mov dword [esp], ebx
mov ecx, dword [ebp - 0x30]
mov edx, str.DefaultDescriptor
mov eax, dword [ebp - 0x2c]
call fcn.004b75f6
mov ecx, dword [edi + 8]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov eax, dword [edi + 4]
mov dword [esp], eax
xor eax, eax
mov dword [esp + 4], eax
mov edx, 0x609727
mov eax, dword [ebp - 0x2c]
call fcn.004b7947
jmp 0x593c15
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret