Function at 0x459c00
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
push ebx
push esi
lea esi, [eax + 1]
movzx ebx, byte [eax]
movzx eax, byte [esi + 1]
push edi
movzx edi, byte [esi]
shl edi, 8
add edi, eax
cmp ebx, 0xb5
je 0x459c40
push str.Not_a_supported_user_data_SEI_n
call fcn.0048f060
push ebx
push str.__itu_t_35_country_code:__02x_n
call fcn.0048f060
add esp, 0xc
pop edi
pop esi
pop ebx
pop ebp
ret
mov eax, edi
sub eax, 0x2f
je 0x459db1
sub eax, 2
je 0x459c6d
push str.Not_a_supported_user_data_SEI_n
call fcn.0048f060
push edi
push str.__itu_t_35_provider_code:__04x_n
call fcn.0048f060
add esp, 0xc
pop edi
pop esi
pop ebx
pop ebp
ret
push str.Caption_block_in_ANSI_SCTE_128...
push 0
push 8
call fcn.0048e990
mov al, byte [esi + 2]
add esp, 0xc
cmp al, 0x47
jne 0x459d8f
cmp byte [esi + 3], 0x41
jne 0x459d8f
cmp byte [esi + 4], 0x39
jne 0x459d8f
cmp byte [esi + 5], 0x34
jne 0x459d8f
push str.ATSC1_data__..._n
push 0
push 8
call fcn.0048e990
mov al, byte [esi + 6]
add esp, 0xc
cmp al, 3
je 0x459cfc
pop edi
pop esi
pop ebx
cmp al, 6
je 0x459ce1
mov dword [ebp + 0x10], str.SCTE_ATSC_reserved._n
mov dword [ebp + 0xc], 0
mov dword [ebp + 8], 8
pop ebp
jmp fcn.0048e990
mov dword [ebp + 0x10], str.bar_data__unsupported_for_now__n
mov dword [ebp + 0xc], 0
mov dword [ebp + 8], 8
pop ebp
jmp fcn.0048e990
push str.cc_data__finally___n
push 0
push 8
call fcn.0048e990
movzx edi, byte [esi + 7]
lea ebx, [esi + 9]
and edi, 0x1f
add esp, 0xc
lea esi, [ebx + edi*2]
add esi, edi
cmp esi, dword [ebp + 0x10]
jb 0x459d33
push str.Syntax_problem:_Too_many_caption_blocks.
push 0x3e8
call fcn.0048eb50
add esp, 8
cmp byte [esi], 0xff
je 0x459d4a
push str._rWarning__Syntax_problem:_Final_0xFF_marker_missing._Continuing..._n
call fcn.0048f060
add esp, 4
pop edi
pop esi
pop ebx
pop ebp
ret
mov esi, dword [ebp + 8]
movzx ecx, byte [esi]
add ecx, edi
lea eax, [ecx*2 + 1]
add eax, ecx
cmp eax, dword [esi + 8]
jle 0x459eab
lea eax, [ecx + ecx*2]
lea eax, [eax*2 + 1]
push eax
push dword [esi + 4]
call fcn.004f6762
add esp, 8
mov dword [esi + 4], eax
test eax, eax
jne 0x459e99
push str.In_user_data_registered_itu_t_t35:_Out_of_memory_to_allocate_buffer_for_CC_data.
jmp 0x459e8c
cmp al, 0x44
jne 0x459da9
cmp byte [esi + 3], 0x54
jne 0x459da9
cmp byte [esi + 4], 0x47
jne 0x459da9
cmp byte [esi + 5], 0x31
je 0x459eb6
pop edi
pop esi
pop ebx
jmp 0x459cc6
push str.ATSC1_data_____provider_code__0x002F_n
push 0
push 8
call fcn.0048e990
movzx eax, byte [esi + 2]
add esp, 0xc
cmp eax, 3
je 0x459de2
push eax
push str.Not_supported__user_data_type_code:__02x_n
push 0
push 8
call fcn.0048e990
add esp, 0x10
pop edi
pop esi
pop ebx
pop ebp
ret
movzx edi, byte [esi + 4]
movzx ecx, byte [esi + 3]
and edi, 0x1f
test byte [esi + 4], 0x40
jne 0x459e05
push str.process_cc_data_flag__0__skipping_this_caption_block._n
call fcn.0048f060
add esp, 4
pop edi
pop esi
pop ebx
pop ebp
ret
lea ebx, [esi + 6]
lea esi, [edi + edi*2]
lea eax, [esi + 3]
cmp eax, ecx
je 0x459e24
push str.Syntax_problem:_user_data_len___cc_count33.
push 0x3e8
call fcn.0048eb50
add esp, 8
add esi, ebx
cmp esi, dword [ebp + 0x10]
jb 0x459e3d
push str.Syntax_problem:_Too_many_caption_blocks.
push 0x3e8
call fcn.0048eb50
add esp, 8
cmp byte [esi], 0xff
je 0x459e54
push str.Syntax_problem:_Final_0xFF_marker_missing.
push 0x3e8
call fcn.0048eb50
add esp, 8
mov esi, dword [ebp + 8]
movzx ecx, byte [esi]
add ecx, edi
lea eax, [ecx*2 + 1]
add eax, ecx
cmp eax, dword [esi + 8]
jle 0x459eab
lea eax, [ecx + ecx*2]
lea eax, [eax*2 + 1]
push eax
push dword [esi + 4]
call fcn.004f6762
add esp, 8
mov dword [esi + 4], eax
test eax, eax
jne 0x459e99
push str.In_user_data_registered_itu_t_t35:_Not_enough_memory_trying_to_allocate_buffer_for_CC_data.
push 0x1f4
call fcn.0048eb50
add esp, 8
movzx eax, byte [esi]
add eax, edi
lea eax, [eax + eax*2]
lea eax, [eax*2 + 1]
mov dword [esi + 8], eax
push edi
push ebx
push esi
call fcn.00458340
add esp, 0xc
pop edi
pop esi
pop ebx
pop ebp
ret