Index: ModuleDemo/BlueTooth/print/branches/jingchen/do.bat
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/do.bat	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/do.bat	(working copy)
@@ -0,0 +1,241 @@
+cls
+@echo off
+
+::get Rom path
+set now_path=%~dp0
+call:getstrlocation %now_path% ModuleDemo location
+call:get_fix_len_str  %now_path% location soft_path
+set lib_path=%soft_path%Librarier
+set rom_path=%lib_path%\bt_rom
+set program=%rom_path%\program
+set format=%rom_path%\format
+set util=%rom_path%\util
+set patch_path=%now_path%patch
+set sched=%now_path%sched
+set format_ex=%now_path%format
+
+rem @echo rom_path=%rom_path%
+rem @echo program_path=%program%
+rem @echo format_path=%format%
+rem @echo util_path=%util%
+rem @echo patch_path=%patch_path%
+
+setlocal enabledelayedexpansion
+set progs=""
+for /f %%f in ('dir /b /o %program%\*.prog') do @if not %%f==bt.prog if not %%f==patch.prog if not %%f==sim.prog set progs=!progs! + %program%\%%f
+copy %program%\bt.prog + %progs%  output\bt_program23.meta > output\1
+
+set fmts=""
+for /f %%f in ('dir /b /o %format%\*.format') do @if not %%f==bt.format if not %%f==command.format set fmts=!fmts! + %format%\%%f
+copy %format%\bt.format + %fmts%  + %format_ex%\app_module.format  + %format_ex%\le.format + %format_ex%\utility.format + %format%\command.format output\bt_format.meta > output\2
+
+perl %util%/mergepatch.pl 				output/bt_program23.meta %patch_path%
+perl %util%/memalloc.pl 				output/bt_format.meta
+
+cd output
+osiuasm bt_program23 -O-W
+copy ..\sched\DM_module.dat  + ..\sched\109x.dat ..\output\sched.rom
+Creat_patch_Module
+if "%1" equ "eep" (
+	goto genromrevc
+)else (
+  goto downloadram
+)
+
+:genromrevc
+echo off
+@echo Start to generate EEPROM code
+geneep -n
+
+
+:gen_eep_end
+cd ..
+echo **********************************
+echo EEPROM Generated.
+echo Use command "e fp" to download EEPROM.
+echo **********************************
+goto end
+
+
+
+:genrom
+@rem echo on
+perl ..\util\rom2mif.pl romcode
+del ..\..\%FPGA_PATH%\romcode.mif
+copy .\romcode.mif ..\..\%FPGA_PATH%\romcode.mif
+perl ..\util\gen_patch_h.pl >%YC_PATCH_FILE%
+copy .\%YC_PATCH_FILE% ..\..\%MV_PATCH%\%YC_PATCH_FILE%
+copy .\%YC_PATCH_FILE% D:\work\yichip\mv_proj\src\inc\%YC_PATCH_FILE%
+cd ..\..\%FPGA_PATH%
+quartus_cdb btspi -c btspi --update_mif
+quartus_asm --read_settings_files=off --write_settings_files=off btspi -c btspi
+quartus_pgm -c USB-Blaster[USB-0] -m jtag -o "p;.\output\btspi.sof" 
+@echo bitstream_compression=on >1
+@echo memory_map_file=on >> 1
+quartus_cpf -c -o 1 -s EP3C55 -d EPCS16 output\btspi.sof output\btspi.jic  
+@rem quartus_pgm -c USB-Blaster[USB-0] -m jtag -o "pi;.\output\btspi.jic"   
+@del 1
+goto end
+
+
+
+:downloadram
+echo on
+@echo Start to download ram code
+e ku
+e hu
+e su sched.rom
+@echo **********************************
+@echo RAM CODE has been downloaded. 
+@echo **********************************
+cd ..
+
+
+:end
+echo create bt_code.c file
+perl %util%/rom2h.pl  <.\output\eeprom.dat>  .\output\bt_code.c
+goto:eof
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+::------------------------------------------
+::---------------func:getstrlocation-------
+::------------------------------------------
+:getstrlocation
+setlocal
+set "bstr=%1"
+set "cstr=%2"
+set %3=0
+set "num=0"
+set "len_bstr=0"
+set "len_cstr=0"
+
+call:getstrlen %bstr% len_bstr
+call:getstrlen %cstr% len_cstr
+
+:getstrlocation_next
+set /a len_remain=len_bstr-num
+if %len_remain% lss %len_cstr% (
+echo "cann't get str location"
+set /a num =0
+goto getstrlocation_last
+)
+
+call:get_fix_len_str %bstr%  len_cstr compar_str
+
+if not %compar_str%==%cstr% (
+set /a num+=1
+set "bstr=%bstr:~1%"
+goto getstrlocation_next
+)
+
+:getstrlocation_last
+(endlocal
+	set %3=%num%
+)
+goto:eof
+::---------------end:func-------------------
+
+
+::------------------------------------------
+::---------------func:get_fix_len_str-------
+::------------------------------------------
+:get_fix_len_str
+setlocal
+set "getstr=%NULL%"
+set str=%1
+set /a len=%2
+set num=0
+:get_fix_len_str_loop
+set getstr=%getstr%%str:~0,1%
+set /a num+=1
+set str=%str:~1%
+if %num% lss %len% goto get_fix_len_str_loop
+(endlocal
+ set %3=%getstr%
+)
+goto:eof
+::---------------end:func-------------------
+
+
+
+
+::------------------------------------------
+::---------------func:getstrlen-------------
+::------------------------------------------
+:getstrlen
+setlocal
+set str=%1
+set %2=0
+set /a "num=0"
+
+:getstrlen_next
+if "%str%"=="" goto getstrlen_last
+
+if not "%str%"=="" (
+set /a num+=1 
+set "str=%str:~1%"
+goto getstrlen_next
+)
+
+:getstrlen_last
+(endlocal
+	set /a "%2=%num%"
+)
+goto:eof
+::---------------end:func-------------------
+
+
+
+
+::------------------------------------------
+::---------------func:getcharlocation-------
+::------------------------------------------
+:getcharlocation
+setlocal
+set "str=%1"
+set "ch=%2"
+set %3=0
+set /a "num=0"
+
+:getcharnext
+if "%str%"=="" ( 
+set /a num=0
+goto getcharlast
+)
+
+if not "%str%"=="" (
+set /a num+=1
+if "%str:~0,1%"=="%ch%" goto getcharlast
+set "str=%str:~1%"
+goto getcharnext
+)
+:getcharlast
+(endlocal
+set %3=%num%
+)
+goto:eof 
+::---------------end:func-------------------
+
+
+
+
+
+
Index: ModuleDemo/BlueTooth/print/branches/jingchen/format/app_module.format
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/format/app_module.format	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/format/app_module.format	(working copy)
@@ -0,0 +1,121 @@
+bmemalloc(
+	0 mem_module_prepare_write_request_packet
+	2 mem_module_prepare_write_request_PDU_length
+	2 mem_module_prepare_write_request_Channel_ID
+	1 mem_module_prepare_write_request_opcode
+	2 mem_module_prepare_write_request_handle
+	600 mem_temp_prepare_write_request_Data
+	260 mem_le_l2capbuf_new
+	0 mem_le_l2capbuf_new_end
+)
+omemalloc(	
+	2 mem_soft_version_num
+
+	2 mem_current_packet_length
+	1 mem_module_state
+	
+	1 mem_module_spp_lpm_mult
+	1 mem_module_le_lpm_mult	
+	1 mem_module_bluetooth_stauts_by_command
+
+	//ble
+	1 mem_module_le_rx_data_len
+	2 mem_module_le_rx_data_address
+	2 mem_module_le_rx_data_handle
+	//ble write handle
+	2 mem_module_data_write_handle
+	2 mem_module_data_write_handle2
+	//flag
+	1 mem_module_flag
+
+	1 mem_module_hci_notify_len
+	2 mem_module_hci_notify_handle
+	2 mem_module_hci_nofiy_addr
+
+	4 mem_last_transmite_clock
+	
+	300 mem_module_uuid_list
+	0 mem_module_uuid_list_end
+	630 mem_module_le_att_list
+	0 mem_module_le_att_list_end
+	0 mem_module_nv_data
+	34 mem_module_nv_data0
+	34 mem_module_nv_data1
+	34 mem_module_nv_data2
+	34 mem_module_nv_data3
+	34 mem_module_nv_data4
+	1 mem_rfcomm_lmp_dis_flag
+	1 mem_module_rfcomm_disconnect_count
+
+	2 mem_le_buff_len
+	2 mem_le_buff_len_all
+	2 mem_module_prepare_write_request_contw
+	2 mem_module_prepare_write_request_contr
+
+	2 mem_module_master_rx_max
+	
+	1 mem_le_txheader_temp
+	1 mem_le_txlen_temp
+	2 mem_le_txpayload_temp
+	2 mem_le_txcid_temp
+	1 mem_le_l2cap_temp
+	1 mem_le_l2cap_response_temp
+	251 mem_le_txbdy_temp
+	15 mem_rf_init
+	1 mem_ble_dle_enable
+	1 mem_judge_clear_got_tx_falg
+	3 mem_2m0_tmier_address
+
+
+	1 mem_ipcbuf_bt2m0_flag
+	2 mem_ipcbuf_bt2m0_write
+	2 mem_ipcbuf_bt2m0_read
+
+	// Be aware of memory boundaries  limit 0x4bff
+	
+)
+(//mem_ble_dle_enable
+0x00 DLE_ENABLE
+0x01 DLE_DISABLE
+)
+(
+249 LE_BASEBAND_MAX_BUFFER
+)
+(//mem_module_flag
+//bit3~bit7 module states change
+3 MODULE_RECEIVE_COMPLETE_PREPARE_WRITE_REQ
+7 MODULE_RECV_CONFIRM
+)
+(
+	0x300 UART_AIR_CONTROL_THRESHOLD
+)
+
+
+(//Command
+0x15 HCI_CMD_SET_COD
+
+0x76 HCI_CMD_DELETE_CUSTOMIZE_SERVICE
+0x77 HCI_CMD_ADD_SERVICE_UUID
+0x78 HCI_CMD_ADD_CHARACTERISTIC_UUID
+
+
+
+0xfe HCI_CMD_ALL_ROUND
+
+)
+
+(//event
+0x29 HCI_EVENT_UUID_HANDLE
+
+)
+
+
+
+
+
+
+
+
+
+
+
Index: ModuleDemo/BlueTooth/print/branches/jingchen/format/le.format
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/format/le.format	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/format/le.format	(working copy)
@@ -0,0 +1,17 @@
+	/* LE control packet type */
+	(
+	0x14 LL_LENGTH_REQ
+	0x15 LL_LENGTH_RSP
+	)
+(
+0 BIT_CHARACTERISTIC_BROADCAST
+1 BIT_CHARACTERISTIC_READ
+2 BIT_CHARACTERISTIC_WRITE_WITHOUT_RESPONSE
+3 BIT_CHARACTERISTIC_WRITE
+4 BIT_CHARACTERISTIC_NOTIFY
+5 BIT_CHARACTERISTIC_INDICATE
+6 BIT_CHARACTERISTIC_SIGNED_WRITE
+7 BIT_CHARACTERISTIC_EXTENDED_PROPERTIES
+)
+
+
Index: ModuleDemo/BlueTooth/print/branches/jingchen/format/utility.format
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/format/utility.format	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/format/utility.format	(working copy)
@@ -0,0 +1,87 @@
+bmemalloc(
+1 mem_usb_status
+1 mem_usb_fifo_empty
+1 mem_usb_read_len
+64 mem_usb_rxbuf
+2 mem_bufptr
+1 mem_remain
+20 mem_devicedesc
+2 mem_hidreportdesc_kb
+2 mem_hidreportdesc_m
+100 mem_confdesc
+5 mem_string0
+30 mem_string1
+64 mem_string2
+30 mem_string3
+2 mem_usb_zero_packet
+2 mem_usb_ones_packet
+2 mem_usb_two_packet
+1 mem_usb0_state
+
+1 mem_usb_offline_check_gpio
+1 mem_usb_tx_interval
+
+0 mem_usb_clear_mem_start
+0 mem_usb_setup
+1 mem_usb_setup_bmRequestType
+1 mem_usb_setup_bRequest
+1 mem_usb_setup_bValue
+1 mem_usb_setup_bValueH
+2 mem_usb_setup_wIndex
+1 mem_usb_setup_bLength
+1 mem_usb_setup_bLengthH
+64 mem_usb0_setup
+64 mem_usb0_set_report_data
+64 mem_usb0_get_report_data
+1 mem_usb_state
+1 mem_usb_tx_wait
+1 mem_usb_tx_enable
+1 mem_usb_remote_wakeup
+1 mem_usb_clear_remote_wakeup
+1 mem_usb_ep0_stall_status
+1 mem_usb_ep1_stall_status
+1 mem_usb_ep2_stall_status
+1 mem_usb_ep3_stall_status
+2 mem_dsc_info_data_pointer
+1 mem_dsc_info_len
+1 mem_usb0_data_ready_report
+1 mem_usb_tx_win_enable
+1 mem_usb_tx_mac_enable
+1 mem_usb_device_enumeration_endflag
+1 mem_usb_wakestate_onetime_flag
+1 mem_usb_mac_wakeup_trig
+1 mem_usb_set_high_addr_flag
+1 mem_usb_set_protocol_value
+1 mem_usb_set_protocol_status
+1 mem_usb_get_protocol_flag
+1 mem_usb_idle_flag
+1 mem_usb_idle_rate
+2 mem_usb_setup_bValue_temp
+1 mem_usb0_get_set_report
+1 mem_usb_ep1_data
+1 mem_usb_ep2_data
+1 mem_usb_clear_halt
+16 mem_usb_mouse_data
+16 mem_usb_kb_data
+16 mem_usb_kb_multikey
+8 mem_usb_kb_data_sta_data
+8 mem_usb_kb_data_last_data
+3 mem_usb_kb_multikey_sta_data
+3 mem_usb_kb_multikey_last_data
+1 mem_usb_kb_blank_data_enable
+1 mem_usb_kb_mul_blank_data_enable
+1 mem_usb_test_cnt
+0 mem_usb_clear_mem_end
+1 mem_usb_test_kb
+
+256 mem_rssi_noise_buffer
+256 mem_rssi_noise_dg_buffer
+256 mem_rssi_noise_ms_buffer
+256 mem_rssi_noise_kb_buffer
+32 mem_24g_common_temp
+
+)
+/* ============== mark ============= *//*0 - 47 */
+(
+44 mark_buf_full
+)
Index: ModuleDemo/BlueTooth/print/branches/jingchen/output/bt_code.c
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/output/bt_code.c	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/output/bt_code.c	(working copy)
@@ -0,0 +1,334 @@
+const unsigned char bt_code[] = {
+0x00,0x02,0xaa,0x55,0xde,0x0f,0xc2,0x84,0x00,0x14,0xc0,0x00,0x80,0xa4,0xc0,0x30,
+0x00,0x53,0xc0,0x42,0x80,0xaa,0xc0,0x44,0x80,0xcb,0xc0,0x46,0x80,0x2d,0xc0,0x4a,
+0x00,0x8a,0xc0,0x51,0x00,0xd4,0xc0,0x51,0x80,0x95,0xc0,0x54,0x80,0x98,0xc0,0x56,
+0x00,0xdb,0xc0,0x5c,0x00,0xdc,0xc0,0x5d,0x81,0x30,0xc0,0x5e,0x01,0xa8,0xc0,0x63,
+0x80,0x50,0xc0,0x6a,0x80,0x38,0xc0,0x75,0x81,0xc9,0xc0,0x78,0x80,0x6d,0xc0,0x7a,
+0x80,0x82,0x20,0x20,0x4a,0x8b,0xc0,0x01,0x81,0xd3,0xc0,0x02,0x81,0xdf,0xc0,0x03,
+0x01,0xe8,0xc0,0x03,0x81,0xee,0xc0,0x04,0x01,0xf7,0xc0,0x05,0x82,0x08,0xc0,0x09,
+0x82,0x18,0xc0,0x0a,0x02,0xb3,0xc0,0x0e,0x02,0xc8,0xc0,0x0f,0x02,0xf1,0xc0,0x0f,
+0x83,0x1f,0xc0,0x11,0x03,0x81,0xc0,0x19,0x03,0xa9,0xc0,0x1d,0x03,0xbc,0xc0,0x1f,
+0x03,0xc7,0xc0,0x20,0x83,0xd9,0xc0,0x29,0x03,0xdf,0xc0,0x46,0x83,0x06,0xc0,0x4c,
+0x83,0xf3,0x20,0x20,0x4a,0x8b,0x20,0x40,0x4b,0xba,0x20,0x40,0x49,0xc8,0xdf,0x20,
+0x00,0x05,0x20,0x40,0x7c,0x9d,0x20,0x20,0x49,0x79,0x6f,0xe2,0x40,0xce,0x79,0x3f,
+0xfe,0x05,0x1f,0xe6,0x7c,0x09,0x20,0x21,0x00,0x34,0x1f,0xe6,0x7c,0x0f,0x24,0x21,
+0x00,0x36,0x20,0x20,0x49,0xab,0x70,0x40,0xce,0x09,0x20,0x20,0x49,0xab,0x70,0x40,
+0xce,0x0f,0x20,0x20,0x49,0xab,0x20,0x40,0x56,0x92,0x18,0x00,0x24,0x00,0x20,0x40,
+0x56,0x9d,0x1f,0xe2,0x0a,0x00,0x6f,0xe4,0x02,0x62,0x1f,0xe2,0x26,0x00,0x6f,0xe4,
+0x02,0x60,0x98,0x00,0x0c,0x00,0x20,0x40,0x00,0x46,0x1a,0x60,0xa7,0xfc,0x24,0x22,
+0x80,0x40,0x1a,0x42,0x04,0x00,0x20,0x40,0x54,0xb8,0x20,0x20,0x51,0xd6,0xef,0xe2,
+0x00,0x06,0xc0,0x04,0x00,0x49,0x20,0x20,0x54,0xe3,0x18,0xc2,0x22,0x00,0xda,0xc0,
+0x00,0x0f,0x71,0x87,0x00,0x3f,0x71,0x87,0x00,0x3e,0xda,0xc0,0x00,0x00,0x1a,0x22,
+0x0c,0x00,0x20,0x20,0x54,0x2a,0xef,0xe2,0x00,0x06,0xc0,0x04,0x00,0x49,0x20,0x20,
+0x51,0xec,0x6f,0xe2,0x02,0x5d,0xc0,0x00,0x80,0x57,0xc0,0x01,0x00,0x62,0x20,0x20,
+0x4a,0x8b,0x6f,0xe4,0x02,0x59,0x68,0x44,0x01,0x5d,0x98,0x40,0xfe,0x00,0x67,0xe4,
+0x02,0x59,0x1f,0xe6,0x7c,0x00,0x20,0x22,0xca,0x8b,0x68,0x44,0x10,0x00,0x18,0x40,
+0x84,0x04,0x98,0x46,0x7c,0x00,0x20,0x42,0xc7,0x43,0x20,0x20,0x46,0x09,0x6f,0xe4,
+0x02,0x5b,0x68,0x44,0x01,0x5d,0x98,0x40,0xfe,0x00,0x67,0xe4,0x02,0x5b,0x1f,0xe6,
+0x7c,0x00,0x20,0x22,0xca,0x8b,0x68,0x44,0x14,0x00,0x18,0x40,0x84,0x04,0x98,0x46,
+0x7c,0x00,0x20,0x42,0xc7,0x47,0x20,0x20,0x46,0x09,0x79,0x3f,0x80,0x2c,0x70,0x44,
+0xe1,0x00,0x20,0x40,0x79,0x64,0x20,0x40,0x5f,0xf8,0x78,0x57,0x7c,0x00,0x20,0x40,
+0x5a,0xc0,0x20,0x21,0x57,0x83,0x20,0x40,0x4c,0x27,0x20,0x40,0x57,0xed,0x20,0x40,
+0x58,0x63,0x24,0x2c,0x57,0x75,0x20,0x56,0x82,0x9e,0x6f,0xe2,0x4b,0xf2,0x24,0x5a,
+0x00,0x7f,0x20,0x40,0x57,0x91,0x20,0x36,0xd7,0x62,0xc5,0x16,0x57,0x62,0x20,0x20,
+0x57,0x6f,0x79,0x20,0x00,0x2c,0x78,0x56,0xfc,0x00,0x20,0x60,0x00,0x00,0x78,0x37,
+0x7c,0x00,0x20,0x40,0x58,0x9b,0x20,0x56,0x82,0x9e,0x6f,0xe2,0x4b,0xf2,0x24,0x5a,
+0x00,0x7f,0x20,0x36,0xd7,0x62,0xc5,0x16,0x57,0x62,0x20,0x20,0x57,0x6f,0x18,0x42,
+0x7e,0x00,0x20,0x40,0x7d,0x2b,0x1c,0x30,0x7e,0x00,0x79,0x20,0x7e,0x2c,0x20,0x40,
+0x7d,0x14,0x79,0x3f,0xfe,0x2c,0x20,0x40,0x4a,0x76,0x20,0x40,0x7d,0x14,0x20,0x74,
+0x00,0x00,0x20,0x40,0x00,0xa1,0x20,0x20,0x4a,0x2f,0x1b,0x42,0x7e,0x00,0x20,0x40,
+0x00,0xa0,0x20,0x20,0x4a,0xe9,0x6f,0xe4,0x40,0x4e,0x1f,0xe3,0x7e,0x00,0x20,0x40,
+0x7d,0x2b,0x1e,0x02,0x7e,0x00,0x20,0x40,0x7d,0x14,0x1b,0x42,0x04,0x00,0x20,0x40,
+0x00,0xa0,0x20,0x20,0x4b,0x67,0x20,0x40,0x7d,0x14,0x98,0x00,0x0c,0x00,0x79,0x3f,
+0x8c,0x10,0x20,0x20,0x7d,0x1f,0x20,0x40,0x68,0xc4,0x20,0x40,0x60,0xd7,0x20,0x40,
+0x00,0xa8,0x20,0x20,0x40,0x0a,0x20,0x75,0x80,0x00,0x20,0x20,0x7b,0x9a,0x20,0x30,
+0x80,0xba,0x70,0x89,0x55,0xd4,0x20,0x00,0x00,0x04,0x70,0x89,0x55,0xd2,0x20,0x00,
+0x00,0x04,0x70,0x89,0x55,0xd1,0x20,0x00,0x00,0x04,0x6f,0xe2,0x41,0xdf,0xc0,0x00,
+0x00,0xb8,0xc0,0x00,0x80,0xc8,0xc0,0x01,0x00,0xb8,0xc0,0x01,0x80,0xc8,0xc0,0x02,
+0x00,0xc8,0xc0,0x10,0x00,0xc8,0x70,0x89,0x55,0xd0,0x70,0x89,0x56,0xe0,0x18,0x00,
+0x2a,0x08,0x18,0x00,0x2a,0x00,0x78,0x50,0xfc,0x00,0x78,0x50,0x7c,0x00,0x78,0x2f,
+0x7c,0x00,0x70,0x89,0x02,0x00,0x70,0x89,0x01,0x00,0x70,0x89,0x00,0x00,0x70,0x89,
+0x03,0x00,0x70,0x89,0x04,0x70,0x6f,0xe2,0x89,0x06,0x79,0x20,0x7e,0x00,0x67,0xe2,
+0x89,0x06,0x20,0x60,0x00,0x00,0x70,0x89,0x55,0xd0,0x70,0x89,0x56,0xc0,0x20,0x20,
+0x00,0xba,0x60,0x42,0x00,0x17,0x20,0x40,0x49,0x2a,0x20,0x40,0x49,0x80,0x58,0x00,
+0x05,0x00,0x20,0x40,0x4a,0x8e,0x6f,0xe2,0x89,0x06,0x79,0x20,0x7e,0x00,0x67,0xe2,
+0x89,0x06,0x20,0x20,0x49,0x37,0x70,0x89,0x06,0x7c,0x20,0x75,0x80,0x00,0x58,0x00,
+0x00,0x00,0x67,0xe4,0x41,0xdd,0x1c,0x43,0x7e,0x00,0x67,0xe8,0x40,0x94,0x20,0x60,
+0x00,0x00,0x20,0x20,0x4b,0x7f,0x58,0x00,0x00,0xec,0x67,0xe4,0x41,0xf6,0x58,0x00,
+0x00,0xfb,0x67,0xe4,0x41,0xfe,0x58,0x00,0x01,0x05,0x67,0xe4,0x41,0xfa,0x58,0x00,
+0x01,0x17,0x67,0xe4,0x41,0xea,0x58,0x00,0x01,0x1a,0x67,0xe4,0x41,0xf2,0x58,0x00,
+0x01,0x1d,0x67,0xe4,0x45,0x41,0x20,0x40,0x4d,0xaf,0x20,0x40,0x4d,0xbc,0x20,0x40,
+0x4c,0x2a,0x20,0x20,0x50,0x4d,0x1a,0x62,0x7e,0x00,0xc0,0x04,0x80,0xf3,0xc0,0x01,
+0x00,0xf1,0xc0,0x0a,0x00,0xf9,0x20,0x20,0x4d,0xdf,0x70,0x4a,0xd0,0x00,0x20,0x20,
+0x4d,0xfb,0x6f,0xe2,0x4a,0xcf,0x24,0x5a,0x00,0xf7,0x70,0x4a,0xd0,0x06,0x20,0x20,
+0x4e,0x08,0x70,0x4a,0xd0,0x06,0x20,0x60,0x00,0x00,0x20,0x40,0x03,0x8b,0x20,0x20,
+0x4e,0x28,0x20,0x40,0x00,0xfd,0x20,0x20,0x50,0xc3,0x6f,0xe2,0x4a,0xd0,0x20,0x7a,
+0x00,0x00,0x1f,0xe0,0xff,0xff,0x67,0xe2,0x4a,0xd0,0x24,0x7a,0x00,0x00,0x6f,0xe4,
+0x46,0x52,0xc2,0x80,0x4d,0x64,0x20,0x60,0x00,0x00,0x20,0x40,0x4f,0x11,0x20,0x74,
+0x00,0x00,0x1a,0x22,0x7e,0x00,0x67,0xe4,0x46,0x71,0x20,0x40,0x01,0x11,0x67,0xe2,
+0x46,0x70,0x68,0x44,0x04,0x74,0x60,0x44,0x46,0x73,0x20,0x40,0x5b,0x6c,0x24,0x3a,
+0x4a,0x8b,0x6f,0xe2,0x04,0x9e,0x20,0x20,0x50,0x42,0x6f,0xe2,0x4b,0xed,0x24,0x3a,
+0x01,0x15,0x1f,0x22,0x7e,0x00,0x20,0x60,0x00,0x00,0x1a,0x42,0x7e,0x00,0x20,0x60,
+0x00,0x00,0x20,0x40,0x02,0x6c,0x24,0x34,0x4d,0x4b,0x20,0x20,0x4d,0xbd,0x20,0x40,
+0x01,0x1c,0x20,0x20,0x50,0xd3,0x20,0x20,0x4d,0xc8,0x20,0x40,0x4d,0xd7,0x70,0x0a,
+0xff,0x07,0x6f,0xe4,0x04,0xfb,0x20,0x7a,0x00,0x00,0xd8,0x40,0x00,0xff,0x20,0x40,
+0x7d,0xb5,0x1f,0xe2,0x72,0x00,0x6f,0xe4,0x04,0xfb,0x9f,0x26,0x7e,0x00,0x67,0xe4,
+0x04,0xfb,0x1f,0x22,0x7e,0x00,0x20,0x40,0x50,0xa5,0x6f,0xe4,0x04,0xfd,0x1f,0xe2,
+0x0c,0x00,0x20,0x40,0x67,0xc1,0x18,0xc2,0x7e,0x00,0x67,0xe4,0x04,0xfd,0x20,0x40,
+0x67,0xb9,0x20,0x20,0x01,0x1e,0x6f,0xe2,0x0a,0xff,0xc0,0x13,0x81,0xa6,0xc0,0x06,
+0x01,0x41,0xc0,0x3b,0x01,0x4a,0xc0,0x3b,0x81,0x50,0xc0,0x3c,0x01,0x55,0xc0,0x0a,
+0x81,0x8f,0xc0,0x7f,0x01,0x92,0x20,0x20,0x4e,0x5c,0x6f,0xe2,0x89,0x50,0xc0,0xbe,
+0x01,0x3c,0x20,0x20,0x4e,0x86,0x70,0x89,0x50,0x7c,0x70,0x89,0x52,0x0f,0x70,0x89,
+0x55,0xd8,0x70,0x89,0x56,0xf0,0x20,0x20,0x4e,0x86,0x1a,0x22,0x06,0x00,0xef,0xe2,
+0x00,0x03,0xc0,0x00,0x4f,0x1c,0xc0,0x00,0xcf,0x1f,0xc0,0x01,0x4f,0x25,0xc0,0x01,
+0x81,0x48,0x20,0x20,0x50,0x1c,0x58,0x00,0x00,0x01,0x20,0x20,0x4f,0x20,0xd8,0x40,
+0x00,0x0c,0x20,0x40,0x5b,0x4d,0x18,0xc0,0x8b,0xfe,0x58,0x00,0x00,0x00,0xe7,0xe4,
+0x00,0x05,0x20,0x20,0x50,0x1f,0x20,0x40,0x01,0x59,0x20,0x40,0x01,0x76,0x58,0x00,
+0x00,0x00,0xe7,0xe4,0x00,0x05,0x20,0x20,0x01,0x88,0xef,0xe2,0x00,0x03,0x20,0x40,
+0x01,0x5d,0x20,0x40,0x01,0x64,0x20,0x20,0x01,0x88,0x20,0x40,0x01,0x7a,0x58,0x28,
+0x00,0x02,0xe7,0xe6,0x00,0x05,0x20,0x60,0x00,0x00,0x67,0xe2,0x0a,0x96,0x20,0x40,
+0x01,0x7a,0x59,0x28,0x03,0x02,0xe7,0xe8,0x00,0x05,0x6f,0xe2,0x0a,0x96,0xe7,0xe6,
+0x00,0x05,0x20,0x60,0x00,0x00,0x20,0x40,0x01,0x7a,0x20,0x40,0x01,0x76,0x20,0x40,
+0x01,0x76,0x58,0x00,0x00,0x00,0xe7,0xe4,0x00,0x05,0x18,0x40,0x85,0xff,0x20,0x40,
+0x5b,0x4d,0x18,0xc0,0x8c,0x04,0xef,0xe2,0x00,0x06,0xc2,0x82,0x01,0x71,0xc2,0x82,
+0x81,0x71,0x18,0x40,0x84,0x01,0x20,0x60,0x00,0x00,0x20,0x40,0x01,0x7a,0x5a,0x29,
+0x02,0x02,0xe7,0xf0,0x00,0x05,0x18,0x40,0x85,0xff,0x20,0x60,0x00,0x00,0xef,0xe2,
+0x00,0x03,0x1f,0xe2,0x72,0x00,0xe7,0xe2,0x00,0x05,0x20,0x20,0x67,0xed,0x20,0x40,
+0x01,0x7d,0xe0,0x44,0x00,0x05,0x20,0x60,0x00,0x00,0x6f,0xe4,0x44,0x8e,0x98,0x00,
+0x0c,0x00,0xef,0xe4,0x00,0x06,0x20,0x7a,0x00,0x00,0x1f,0xe0,0x84,0x01,0xef,0xe2,
+0x00,0x06,0x98,0xc0,0x8c,0x00,0xef,0xe2,0x00,0x06,0x98,0xc0,0x8c,0x00,0x18,0xc2,
+0x0a,0x00,0x20,0x20,0x01,0x7f,0x60,0x44,0x0a,0x9e,0x70,0x0a,0xff,0x29,0x58,0x00,
+0x00,0x02,0x20,0x40,0x50,0xa5,0x68,0x44,0x0a,0x9e,0xe0,0x44,0x00,0x0a,0x20,0x20,
+0x67,0xb9,0xef,0xe6,0x00,0x03,0x67,0xe6,0x40,0xaa,0x20,0x20,0x50,0x1f,0xef,0xe2,
+0x00,0x03,0xc0,0x00,0x01,0x9d,0xc0,0x00,0x81,0x97,0xc0,0x01,0x01,0xa3,0x20,0x20,
+0x50,0x1c,0xef,0xe4,0x00,0x03,0x1f,0xe2,0x24,0x00,0xef,0xe2,0x00,0x03,0x1f,0xe2,
+0x22,0x00,0xd8,0x40,0x00,0x00,0x20,0x20,0x50,0x2a,0xef,0xe4,0x00,0x03,0x1f,0xe2,
+0x0a,0x00,0xef,0xe2,0x00,0x03,0x1f,0xe2,0x72,0x00,0x20,0x40,0x67,0xda,0x20,0x20,
+0x50,0x1f,0xef,0xe2,0x00,0x03,0x1f,0xe2,0x2c,0x00,0x20,0x20,0x50,0x1f,0x20,0x40,
+0x50,0x1f,0x20,0x20,0x4d,0x85,0x6f,0xe2,0x46,0x79,0xc2,0x81,0x82,0x7e,0x6f,0xe2,
+0x46,0x79,0xc3,0x83,0x80,0x00,0x18,0x40,0xff,0xfd,0xd8,0x40,0x00,0xc8,0x20,0x40,
+0x7d,0xb5,0x68,0x42,0x46,0x7a,0x20,0x40,0x7d,0xb5,0x1f,0xe2,0x22,0x00,0x18,0x42,
+0x7e,0x00,0x9a,0x26,0x7e,0x00,0x67,0xe2,0x46,0x7a,0x68,0x44,0x46,0x7b,0x18,0x40,
+0x85,0xff,0x20,0x40,0x5b,0x4d,0x20,0x3a,0x01,0xc5,0xe8,0x48,0x00,0x06,0x59,0x28,
+0x03,0x02,0x98,0x46,0x7c,0x00,0x24,0x22,0x81,0xc5,0xef,0xe2,0x00,0x06,0xc2,0x82,
+0x81,0xc1,0xc2,0x82,0x4f,0x01,0x20,0x20,0x01,0xc5,0x20,0x40,0x03,0x91,0x68,0x44,
+0x46,0x7b,0x20,0x40,0x5e,0x4d,0x20,0x20,0x4f,0x03,0x70,0x46,0x7a,0x00,0x70,0x0b,
+0x01,0x01,0x20,0x40,0x50,0xe0,0x20,0x20,0x50,0x1c,0x6f,0xe2,0x4b,0xed,0x24,0x3a,
+0x57,0x09,0x20,0x40,0x57,0x09,0x70,0x4a,0xdb,0x01,0x70,0x4a,0xdc,0x00,0x58,0x00,
+0x00,0x00,0x67,0xf0,0x4a,0xd1,0x58,0x00,0x00,0x1b,0x67,0xe4,0x4a,0xd9,0x20,0x60,
+0x00,0x00,0x20,0x40,0x49,0xba,0x78,0x23,0xfc,0x00,0x78,0x24,0xfc,0x00,0x09,0x80,
+0x00,0x08,0x19,0x89,0x7e,0x00,0x67,0xe2,0x02,0xd5,0x09,0x80,0x00,0x08,0x19,0x89,
+0x7e,0x00,0xe7,0xe2,0x00,0x05,0x1f,0xe2,0x72,0x00,0x20,0x3a,0x58,0x8b,0x20,0x20,
+0x58,0x87,0x20,0x40,0x58,0xa3,0x20,0x40,0x49,0x15,0x68,0x42,0x00,0x17,0x20,0x40,
+0x49,0x1c,0x20,0x00,0x05,0xdc,0x20,0x40,0x49,0x21,0x78,0x28,0x7c,0x00,0xd9,0x60,
+0x15,0x7c,0x20,0x20,0x58,0x69,0x20,0x40,0x57,0xaf,0x20,0x40,0x01,0xeb,0x20,0x20,
+0x58,0xa7,0x20,0x36,0x80,0xd0,0xc5,0x16,0x00,0xd0,0x20,0x20,0x57,0xbe,0x6f,0xe2,
+0x4b,0xed,0x24,0x3a,0x58,0xb3,0x6f,0xe2,0x4a,0xdb,0x08,0x00,0x86,0x08,0xef,0xe2,
+0x00,0x06,0x1f,0xe2,0x72,0x00,0x08,0x00,0x86,0x08,0x20,0x22,0xd8,0xbc,0x20,0x20,
+0x58,0xb9,0x6f,0xe2,0x4b,0xed,0x24,0x3a,0x58,0xc4,0x6f,0xe2,0x44,0x56,0xc0,0x00,
+0xd8,0xd3,0x6f,0xe2,0x44,0x57,0x1f,0xf2,0x7e,0x00,0x1f,0xeb,0xfe,0x00,0x67,0xe2,
+0x4a,0xdb,0x68,0x42,0x43,0x41,0x18,0x40,0xfe,0x06,0x67,0xe2,0x4a,0xdc,0x6f,0xec,
+0x44,0x72,0x67,0xec,0x4a,0xdd,0x18,0x42,0x72,0x00,0xd8,0xc0,0x43,0x42,0x20,0x40,
+0x7c,0xcf,0x20,0x20,0x58,0xde,0x6f,0xe2,0x4b,0xed,0x24,0x3a,0x58,0xf7,0xd8,0x40,
+0x00,0x04,0x6f,0xe2,0x44,0x57,0x7d,0x3a,0x04,0x06,0x60,0x42,0x4a,0xdb,0x68,0x42,
+0x43,0x61,0x18,0x40,0xfe,0x06,0x67,0xe2,0x4a,0xdc,0x6f,0xec,0x44,0x72,0x67,0xec,
+0x4a,0xdd,0xd8,0xc0,0x43,0x62,0x18,0x42,0x72,0x00,0x20,0x40,0x7c,0xcf,0x20,0x40,
+0x58,0xa1,0x20,0x20,0x5a,0xe2,0x20,0x40,0x5a,0xc9,0xc6,0x16,0x00,0x00,0x20,0x40,
+0x59,0x9a,0x6f,0xe2,0x02,0xd5,0x2f,0xef,0xfe,0x04,0x79,0x20,0x80,0x2a,0x1f,0xe3,
+0x7e,0x00,0x98,0x42,0xfe,0x00,0x2f,0xef,0xfe,0x02,0x79,0x20,0x80,0x0f,0xc6,0x07,
+0x80,0x00,0x6f,0xe2,0x02,0xd6,0x20,0x3a,0x02,0x2b,0x6f,0xe2,0x04,0x3b,0xc3,0x02,
+0x02,0x2b,0x20,0x40,0x73,0x42,0x20,0x40,0x72,0xb2,0x7d,0x3a,0x00,0x0f,0x24,0x7a,
+0x00,0x00,0x68,0x42,0x04,0x52,0x79,0x40,0x04,0x02,0x60,0x42,0x04,0x52,0x6f,0xe2,
+0x4b,0xed,0x24,0x7a,0x00,0x00,0x20,0x20,0x02,0x31,0x6f,0xe2,0x02,0xd6,0x20,0x7a,
+0x00,0x00,0x6f,0xe2,0x02,0xd5,0x2f,0xe0,0x06,0x01,0x20,0x20,0x82,0x59,0x2f,0xe0,
+0x06,0x02,0x20,0x20,0x82,0x39,0x20,0x60,0x00,0x00,0x6f,0xe4,0x02,0xd9,0xc1,0x82,
+0x00,0x00,0xef,0xe6,0x00,0x06,0x67,0xe6,0x04,0x73,0x79,0x20,0x00,0x0f,0xc0,0x09,
+0x02,0x4d,0xc0,0x29,0x02,0x4f,0xc0,0x0b,0x02,0x46,0xc0,0x0c,0x5e,0x3b,0xc0,0x01,
+0x5c,0xa1,0xc0,0x0f,0x03,0x8b,0x79,0x3f,0x80,0x0f,0x20,0x60,0x00,0x00,0x58,0x00,
+0x0b,0x1e,0x67,0xe4,0x4a,0xd5,0x20,0x40,0x02,0x52,0x1f,0x20,0xf3,0xfe,0xda,0x20,
+0x02,0xe0,0x20,0x40,0x5a,0xbe,0x20,0x20,0x02,0x72,0x20,0x40,0x02,0x4f,0x20,0x20,
+0x02,0x69,0x20,0x40,0x02,0x52,0xda,0x20,0x02,0xde,0x20,0x20,0x5a,0xbe,0x6f,0xe2,
+0x02,0xd6,0x1f,0xe0,0xf3,0xf9,0x1f,0xe0,0xff,0xfc,0x67,0xe4,0x4a,0xd1,0xe8,0x44,
+0x00,0x06,0x60,0x44,0x4a,0xd3,0x20,0x60,0x00,0x00,0x79,0x20,0x00,0x0f,0x20,0x40,
+0x02,0x61,0x6f,0xe2,0x04,0x73,0xc0,0x09,0x02,0x69,0xc0,0x0b,0x02,0x68,0xc1,0x29,
+0x00,0x00,0x79,0x3f,0x80,0x0f,0x20,0x60,0x00,0x00,0x6f,0xe2,0x02,0xd6,0x68,0x44,
+0x4a,0xd1,0x98,0x40,0x84,0x00,0x60,0x44,0x4a,0xd1,0x1f,0xe2,0x72,0x00,0xda,0x20,
+0x02,0xd7,0x20,0x20,0x5a,0xbe,0x20,0x20,0x02,0x72,0x20,0x40,0x02,0x6c,0x24,0x74,
+0x00,0x00,0x20,0x20,0x5e,0x13,0x20,0x40,0x7d,0xc1,0x6f,0xe4,0x4a,0xd3,0x68,0x44,
+0x4a,0xd1,0x98,0x46,0x7c,0x00,0x24,0x62,0x80,0x00,0x20,0x20,0x7d,0xbf,0x6f,0xe4,
+0x4a,0xd5,0x1f,0xe2,0x0a,0x00,0x6f,0xe2,0x02,0xd6,0x1f,0xe2,0x72,0x00,0x20,0x40,
+0x7c,0xdc,0x18,0xa2,0x7e,0x00,0x67,0xe4,0x4a,0xd5,0x20,0x40,0x02,0x6c,0x24,0x74,
+0x00,0x00,0xd8,0xe0,0x00,0x03,0x20,0x40,0x50,0xe6,0x20,0x20,0x02,0x7e,0x20,0x40,
+0x5c,0x74,0x24,0x7a,0x00,0x00,0x70,0x0b,0x22,0x17,0x58,0x00,0x0b,0x1e,0x67,0xe4,
+0x4a,0xd7,0x68,0x44,0x0b,0x1e,0x18,0x40,0x84,0x04,0x58,0x00,0x00,0xf9,0x20,0x40,
+0x7d,0xb5,0x1f,0xe0,0xa5,0xfc,0x18,0x00,0x02,0x02,0x1f,0xe2,0x22,0x00,0x20,0x40,
+0x5c,0x32,0x6f,0xe4,0x4a,0xd7,0x1f,0xe2,0x0c,0x00,0x1a,0x22,0x72,0x00,0x20,0x40,
+0x7c,0xcf,0x18,0xc2,0x7e,0x00,0x67,0xe4,0x4a,0xd7,0x6f,0xe4,0x0b,0x1e,0x9a,0x46,
+0x7e,0x00,0x67,0xe4,0x0b,0x1e,0x20,0x3a,0x02,0x9a,0xd8,0x40,0x00,0xf9,0x20,0x40,
+0x7d,0xb5,0x1f,0xe2,0x24,0x00,0x18,0x00,0x02,0x01,0x20,0x20,0x02,0x89,0x58,0x00,
+0x00,0x00,0x67,0xe4,0x4a,0xd5,0xd8,0xe0,0x00,0x03,0x20,0x20,0x50,0xe2,0x70,0x4b,
+0xf2,0x00,0x68,0x44,0x4f,0xf0,0x6f,0xe4,0x4f,0xf2,0x98,0x46,0x22,0x00,0x68,0x44,
+0x4f,0xf4,0x6f,0xe4,0x4f,0xf6,0x60,0x44,0x4b,0xf5,0x67,0xe4,0x4b,0xf3,0x98,0x46,
+0x7e,0x00,0x20,0x21,0x02,0xae,0x20,0x22,0x82,0xae,0x1a,0x22,0x04,0x00,0x6f,0xe4,
+0x4b,0xf3,0x98,0x40,0xfe,0x00,0x68,0x44,0x4b,0xf5,0x98,0x46,0x7e,0x00,0xd8,0x40,
+0x03,0x00,0x98,0x46,0x7c,0x00,0x24,0x61,0x00,0x00,0x70,0x4b,0xf2,0x01,0x20,0x60,
+0x00,0x00,0x68,0x42,0x04,0x52,0x28,0x4c,0x00,0x05,0x20,0x60,0x80,0x00,0x6f,0xe2,
+0x02,0xd5,0x1f,0xe3,0xfe,0x00,0x98,0x42,0xfe,0x00,0xc4,0x01,0x80,0x00,0x79,0x3f,
+0x84,0x05,0x79,0x40,0x04,0x03,0x60,0x42,0x04,0x52,0x28,0x40,0x06,0x03,0x24,0x60,
+0x80,0x00,0x6f,0xe2,0x4b,0xed,0x24,0x3a,0x02,0xc3,0x6f,0xe2,0x4a,0xdd,0x20,0x20,
+0x02,0xc4,0x6f,0xe2,0x43,0xb0,0xc0,0x02,0xd9,0xac,0x6f,0xe2,0x44,0x97,0xc0,0x01,
+0x59,0xb0,0x20,0x60,0x00,0x00,0x6f,0xe2,0x04,0x52,0xc3,0x82,0x80,0x00,0x20,0x40,
+0x5a,0x1c,0x6f,0xe2,0x4b,0xed,0x24,0x3a,0x59,0xfc,0x20,0x40,0x5c,0x53,0x20,0x3a,
+0x5a,0x3e,0xef,0xe2,0x00,0x06,0xe8,0x42,0x00,0x06,0x18,0x42,0x22,0x00,0x9a,0x26,
+0x7e,0x00,0x20,0x40,0x02,0xed,0x20,0x40,0x7d,0xb5,0x1f,0xe2,0x04,0x00,0xef,0xe2,
+0x00,0x06,0x1f,0xe2,0x02,0x00,0x1a,0x22,0x7e,0x00,0x98,0xc0,0x8c,0x00,0xd8,0xa0,
+0x4a,0xdd,0x18,0x42,0x72,0x00,0x20,0x40,0x7c,0xcf,0x20,0x40,0x5a,0x2e,0x20,0x40,
+0x5a,0x40,0x20,0x40,0x5c,0x53,0xef,0xe2,0x00,0x06,0x1f,0xe2,0x22,0x00,0x18,0xc2,
+0x26,0x00,0xe8,0x42,0x00,0x06,0x18,0x42,0x24,0x00,0x9a,0x46,0x7e,0x00,0x20,0x40,
+0x02,0xed,0x20,0x40,0x7d,0xb5,0x9a,0x40,0xfe,0x00,0xe7,0xe2,0x00,0x13,0x9a,0x26,
+0x7c,0x00,0x24,0x62,0x80,0x00,0x20,0x20,0x5c,0x76,0x18,0xc2,0x0a,0x00,0x68,0x44,
+0x4a,0xd9,0x18,0xa2,0x0c,0x00,0x20,0x60,0x00,0x00,0x6f,0xe2,0x4b,0xed,0x24,0x3a,
+0x5a,0x41,0x60,0x42,0x4a,0xdc,0x68,0x42,0x04,0x52,0x79,0x20,0x04,0x05,0x18,0x41,
+0x7e,0xfc,0x98,0x21,0xfe,0x00,0x67,0xe2,0x04,0x52,0x1f,0xe1,0x7e,0x1f,0x28,0x0f,
+0xfe,0x29,0x79,0x20,0xfe,0x04,0x67,0xe2,0x4a,0xdb,0x6f,0xe2,0x4a,0xdb,0x28,0x20,
+0x06,0x01,0x24,0x20,0x83,0x02,0x6f,0xe2,0x4a,0xdc,0x20,0x7a,0x00,0x00,0x6f,0xe2,
+0x04,0x3b,0xc4,0x02,0x00,0x00,0x20,0x40,0x73,0x42,0x20,0x20,0x72,0x99,0x6f,0xe2,
+0x4b,0xed,0x24,0x3a,0x72,0x9a,0xda,0x60,0x4a,0xdb,0x68,0x4a,0x43,0xd5,0x20,0x40,
+0x72,0x77,0x18,0x00,0x70,0x08,0x98,0x00,0x5e,0x00,0x18,0x00,0x22,0x00,0x20,0x40,
+0x72,0x63,0x20,0x40,0x72,0xe8,0xda,0x60,0x4a,0xdd,0x6f,0xe2,0x4a,0xdc,0x1f,0xe0,
+0xa5,0xff,0x9a,0x60,0x8a,0x00,0x18,0x00,0x70,0x0c,0x1d,0xe2,0x7e,0x00,0xe7,0xe8,
+0x00,0x05,0x20,0x40,0x72,0x8e,0x6f,0xe2,0x4a,0xdc,0x1f,0xe0,0xfe,0x04,0x67,0xe2,
+0x4a,0xdc,0x68,0x4a,0x43,0xd5,0x18,0x40,0x84,0x01,0x60,0x4a,0x43,0xd5,0x20,0x60,
+0x00,0x00,0xc6,0x07,0x80,0x00,0xc6,0x16,0x00,0x00,0x20,0x40,0x5c,0x70,0x24,0x7a,
+0x00,0x00,0x6f,0xe2,0x02,0xd5,0x1f,0xe1,0x7e,0x03,0x67,0xe2,0x44,0xde,0xef,0xe2,
+0x00,0x06,0x67,0xe2,0x44,0xdd,0x20,0x7a,0x00,0x00,0x18,0xc2,0x7e,0x00,0x67,0xe4,
+0x44,0xdf,0x6f,0xe2,0x44,0xde,0xc0,0x01,0x83,0x60,0x20,0x40,0x03,0x32,0xd8,0xe0,
+0x00,0x03,0x24,0x34,0x4b,0xec,0x20,0x40,0x4b,0xf0,0x20,0x20,0x5a,0x6b,0x6f,0xe2,
+0x44,0xde,0xc0,0x01,0x03,0x36,0xc0,0x00,0x83,0x4a,0x20,0x60,0x00,0x00,0x6f,0xe4,
+0x44,0xdf,0x1f,0xe2,0x0c,0x00,0xef,0xe4,0x00,0x06,0x67,0xe4,0x44,0xce,0xef,0xe4,
+0x00,0x06,0x20,0x40,0x5a,0x7a,0x24,0x74,0x00,0x00,0x68,0x42,0x44,0xdd,0x60,0x42,
+0x44,0xd0,0x6f,0xe4,0x44,0xce,0x1f,0xe0,0xfe,0x04,0x98,0x46,0x7c,0x00,0x20,0x22,
+0xfd,0xbf,0x6f,0xe2,0x44,0xdd,0x1f,0xe2,0x72,0x00,0xd8,0xa0,0x0d,0x7d,0x6f,0xe4,
+0x44,0xdf,0x1f,0xe2,0x0c,0x00,0x20,0x40,0x7c,0xdc,0x20,0x20,0x7d,0xc1,0x20,0x40,
+0x5a,0x99,0x24,0x74,0x00,0x00,0x6f,0xe2,0x44,0xd0,0xd8,0xa0,0x0d,0x7d,0x98,0xa0,
+0xa2,0x00,0x68,0x42,0x44,0xdd,0x98,0x40,0xfe,0x00,0x67,0xe2,0x44,0xd0,0x6f,0xe2,
+0x44,0xdd,0x1f,0xe2,0x72,0x00,0x1a,0x22,0x0a,0x00,0x6f,0xe4,0x44,0xdf,0x1f,0xe2,
+0x0c,0x00,0x20,0x40,0x7c,0xcf,0x58,0x00,0x0d,0x7d,0x67,0xe4,0x44,0xdf,0x6f,0xe4,
+0x44,0xce,0x1f,0xe0,0xfe,0x04,0x68,0x42,0x44,0xd0,0x98,0x46,0x7c,0x00,0x20,0x22,
+0xfd,0xbf,0x20,0x20,0x7d,0xc1,0x6f,0xe2,0x02,0xd7,0xc0,0x04,0x03,0x64,0xc0,0x0a,
+0x03,0x72,0x20,0x20,0x60,0x45,0xda,0x20,0x00,0x09,0xda,0x40,0x00,0x09,0x20,0x40,
+0x5c,0x22,0x58,0x00,0x00,0x21,0xe7,0xf0,0x00,0x05,0x20,0x40,0x03,0x6b,0x20,0x60,
+0x00,0x00,0x6f,0xe2,0x02,0xd8,0x1f,0xe1,0x7e,0x20,0x20,0x3a,0x03,0x70,0x70,0x4b,
+0xed,0x00,0x20,0x60,0x00,0x00,0x70,0x4b,0xed,0x01,0x20,0x60,0x00,0x00,0xef,0xe4,
+0x00,0x06,0x67,0xe4,0x4a,0xd9,0x20,0x20,0x03,0x75,0xda,0x20,0x00,0x09,0xda,0x40,
+0x00,0x15,0x20,0x40,0x5c,0x22,0x58,0x00,0x00,0xfb,0xe7,0xe4,0x00,0x05,0x58,0x00,
+0x08,0x48,0xe7,0xe4,0x00,0x05,0x58,0x00,0x00,0xfb,0xe7,0xe4,0x00,0x05,0x58,0x00,
+0x08,0x48,0xe7,0xe4,0x00,0x05,0x20,0x60,0x00,0x00,0xef,0xe4,0x00,0x06,0xc0,0x02,
+0x03,0x86,0xc0,0x03,0x5e,0xd4,0xc0,0x02,0xde,0x96,0x20,0x60,0x00,0x00,0xef,0xe6,
+0x00,0x06,0x67,0xe6,0x04,0x73,0xc0,0x08,0x03,0x8d,0xc0,0x04,0x03,0x96,0x20,0x20,
+0x5c,0x8d,0xd8,0xe0,0x00,0x07,0x20,0x20,0x50,0xe2,0x20,0x40,0x5e,0x91,0x20,0x40,
+0x5a,0xb3,0xd9,0x60,0x00,0x01,0x20,0x20,0x5d,0xde,0xd8,0xe0,0x00,0x07,0x20,0x20,
+0x50,0xe6,0x20,0x40,0x5c,0xa9,0x67,0xe4,0x44,0x78,0x20,0x20,0x5c,0xa2,0x20,0x40,
+0x5e,0x91,0x20,0x40,0x5a,0xbb,0x20,0x20,0x03,0x99,0x68,0x44,0x44,0x2c,0x60,0x44,
+0x0a,0x9e,0x20,0x40,0x5b,0x36,0x20,0x40,0x5b,0x4d,0x18,0xc0,0x8d,0xfe,0x18,0xc2,
+0x7e,0x00,0x67,0xe4,0x04,0x98,0x68,0x44,0x44,0x44,0x58,0x00,0x2a,0x00,0x98,0x46,
+0x7c,0x00,0x20,0x22,0x83,0xa5,0x20,0x20,0x5d,0x2d,0xd8,0x40,0x2a,0x00,0x20,0x40,
+0x5b,0x5c,0x20,0x3a,0x5e,0x56,0x20,0x20,0x5d,0x8b,0x6f,0xe2,0x4b,0xed,0x24,0x3a,
+0x5b,0xd5,0x78,0x55,0xfc,0x00,0x20,0x37,0x03,0xae,0x24,0x36,0xdb,0xe6,0x20,0x40,
+0x4b,0xa0,0x6f,0xe4,0x40,0xc1,0x67,0xe4,0x04,0x49,0x24,0x36,0xcb,0xb3,0xc5,0x07,
+0xcb,0xb3,0x6f,0xe2,0x44,0xdd,0x24,0x3a,0x4b,0xb3,0x6f,0xe2,0x4a,0xdc,0x24,0x3a,
+0x4b,0xb3,0x6f,0xe2,0x44,0xbb,0xc2,0x82,0xcb,0xb3,0x6f,0xe2,0x04,0x3b,0xc2,0x82,
+0xcb,0xb3,0x20,0x20,0x4b,0x95,0x6f,0xe2,0x00,0x7d,0xc0,0x08,0x03,0xc0,0xc0,0x0b,
+0x83,0xc6,0x20,0x20,0x60,0xfe,0x68,0x42,0x05,0x4e,0x18,0x46,0x7c,0x06,0x20,0x21,
+0x03,0xc4,0x20,0x20,0x62,0x06,0x70,0x00,0x7e,0x24,0x20,0x20,0x61,0x34,0x20,0x20,
+0x62,0xb8,0x78,0x54,0x7c,0x00,0x20,0x40,0x66,0xa3,0x6f,0xe2,0x00,0x48,0x20,0x7a,
+0x00,0x00,0xc2,0x83,0x83,0xcd,0x20,0x20,0x63,0xf2,0xc0,0x42,0x03,0xd0,0xc0,0x41,
+0x83,0xd3,0x20,0x20,0x64,0x21,0x20,0x40,0x03,0xd6,0x6f,0xe2,0x00,0x48,0x20,0x20,
+0x64,0x7b,0x20,0x40,0x03,0xd6,0x6f,0xe2,0x00,0x48,0x20,0x20,0x64,0xef,0x6f,0xe2,
+0x46,0x2c,0x20,0x3a,0x65,0x0d,0x20,0x20,0x65,0x06,0x6f,0xe2,0x40,0x9e,0x79,0x3f,
+0xfe,0x03,0x67,0xe2,0x40,0x9e,0x58,0x00,0x00,0x01,0x67,0xe4,0x04,0xca,0x20,0x60,
+0x00,0x00,0x6f,0xe2,0x04,0xf9,0xc0,0x1f,0xe9,0x3e,0xc0,0x39,0xe9,0x47,0xc0,0x77,
+0x83,0xe5,0xc0,0x29,0xea,0x05,0x20,0x60,0x00,0x00,0x6f,0xe4,0x04,0xfd,0x1f,0xe2,
+0x0c,0x00,0x20,0x40,0x69,0x84,0x6f,0xe2,0x04,0xff,0xc0,0x20,0xe9,0x66,0xc0,0x20,
+0x69,0x6e,0xc0,0x38,0xe9,0xa7,0xc0,0x38,0x03,0xef,0xc0,0x24,0xe9,0xbe,0x20,0x20,
+0x6a,0x58,0x70,0x0a,0x95,0x08,0x20,0x40,0x7b,0xab,0x20,0x40,0x69,0x72,0x20,0x20,
+0x69,0xba,0x6f,0xe2,0x44,0x90,0x20,0x3a,0x5e,0xd0,0x20,0x40,0x74,0x38,0x20,0x20,
+0x79,0x32,0xff,0x13,0xaa,0x55,0x40,0x00,0x00,0x40,0x02,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x20,0x22,0x10,0x00,0x0c,0x12,
+0x00,0x19,0x80,0x00,0x20,0x00,0x00,0x08,0x22,0x00,0xe8,0x09,0x18,0xd0,0x04,0x00,
+0x04,0x44,0x02,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x02,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xaa,0x55,0x01,0x00,0x92,0x40,
+0x0a,0xaa,0x55,0x01,0x00,0x54,0x46,0x40,0xaa,0x55,0x01,0x00,0x06,0x42,0x13,0xaa,
+0x55,0x01,0x00,0x5b,0x41,0x01,0xaa,0x55,0x08,0x00,0x98,0x40,0xff,0xfb,0x8f,0xfa,
+0x8b,0x85,0x59,0x83,0xaa,0x55,0x03,0x00,0x14,0x42,0x25,0x4a,0x05,0xaa,0x55,0x04,
+0x00,0x3d,0x45,0x01,0xff,0x00,0x03,0xaa,0x55,0x03,0x00,0x2d,0x46,0x03,0x00,0x04,
+0xaa,0x55,0x01,0x00,0x2c,0x46,0x01,0xaa,0x55,0x06,0x00,0x57,0x46,0x04,0x30,0x30,
+0x30,0x30,0x30,0xaa,0x55,0x10,0x00,0xf0,0x4f,0x00,0x1c,0xff,0x1f,0x00,0x1c,0x00,
+0x1c,0x00,0x4c,0xe0,0x4f,0x00,0x4c,0x00,0x4c,0xaa,0x55,0x03,0x00,0xef,0x4b,0x00,
+0x80,0x02,0xaa,0x55,0x02,0x00,0x68,0x46,0x10,0x0d,0xaa,0x55,0x01,0x00,0x6c,0x46,
+0x03,0xaa,0x55,0x01,0x00,0x6f,0x46,0x07,0xaa,0x55,0x03,0x00,0xaa,0x40,0x24,0x04,
+0x04,0xaa,0x55,0x01,0x00,0x79,0x46,0x00,0xaa,0x55,0x01,0x00,0xcf,0x4a,0x00,0xaa,
+0x55,0x01,0x00,0x91,0x40,0x00,0xaa,0x55,0x03,0x00,0x54,0x41,0x00,0x01,0x08,0xaa,
+0x55,0x01,0x00,0x74,0x41,0x02,0xaa,0x55,0x01,0x00,0x93,0x40,0x00,0xaa,0x55,0x01,
+0x00,0x6d,0x46,0x28,0xaa,0x55,0x06,0x00,0xa0,0x40,0xa7,0x2a,0x2a,0x21,0x10,0x55,
+0xaa,0x55,0x0f,0x00,0xe7,0x44,0x0e,0x33,0x31,0x32,0x31,0x20,0x4d,0x6f,0x75,0x20,
+0x42,0x74,0x31,0x32,0x31,0xaa,0x55,0x03,0x00,0xe4,0x41,0x20,0x00,0x02,0xaa,0x55,
+0x01,0x00,0xe8,0x41,0x01,0xaa,0x55,0x01,0x00,0x90,0x44,0x01,0xaa,0x55,0x01,0x00,
+0x5f,0x44,0x07,0xaa,0x55,0x01,0x00,0x98,0x44,0x00,0xaa,0x55,0x04,0x00,0x75,0x46,
+0x2d,0x00,0x2f,0x00,0xaa,0x55,0x01,0x00,0x40,0x43,0x00,0xaa,0x55,0x02,0x00,0x54,
+0x44,0x40,0x00,0xaa,0x55,0x01,0x00,0x6e,0x46,0x05,0xaa,0x55,0x06,0x00,0x72,0x44,
+0x21,0x22,0x01,0x33,0x02,0x3a,0xaa,0x55,0x0d,0x00,0x81,0x43,0x0c,0x33,0x31,0x32,
+0x31,0x20,0x4d,0x6f,0x75,0x20,0x42,0x6c,0x65,0xaa,0x55,0x04,0x00,0x41,0x43,0x03,
+0x02,0x01,0x02,0xaa,0x55,0x12,0x00,0x61,0x43,0x0e,0x02,0x01,0x02,0x0d,0x09,0x33,
+0x31,0x32,0x31,0x20,0x4d,0x6f,0x75,0x20,0x42,0x6c,0x65,0xaa,0x55,0x07,0x00,0x25,
+0x44,0x02,0x03,0x00,0x05,0x10,0x02,0x03,0xaa,0x55,0x08,0x00,0x68,0x44,0x08,0x00,
+0x10,0x00,0x00,0x00,0x2c,0x01,0xaa,0x55,0x01,0x00,0x78,0x44,0xf0,0xaa,0x55,0x01,
+0x00,0x7a,0x44,0x17,0xaa,0x55,0x02,0x00,0xcc,0x44,0x31,0x00,0xaa,0x55,0x01,0x00,
+0xd1,0x40,0x01,0xaa,0x55,0x0c,0x00,0x49,0x45,0x05,0x03,0x00,0x12,0x00,0x01,0x01,
+0x00,0x01,0x11,0x03,0x00,0xaa,0x55,0x12,0x00,0x5f,0x45,0x01,0x07,0x00,0x00,0x00,
+0x00,0xde,0xca,0xfa,0xde,0xde,0xca,0xde,0xaf,0xde,0xca,0xca,0xff,0xaa,0x55,0x02,
+0x00,0x47,0x45,0x83,0x46,0xaa,0x55,0xb8,0x00,0x83,0x46,0x03,0x12,0x00,0x01,0x00,
+0x00,0x01,0x00,0x01,0x00,0x01,0x36,0x00,0x52,0x09,0x00,0x00,0x0a,0x00,0x01,0x00,
+0x01,0x09,0x00,0x01,0x35,0x03,0x19,0x12,0x00,0x09,0x00,0x04,0x35,0x0d,0x35,0x06,
+0x19,0x01,0x00,0x09,0x00,0x01,0x35,0x03,0x19,0x00,0x01,0x09,0x00,0x09,0x35,0x08,
+0x35,0x06,0x19,0x12,0x00,0x09,0x01,0x00,0x09,0x02,0x00,0x09,0x01,0x03,0x09,0x02,
+0x01,0x09,0x05,0xac,0x09,0x02,0x02,0x09,0x02,0x39,0x09,0x02,0x03,0x09,0x06,0x44,
+0x09,0x02,0x04,0x28,0x01,0x09,0x02,0x05,0x09,0x00,0x02,0x03,0x11,0x01,0x00,0x03,
+0x01,0x00,0x00,0x01,0x00,0x03,0x36,0x00,0x46,0x09,0x00,0x00,0x0a,0x00,0x01,0x00,
+0x03,0x09,0x00,0x01,0x35,0x03,0x19,0x11,0x01,0x09,0x00,0x02,0x0a,0x00,0x00,0x00,
+0x00,0x09,0x00,0x04,0x35,0x0c,0x35,0x03,0x19,0x01,0x00,0x35,0x05,0x19,0x00,0x03,
+0x08,0x01,0x09,0x00,0x06,0x35,0x09,0x09,0x65,0x6e,0x09,0x00,0x6a,0x09,0x01,0x00,
+0x09,0x01,0x00,0x25,0x0a,0x53,0x50,0x50,0x20,0x73,0x6c,0x61,0x76,0x65,0x00,0x00,
+0x00,0x01,0x00,0xaa,0x55,0x02,0x00,0x8e,0x44,0xaf,0x47,0xaa,0x55,0x4e,0x01,0xaf,
+0x47,0x01,0x00,0x02,0x00,0x28,0x02,0x01,0x18,0x02,0x00,0x02,0x03,0x28,0x01,0x20,
+0x03,0x00,0x02,0x05,0x2a,0x01,0x00,0x04,0x00,0x02,0x02,0x29,0x02,0x01,0x00,0x05,
+0x00,0x02,0x00,0x28,0x02,0x00,0x18,0x06,0x00,0x02,0x03,0x28,0x01,0x4e,0x07,0x00,
+0x02,0x00,0x2a,0x13,0x41,0x73,0x74,0x20,0x4c,0x45,0x20,0x4d,0x6f,0x75,0x73,0x65,
+0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x08,0x00,0x02,0x03,0x28,0x01,0x4e,0x09,0x00,
+0x02,0x01,0x2a,0x02,0x00,0x00,0x0a,0x00,0x02,0x03,0x28,0x01,0x02,0x0b,0x00,0x02,
+0x04,0x2a,0x08,0x10,0x00,0x20,0x00,0x05,0x00,0x2c,0x01,0x0c,0x00,0x02,0x00,0x28,
+0x10,0x55,0xe4,0x05,0xd2,0xaf,0x9f,0xa9,0x8f,0xe5,0x4a,0x7d,0xfe,0x43,0x53,0x53,
+0x49,0x0d,0x00,0x02,0x03,0x28,0x01,0x12,0x0e,0x00,0x10,0x16,0x96,0x24,0x47,0xc6,
+0x23,0x61,0xba,0xd9,0x4b,0x4d,0x1e,0x43,0x53,0x53,0x49,0x14,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x0f,0x00,0x02,0x02,0x29,0x02,0x00,0x00,0x10,0x00,0x02,0x03,0x28,0x01,0x08,0x11,
+0x00,0x10,0xb3,0x9b,0x72,0x34,0xbe,0xec,0xd4,0xa8,0xf4,0x43,0x41,0x88,0x43,0x53,
+0x53,0x49,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x00,0x02,0x03,0x28,0x01,0x04,0x13,0x00,
+0x10,0xfe,0x69,0xca,0x9a,0x56,0x19,0xf6,0xab,0x02,0x4d,0xaa,0x6d,0x43,0x53,0x53,
+0x49,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x02,0x03,0x28,0x01,0x1a,0x15,0x00,0x10,
+0x18,0x03,0xa6,0x28,0x5e,0xd8,0xec,0x91,0x1c,0x48,0xa3,0xac,0x43,0x53,0x53,0x49,
+0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x16,0x00,0x02,0x02,0x29,0x02,0x00,0x00,0x00,0x00,0xaa,
+0x55,0x07,0x00,0x76,0x41,0x0f,0x84,0xf0,0x00,0x0b,0xb2,0x32,0xaa,0x55,0x02,0x00,
+0x57,0x41,0x8b,0x0b,0xaa,0x55,0x08,0x00,0xa1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0xaa,0x55,0x02,0x00,0xbd,0x40,0x02,0x24,0xaa,0x55,0x08,0x00,0xad,0x40,
+0x40,0x00,0x00,0x02,0x32,0x00,0x00,0x02,0xaa,0x55,0x02,0x00,0xbb,0x40,0x20,0x00,
+0xaa,0x55,0x04,0x00,0xb7,0x40,0x20,0x00,0x00,0x20,0xaa,0x55,0x04,0x00,0xbf,0x40,
+0x80,0x04,0x00,0x10,0xaa,0x55,0x05,0x00,0xe2,0x44,0x08,0x0e,0x05,0x04,0x00,0xaa,
+0x55,0x02,0x00,0x02,0x42,0x30,0x1f,0xaa,0x55,0x01,0x00,0x10,0x42,0x20,0xaa,0x55,
+0x01,0x00,0xe0,0x41,0x01,0xaa,0x55,0x0f,0x00,0xde,0x4b,0x4b,0xba,0x55,0xd0,0x56,
+0xe0,0x57,0x88,0x58,0x6c,0x59,0x10,0x07,0xff,0xff,0xaa,0x55,0x02,0x00,0xc3,0x40,
+0xde,0x4b,0xd8,0x2e
+};
Index: ModuleDemo/BlueTooth/print/branches/jingchen/output/eeprom.dat
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/output/eeprom.dat	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/output/eeprom.dat	(working copy)
@@ -0,0 +1,5300 @@
+00
+02
+aa
+55
+de
+0f
+c2
+84
+00
+14
+c0
+00
+80
+a4
+c0
+30
+00
+53
+c0
+42
+80
+aa
+c0
+44
+80
+cb
+c0
+46
+80
+2d
+c0
+4a
+00
+8a
+c0
+51
+00
+d4
+c0
+51
+80
+95
+c0
+54
+80
+98
+c0
+56
+00
+db
+c0
+5c
+00
+dc
+c0
+5d
+81
+30
+c0
+5e
+01
+a8
+c0
+63
+80
+50
+c0
+6a
+80
+38
+c0
+75
+81
+c9
+c0
+78
+80
+6d
+c0
+7a
+80
+82
+20
+20
+4a
+8b
+c0
+01
+81
+d3
+c0
+02
+81
+df
+c0
+03
+01
+e8
+c0
+03
+81
+ee
+c0
+04
+01
+f7
+c0
+05
+82
+08
+c0
+09
+82
+18
+c0
+0a
+02
+b3
+c0
+0e
+02
+c8
+c0
+0f
+02
+f1
+c0
+0f
+83
+1f
+c0
+11
+03
+81
+c0
+19
+03
+a9
+c0
+1d
+03
+bc
+c0
+1f
+03
+c7
+c0
+20
+83
+d9
+c0
+29
+03
+df
+c0
+46
+83
+06
+c0
+4c
+83
+f3
+20
+20
+4a
+8b
+20
+40
+4b
+ba
+20
+40
+49
+c8
+df
+20
+00
+05
+20
+40
+7c
+9d
+20
+20
+49
+79
+6f
+e2
+40
+ce
+79
+3f
+fe
+05
+1f
+e6
+7c
+09
+20
+21
+00
+34
+1f
+e6
+7c
+0f
+24
+21
+00
+36
+20
+20
+49
+ab
+70
+40
+ce
+09
+20
+20
+49
+ab
+70
+40
+ce
+0f
+20
+20
+49
+ab
+20
+40
+56
+92
+18
+00
+24
+00
+20
+40
+56
+9d
+1f
+e2
+0a
+00
+6f
+e4
+02
+62
+1f
+e2
+26
+00
+6f
+e4
+02
+60
+98
+00
+0c
+00
+20
+40
+00
+46
+1a
+60
+a7
+fc
+24
+22
+80
+40
+1a
+42
+04
+00
+20
+40
+54
+b8
+20
+20
+51
+d6
+ef
+e2
+00
+06
+c0
+04
+00
+49
+20
+20
+54
+e3
+18
+c2
+22
+00
+da
+c0
+00
+0f
+71
+87
+00
+3f
+71
+87
+00
+3e
+da
+c0
+00
+00
+1a
+22
+0c
+00
+20
+20
+54
+2a
+ef
+e2
+00
+06
+c0
+04
+00
+49
+20
+20
+51
+ec
+6f
+e2
+02
+5d
+c0
+00
+80
+57
+c0
+01
+00
+62
+20
+20
+4a
+8b
+6f
+e4
+02
+59
+68
+44
+01
+5d
+98
+40
+fe
+00
+67
+e4
+02
+59
+1f
+e6
+7c
+00
+20
+22
+ca
+8b
+68
+44
+10
+00
+18
+40
+84
+04
+98
+46
+7c
+00
+20
+42
+c7
+43
+20
+20
+46
+09
+6f
+e4
+02
+5b
+68
+44
+01
+5d
+98
+40
+fe
+00
+67
+e4
+02
+5b
+1f
+e6
+7c
+00
+20
+22
+ca
+8b
+68
+44
+14
+00
+18
+40
+84
+04
+98
+46
+7c
+00
+20
+42
+c7
+47
+20
+20
+46
+09
+79
+3f
+80
+2c
+70
+44
+e1
+00
+20
+40
+79
+64
+20
+40
+5f
+f8
+78
+57
+7c
+00
+20
+40
+5a
+c0
+20
+21
+57
+83
+20
+40
+4c
+27
+20
+40
+57
+ed
+20
+40
+58
+63
+24
+2c
+57
+75
+20
+56
+82
+9e
+6f
+e2
+4b
+f2
+24
+5a
+00
+7f
+20
+40
+57
+91
+20
+36
+d7
+62
+c5
+16
+57
+62
+20
+20
+57
+6f
+79
+20
+00
+2c
+78
+56
+fc
+00
+20
+60
+00
+00
+78
+37
+7c
+00
+20
+40
+58
+9b
+20
+56
+82
+9e
+6f
+e2
+4b
+f2
+24
+5a
+00
+7f
+20
+36
+d7
+62
+c5
+16
+57
+62
+20
+20
+57
+6f
+18
+42
+7e
+00
+20
+40
+7d
+2b
+1c
+30
+7e
+00
+79
+20
+7e
+2c
+20
+40
+7d
+14
+79
+3f
+fe
+2c
+20
+40
+4a
+76
+20
+40
+7d
+14
+20
+74
+00
+00
+20
+40
+00
+a1
+20
+20
+4a
+2f
+1b
+42
+7e
+00
+20
+40
+00
+a0
+20
+20
+4a
+e9
+6f
+e4
+40
+4e
+1f
+e3
+7e
+00
+20
+40
+7d
+2b
+1e
+02
+7e
+00
+20
+40
+7d
+14
+1b
+42
+04
+00
+20
+40
+00
+a0
+20
+20
+4b
+67
+20
+40
+7d
+14
+98
+00
+0c
+00
+79
+3f
+8c
+10
+20
+20
+7d
+1f
+20
+40
+68
+c4
+20
+40
+60
+d7
+20
+40
+00
+a8
+20
+20
+40
+0a
+20
+75
+80
+00
+20
+20
+7b
+9a
+20
+30
+80
+ba
+70
+89
+55
+d4
+20
+00
+00
+04
+70
+89
+55
+d2
+20
+00
+00
+04
+70
+89
+55
+d1
+20
+00
+00
+04
+6f
+e2
+41
+df
+c0
+00
+00
+b8
+c0
+00
+80
+c8
+c0
+01
+00
+b8
+c0
+01
+80
+c8
+c0
+02
+00
+c8
+c0
+10
+00
+c8
+70
+89
+55
+d0
+70
+89
+56
+e0
+18
+00
+2a
+08
+18
+00
+2a
+00
+78
+50
+fc
+00
+78
+50
+7c
+00
+78
+2f
+7c
+00
+70
+89
+02
+00
+70
+89
+01
+00
+70
+89
+00
+00
+70
+89
+03
+00
+70
+89
+04
+70
+6f
+e2
+89
+06
+79
+20
+7e
+00
+67
+e2
+89
+06
+20
+60
+00
+00
+70
+89
+55
+d0
+70
+89
+56
+c0
+20
+20
+00
+ba
+60
+42
+00
+17
+20
+40
+49
+2a
+20
+40
+49
+80
+58
+00
+05
+00
+20
+40
+4a
+8e
+6f
+e2
+89
+06
+79
+20
+7e
+00
+67
+e2
+89
+06
+20
+20
+49
+37
+70
+89
+06
+7c
+20
+75
+80
+00
+58
+00
+00
+00
+67
+e4
+41
+dd
+1c
+43
+7e
+00
+67
+e8
+40
+94
+20
+60
+00
+00
+20
+20
+4b
+7f
+58
+00
+00
+ec
+67
+e4
+41
+f6
+58
+00
+00
+fb
+67
+e4
+41
+fe
+58
+00
+01
+05
+67
+e4
+41
+fa
+58
+00
+01
+17
+67
+e4
+41
+ea
+58
+00
+01
+1a
+67
+e4
+41
+f2
+58
+00
+01
+1d
+67
+e4
+45
+41
+20
+40
+4d
+af
+20
+40
+4d
+bc
+20
+40
+4c
+2a
+20
+20
+50
+4d
+1a
+62
+7e
+00
+c0
+04
+80
+f3
+c0
+01
+00
+f1
+c0
+0a
+00
+f9
+20
+20
+4d
+df
+70
+4a
+d0
+00
+20
+20
+4d
+fb
+6f
+e2
+4a
+cf
+24
+5a
+00
+f7
+70
+4a
+d0
+06
+20
+20
+4e
+08
+70
+4a
+d0
+06
+20
+60
+00
+00
+20
+40
+03
+8b
+20
+20
+4e
+28
+20
+40
+00
+fd
+20
+20
+50
+c3
+6f
+e2
+4a
+d0
+20
+7a
+00
+00
+1f
+e0
+ff
+ff
+67
+e2
+4a
+d0
+24
+7a
+00
+00
+6f
+e4
+46
+52
+c2
+80
+4d
+64
+20
+60
+00
+00
+20
+40
+4f
+11
+20
+74
+00
+00
+1a
+22
+7e
+00
+67
+e4
+46
+71
+20
+40
+01
+11
+67
+e2
+46
+70
+68
+44
+04
+74
+60
+44
+46
+73
+20
+40
+5b
+6c
+24
+3a
+4a
+8b
+6f
+e2
+04
+9e
+20
+20
+50
+42
+6f
+e2
+4b
+ed
+24
+3a
+01
+15
+1f
+22
+7e
+00
+20
+60
+00
+00
+1a
+42
+7e
+00
+20
+60
+00
+00
+20
+40
+02
+6c
+24
+34
+4d
+4b
+20
+20
+4d
+bd
+20
+40
+01
+1c
+20
+20
+50
+d3
+20
+20
+4d
+c8
+20
+40
+4d
+d7
+70
+0a
+ff
+07
+6f
+e4
+04
+fb
+20
+7a
+00
+00
+d8
+40
+00
+ff
+20
+40
+7d
+b5
+1f
+e2
+72
+00
+6f
+e4
+04
+fb
+9f
+26
+7e
+00
+67
+e4
+04
+fb
+1f
+22
+7e
+00
+20
+40
+50
+a5
+6f
+e4
+04
+fd
+1f
+e2
+0c
+00
+20
+40
+67
+c1
+18
+c2
+7e
+00
+67
+e4
+04
+fd
+20
+40
+67
+b9
+20
+20
+01
+1e
+6f
+e2
+0a
+ff
+c0
+13
+81
+a6
+c0
+06
+01
+41
+c0
+3b
+01
+4a
+c0
+3b
+81
+50
+c0
+3c
+01
+55
+c0
+0a
+81
+8f
+c0
+7f
+01
+92
+20
+20
+4e
+5c
+6f
+e2
+89
+50
+c0
+be
+01
+3c
+20
+20
+4e
+86
+70
+89
+50
+7c
+70
+89
+52
+0f
+70
+89
+55
+d8
+70
+89
+56
+f0
+20
+20
+4e
+86
+1a
+22
+06
+00
+ef
+e2
+00
+03
+c0
+00
+4f
+1c
+c0
+00
+cf
+1f
+c0
+01
+4f
+25
+c0
+01
+81
+48
+20
+20
+50
+1c
+58
+00
+00
+01
+20
+20
+4f
+20
+d8
+40
+00
+0c
+20
+40
+5b
+4d
+18
+c0
+8b
+fe
+58
+00
+00
+00
+e7
+e4
+00
+05
+20
+20
+50
+1f
+20
+40
+01
+59
+20
+40
+01
+76
+58
+00
+00
+00
+e7
+e4
+00
+05
+20
+20
+01
+88
+ef
+e2
+00
+03
+20
+40
+01
+5d
+20
+40
+01
+64
+20
+20
+01
+88
+20
+40
+01
+7a
+58
+28
+00
+02
+e7
+e6
+00
+05
+20
+60
+00
+00
+67
+e2
+0a
+96
+20
+40
+01
+7a
+59
+28
+03
+02
+e7
+e8
+00
+05
+6f
+e2
+0a
+96
+e7
+e6
+00
+05
+20
+60
+00
+00
+20
+40
+01
+7a
+20
+40
+01
+76
+20
+40
+01
+76
+58
+00
+00
+00
+e7
+e4
+00
+05
+18
+40
+85
+ff
+20
+40
+5b
+4d
+18
+c0
+8c
+04
+ef
+e2
+00
+06
+c2
+82
+01
+71
+c2
+82
+81
+71
+18
+40
+84
+01
+20
+60
+00
+00
+20
+40
+01
+7a
+5a
+29
+02
+02
+e7
+f0
+00
+05
+18
+40
+85
+ff
+20
+60
+00
+00
+ef
+e2
+00
+03
+1f
+e2
+72
+00
+e7
+e2
+00
+05
+20
+20
+67
+ed
+20
+40
+01
+7d
+e0
+44
+00
+05
+20
+60
+00
+00
+6f
+e4
+44
+8e
+98
+00
+0c
+00
+ef
+e4
+00
+06
+20
+7a
+00
+00
+1f
+e0
+84
+01
+ef
+e2
+00
+06
+98
+c0
+8c
+00
+ef
+e2
+00
+06
+98
+c0
+8c
+00
+18
+c2
+0a
+00
+20
+20
+01
+7f
+60
+44
+0a
+9e
+70
+0a
+ff
+29
+58
+00
+00
+02
+20
+40
+50
+a5
+68
+44
+0a
+9e
+e0
+44
+00
+0a
+20
+20
+67
+b9
+ef
+e6
+00
+03
+67
+e6
+40
+aa
+20
+20
+50
+1f
+ef
+e2
+00
+03
+c0
+00
+01
+9d
+c0
+00
+81
+97
+c0
+01
+01
+a3
+20
+20
+50
+1c
+ef
+e4
+00
+03
+1f
+e2
+24
+00
+ef
+e2
+00
+03
+1f
+e2
+22
+00
+d8
+40
+00
+00
+20
+20
+50
+2a
+ef
+e4
+00
+03
+1f
+e2
+0a
+00
+ef
+e2
+00
+03
+1f
+e2
+72
+00
+20
+40
+67
+da
+20
+20
+50
+1f
+ef
+e2
+00
+03
+1f
+e2
+2c
+00
+20
+20
+50
+1f
+20
+40
+50
+1f
+20
+20
+4d
+85
+6f
+e2
+46
+79
+c2
+81
+82
+7e
+6f
+e2
+46
+79
+c3
+83
+80
+00
+18
+40
+ff
+fd
+d8
+40
+00
+c8
+20
+40
+7d
+b5
+68
+42
+46
+7a
+20
+40
+7d
+b5
+1f
+e2
+22
+00
+18
+42
+7e
+00
+9a
+26
+7e
+00
+67
+e2
+46
+7a
+68
+44
+46
+7b
+18
+40
+85
+ff
+20
+40
+5b
+4d
+20
+3a
+01
+c5
+e8
+48
+00
+06
+59
+28
+03
+02
+98
+46
+7c
+00
+24
+22
+81
+c5
+ef
+e2
+00
+06
+c2
+82
+81
+c1
+c2
+82
+4f
+01
+20
+20
+01
+c5
+20
+40
+03
+91
+68
+44
+46
+7b
+20
+40
+5e
+4d
+20
+20
+4f
+03
+70
+46
+7a
+00
+70
+0b
+01
+01
+20
+40
+50
+e0
+20
+20
+50
+1c
+6f
+e2
+4b
+ed
+24
+3a
+57
+09
+20
+40
+57
+09
+70
+4a
+db
+01
+70
+4a
+dc
+00
+58
+00
+00
+00
+67
+f0
+4a
+d1
+58
+00
+00
+1b
+67
+e4
+4a
+d9
+20
+60
+00
+00
+20
+40
+49
+ba
+78
+23
+fc
+00
+78
+24
+fc
+00
+09
+80
+00
+08
+19
+89
+7e
+00
+67
+e2
+02
+d5
+09
+80
+00
+08
+19
+89
+7e
+00
+e7
+e2
+00
+05
+1f
+e2
+72
+00
+20
+3a
+58
+8b
+20
+20
+58
+87
+20
+40
+58
+a3
+20
+40
+49
+15
+68
+42
+00
+17
+20
+40
+49
+1c
+20
+00
+05
+dc
+20
+40
+49
+21
+78
+28
+7c
+00
+d9
+60
+15
+7c
+20
+20
+58
+69
+20
+40
+57
+af
+20
+40
+01
+eb
+20
+20
+58
+a7
+20
+36
+80
+d0
+c5
+16
+00
+d0
+20
+20
+57
+be
+6f
+e2
+4b
+ed
+24
+3a
+58
+b3
+6f
+e2
+4a
+db
+08
+00
+86
+08
+ef
+e2
+00
+06
+1f
+e2
+72
+00
+08
+00
+86
+08
+20
+22
+d8
+bc
+20
+20
+58
+b9
+6f
+e2
+4b
+ed
+24
+3a
+58
+c4
+6f
+e2
+44
+56
+c0
+00
+d8
+d3
+6f
+e2
+44
+57
+1f
+f2
+7e
+00
+1f
+eb
+fe
+00
+67
+e2
+4a
+db
+68
+42
+43
+41
+18
+40
+fe
+06
+67
+e2
+4a
+dc
+6f
+ec
+44
+72
+67
+ec
+4a
+dd
+18
+42
+72
+00
+d8
+c0
+43
+42
+20
+40
+7c
+cf
+20
+20
+58
+de
+6f
+e2
+4b
+ed
+24
+3a
+58
+f7
+d8
+40
+00
+04
+6f
+e2
+44
+57
+7d
+3a
+04
+06
+60
+42
+4a
+db
+68
+42
+43
+61
+18
+40
+fe
+06
+67
+e2
+4a
+dc
+6f
+ec
+44
+72
+67
+ec
+4a
+dd
+d8
+c0
+43
+62
+18
+42
+72
+00
+20
+40
+7c
+cf
+20
+40
+58
+a1
+20
+20
+5a
+e2
+20
+40
+5a
+c9
+c6
+16
+00
+00
+20
+40
+59
+9a
+6f
+e2
+02
+d5
+2f
+ef
+fe
+04
+79
+20
+80
+2a
+1f
+e3
+7e
+00
+98
+42
+fe
+00
+2f
+ef
+fe
+02
+79
+20
+80
+0f
+c6
+07
+80
+00
+6f
+e2
+02
+d6
+20
+3a
+02
+2b
+6f
+e2
+04
+3b
+c3
+02
+02
+2b
+20
+40
+73
+42
+20
+40
+72
+b2
+7d
+3a
+00
+0f
+24
+7a
+00
+00
+68
+42
+04
+52
+79
+40
+04
+02
+60
+42
+04
+52
+6f
+e2
+4b
+ed
+24
+7a
+00
+00
+20
+20
+02
+31
+6f
+e2
+02
+d6
+20
+7a
+00
+00
+6f
+e2
+02
+d5
+2f
+e0
+06
+01
+20
+20
+82
+59
+2f
+e0
+06
+02
+20
+20
+82
+39
+20
+60
+00
+00
+6f
+e4
+02
+d9
+c1
+82
+00
+00
+ef
+e6
+00
+06
+67
+e6
+04
+73
+79
+20
+00
+0f
+c0
+09
+02
+4d
+c0
+29
+02
+4f
+c0
+0b
+02
+46
+c0
+0c
+5e
+3b
+c0
+01
+5c
+a1
+c0
+0f
+03
+8b
+79
+3f
+80
+0f
+20
+60
+00
+00
+58
+00
+0b
+1e
+67
+e4
+4a
+d5
+20
+40
+02
+52
+1f
+20
+f3
+fe
+da
+20
+02
+e0
+20
+40
+5a
+be
+20
+20
+02
+72
+20
+40
+02
+4f
+20
+20
+02
+69
+20
+40
+02
+52
+da
+20
+02
+de
+20
+20
+5a
+be
+6f
+e2
+02
+d6
+1f
+e0
+f3
+f9
+1f
+e0
+ff
+fc
+67
+e4
+4a
+d1
+e8
+44
+00
+06
+60
+44
+4a
+d3
+20
+60
+00
+00
+79
+20
+00
+0f
+20
+40
+02
+61
+6f
+e2
+04
+73
+c0
+09
+02
+69
+c0
+0b
+02
+68
+c1
+29
+00
+00
+79
+3f
+80
+0f
+20
+60
+00
+00
+6f
+e2
+02
+d6
+68
+44
+4a
+d1
+98
+40
+84
+00
+60
+44
+4a
+d1
+1f
+e2
+72
+00
+da
+20
+02
+d7
+20
+20
+5a
+be
+20
+20
+02
+72
+20
+40
+02
+6c
+24
+74
+00
+00
+20
+20
+5e
+13
+20
+40
+7d
+c1
+6f
+e4
+4a
+d3
+68
+44
+4a
+d1
+98
+46
+7c
+00
+24
+62
+80
+00
+20
+20
+7d
+bf
+6f
+e4
+4a
+d5
+1f
+e2
+0a
+00
+6f
+e2
+02
+d6
+1f
+e2
+72
+00
+20
+40
+7c
+dc
+18
+a2
+7e
+00
+67
+e4
+4a
+d5
+20
+40
+02
+6c
+24
+74
+00
+00
+d8
+e0
+00
+03
+20
+40
+50
+e6
+20
+20
+02
+7e
+20
+40
+5c
+74
+24
+7a
+00
+00
+70
+0b
+22
+17
+58
+00
+0b
+1e
+67
+e4
+4a
+d7
+68
+44
+0b
+1e
+18
+40
+84
+04
+58
+00
+00
+f9
+20
+40
+7d
+b5
+1f
+e0
+a5
+fc
+18
+00
+02
+02
+1f
+e2
+22
+00
+20
+40
+5c
+32
+6f
+e4
+4a
+d7
+1f
+e2
+0c
+00
+1a
+22
+72
+00
+20
+40
+7c
+cf
+18
+c2
+7e
+00
+67
+e4
+4a
+d7
+6f
+e4
+0b
+1e
+9a
+46
+7e
+00
+67
+e4
+0b
+1e
+20
+3a
+02
+9a
+d8
+40
+00
+f9
+20
+40
+7d
+b5
+1f
+e2
+24
+00
+18
+00
+02
+01
+20
+20
+02
+89
+58
+00
+00
+00
+67
+e4
+4a
+d5
+d8
+e0
+00
+03
+20
+20
+50
+e2
+70
+4b
+f2
+00
+68
+44
+4f
+f0
+6f
+e4
+4f
+f2
+98
+46
+22
+00
+68
+44
+4f
+f4
+6f
+e4
+4f
+f6
+60
+44
+4b
+f5
+67
+e4
+4b
+f3
+98
+46
+7e
+00
+20
+21
+02
+ae
+20
+22
+82
+ae
+1a
+22
+04
+00
+6f
+e4
+4b
+f3
+98
+40
+fe
+00
+68
+44
+4b
+f5
+98
+46
+7e
+00
+d8
+40
+03
+00
+98
+46
+7c
+00
+24
+61
+00
+00
+70
+4b
+f2
+01
+20
+60
+00
+00
+68
+42
+04
+52
+28
+4c
+00
+05
+20
+60
+80
+00
+6f
+e2
+02
+d5
+1f
+e3
+fe
+00
+98
+42
+fe
+00
+c4
+01
+80
+00
+79
+3f
+84
+05
+79
+40
+04
+03
+60
+42
+04
+52
+28
+40
+06
+03
+24
+60
+80
+00
+6f
+e2
+4b
+ed
+24
+3a
+02
+c3
+6f
+e2
+4a
+dd
+20
+20
+02
+c4
+6f
+e2
+43
+b0
+c0
+02
+d9
+ac
+6f
+e2
+44
+97
+c0
+01
+59
+b0
+20
+60
+00
+00
+6f
+e2
+04
+52
+c3
+82
+80
+00
+20
+40
+5a
+1c
+6f
+e2
+4b
+ed
+24
+3a
+59
+fc
+20
+40
+5c
+53
+20
+3a
+5a
+3e
+ef
+e2
+00
+06
+e8
+42
+00
+06
+18
+42
+22
+00
+9a
+26
+7e
+00
+20
+40
+02
+ed
+20
+40
+7d
+b5
+1f
+e2
+04
+00
+ef
+e2
+00
+06
+1f
+e2
+02
+00
+1a
+22
+7e
+00
+98
+c0
+8c
+00
+d8
+a0
+4a
+dd
+18
+42
+72
+00
+20
+40
+7c
+cf
+20
+40
+5a
+2e
+20
+40
+5a
+40
+20
+40
+5c
+53
+ef
+e2
+00
+06
+1f
+e2
+22
+00
+18
+c2
+26
+00
+e8
+42
+00
+06
+18
+42
+24
+00
+9a
+46
+7e
+00
+20
+40
+02
+ed
+20
+40
+7d
+b5
+9a
+40
+fe
+00
+e7
+e2
+00
+13
+9a
+26
+7c
+00
+24
+62
+80
+00
+20
+20
+5c
+76
+18
+c2
+0a
+00
+68
+44
+4a
+d9
+18
+a2
+0c
+00
+20
+60
+00
+00
+6f
+e2
+4b
+ed
+24
+3a
+5a
+41
+60
+42
+4a
+dc
+68
+42
+04
+52
+79
+20
+04
+05
+18
+41
+7e
+fc
+98
+21
+fe
+00
+67
+e2
+04
+52
+1f
+e1
+7e
+1f
+28
+0f
+fe
+29
+79
+20
+fe
+04
+67
+e2
+4a
+db
+6f
+e2
+4a
+db
+28
+20
+06
+01
+24
+20
+83
+02
+6f
+e2
+4a
+dc
+20
+7a
+00
+00
+6f
+e2
+04
+3b
+c4
+02
+00
+00
+20
+40
+73
+42
+20
+20
+72
+99
+6f
+e2
+4b
+ed
+24
+3a
+72
+9a
+da
+60
+4a
+db
+68
+4a
+43
+d5
+20
+40
+72
+77
+18
+00
+70
+08
+98
+00
+5e
+00
+18
+00
+22
+00
+20
+40
+72
+63
+20
+40
+72
+e8
+da
+60
+4a
+dd
+6f
+e2
+4a
+dc
+1f
+e0
+a5
+ff
+9a
+60
+8a
+00
+18
+00
+70
+0c
+1d
+e2
+7e
+00
+e7
+e8
+00
+05
+20
+40
+72
+8e
+6f
+e2
+4a
+dc
+1f
+e0
+fe
+04
+67
+e2
+4a
+dc
+68
+4a
+43
+d5
+18
+40
+84
+01
+60
+4a
+43
+d5
+20
+60
+00
+00
+c6
+07
+80
+00
+c6
+16
+00
+00
+20
+40
+5c
+70
+24
+7a
+00
+00
+6f
+e2
+02
+d5
+1f
+e1
+7e
+03
+67
+e2
+44
+de
+ef
+e2
+00
+06
+67
+e2
+44
+dd
+20
+7a
+00
+00
+18
+c2
+7e
+00
+67
+e4
+44
+df
+6f
+e2
+44
+de
+c0
+01
+83
+60
+20
+40
+03
+32
+d8
+e0
+00
+03
+24
+34
+4b
+ec
+20
+40
+4b
+f0
+20
+20
+5a
+6b
+6f
+e2
+44
+de
+c0
+01
+03
+36
+c0
+00
+83
+4a
+20
+60
+00
+00
+6f
+e4
+44
+df
+1f
+e2
+0c
+00
+ef
+e4
+00
+06
+67
+e4
+44
+ce
+ef
+e4
+00
+06
+20
+40
+5a
+7a
+24
+74
+00
+00
+68
+42
+44
+dd
+60
+42
+44
+d0
+6f
+e4
+44
+ce
+1f
+e0
+fe
+04
+98
+46
+7c
+00
+20
+22
+fd
+bf
+6f
+e2
+44
+dd
+1f
+e2
+72
+00
+d8
+a0
+0d
+7d
+6f
+e4
+44
+df
+1f
+e2
+0c
+00
+20
+40
+7c
+dc
+20
+20
+7d
+c1
+20
+40
+5a
+99
+24
+74
+00
+00
+6f
+e2
+44
+d0
+d8
+a0
+0d
+7d
+98
+a0
+a2
+00
+68
+42
+44
+dd
+98
+40
+fe
+00
+67
+e2
+44
+d0
+6f
+e2
+44
+dd
+1f
+e2
+72
+00
+1a
+22
+0a
+00
+6f
+e4
+44
+df
+1f
+e2
+0c
+00
+20
+40
+7c
+cf
+58
+00
+0d
+7d
+67
+e4
+44
+df
+6f
+e4
+44
+ce
+1f
+e0
+fe
+04
+68
+42
+44
+d0
+98
+46
+7c
+00
+20
+22
+fd
+bf
+20
+20
+7d
+c1
+6f
+e2
+02
+d7
+c0
+04
+03
+64
+c0
+0a
+03
+72
+20
+20
+60
+45
+da
+20
+00
+09
+da
+40
+00
+09
+20
+40
+5c
+22
+58
+00
+00
+21
+e7
+f0
+00
+05
+20
+40
+03
+6b
+20
+60
+00
+00
+6f
+e2
+02
+d8
+1f
+e1
+7e
+20
+20
+3a
+03
+70
+70
+4b
+ed
+00
+20
+60
+00
+00
+70
+4b
+ed
+01
+20
+60
+00
+00
+ef
+e4
+00
+06
+67
+e4
+4a
+d9
+20
+20
+03
+75
+da
+20
+00
+09
+da
+40
+00
+15
+20
+40
+5c
+22
+58
+00
+00
+fb
+e7
+e4
+00
+05
+58
+00
+08
+48
+e7
+e4
+00
+05
+58
+00
+00
+fb
+e7
+e4
+00
+05
+58
+00
+08
+48
+e7
+e4
+00
+05
+20
+60
+00
+00
+ef
+e4
+00
+06
+c0
+02
+03
+86
+c0
+03
+5e
+d4
+c0
+02
+de
+96
+20
+60
+00
+00
+ef
+e6
+00
+06
+67
+e6
+04
+73
+c0
+08
+03
+8d
+c0
+04
+03
+96
+20
+20
+5c
+8d
+d8
+e0
+00
+07
+20
+20
+50
+e2
+20
+40
+5e
+91
+20
+40
+5a
+b3
+d9
+60
+00
+01
+20
+20
+5d
+de
+d8
+e0
+00
+07
+20
+20
+50
+e6
+20
+40
+5c
+a9
+67
+e4
+44
+78
+20
+20
+5c
+a2
+20
+40
+5e
+91
+20
+40
+5a
+bb
+20
+20
+03
+99
+68
+44
+44
+2c
+60
+44
+0a
+9e
+20
+40
+5b
+36
+20
+40
+5b
+4d
+18
+c0
+8d
+fe
+18
+c2
+7e
+00
+67
+e4
+04
+98
+68
+44
+44
+44
+58
+00
+2a
+00
+98
+46
+7c
+00
+20
+22
+83
+a5
+20
+20
+5d
+2d
+d8
+40
+2a
+00
+20
+40
+5b
+5c
+20
+3a
+5e
+56
+20
+20
+5d
+8b
+6f
+e2
+4b
+ed
+24
+3a
+5b
+d5
+78
+55
+fc
+00
+20
+37
+03
+ae
+24
+36
+db
+e6
+20
+40
+4b
+a0
+6f
+e4
+40
+c1
+67
+e4
+04
+49
+24
+36
+cb
+b3
+c5
+07
+cb
+b3
+6f
+e2
+44
+dd
+24
+3a
+4b
+b3
+6f
+e2
+4a
+dc
+24
+3a
+4b
+b3
+6f
+e2
+44
+bb
+c2
+82
+cb
+b3
+6f
+e2
+04
+3b
+c2
+82
+cb
+b3
+20
+20
+4b
+95
+6f
+e2
+00
+7d
+c0
+08
+03
+c0
+c0
+0b
+83
+c6
+20
+20
+60
+fe
+68
+42
+05
+4e
+18
+46
+7c
+06
+20
+21
+03
+c4
+20
+20
+62
+06
+70
+00
+7e
+24
+20
+20
+61
+34
+20
+20
+62
+b8
+78
+54
+7c
+00
+20
+40
+66
+a3
+6f
+e2
+00
+48
+20
+7a
+00
+00
+c2
+83
+83
+cd
+20
+20
+63
+f2
+c0
+42
+03
+d0
+c0
+41
+83
+d3
+20
+20
+64
+21
+20
+40
+03
+d6
+6f
+e2
+00
+48
+20
+20
+64
+7b
+20
+40
+03
+d6
+6f
+e2
+00
+48
+20
+20
+64
+ef
+6f
+e2
+46
+2c
+20
+3a
+65
+0d
+20
+20
+65
+06
+6f
+e2
+40
+9e
+79
+3f
+fe
+03
+67
+e2
+40
+9e
+58
+00
+00
+01
+67
+e4
+04
+ca
+20
+60
+00
+00
+6f
+e2
+04
+f9
+c0
+1f
+e9
+3e
+c0
+39
+e9
+47
+c0
+77
+83
+e5
+c0
+29
+ea
+05
+20
+60
+00
+00
+6f
+e4
+04
+fd
+1f
+e2
+0c
+00
+20
+40
+69
+84
+6f
+e2
+04
+ff
+c0
+20
+e9
+66
+c0
+20
+69
+6e
+c0
+38
+e9
+a7
+c0
+38
+03
+ef
+c0
+24
+e9
+be
+20
+20
+6a
+58
+70
+0a
+95
+08
+20
+40
+7b
+ab
+20
+40
+69
+72
+20
+20
+69
+ba
+6f
+e2
+44
+90
+20
+3a
+5e
+d0
+20
+40
+74
+38
+20
+20
+79
+32
+ff
+13
+aa
+55
+40
+00
+00
+40
+02
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+01
+00
+00
+00
+20
+22
+10
+00
+0c
+12
+00
+19
+80
+00
+20
+00
+00
+08
+22
+00
+e8
+09
+18
+d0
+04
+00
+04
+44
+02
+00
+04
+00
+00
+00
+00
+00
+00
+20
+00
+02
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+01
+00
+92
+40
+0a
+aa
+55
+01
+00
+54
+46
+40
+aa
+55
+01
+00
+06
+42
+13
+aa
+55
+01
+00
+5b
+41
+01
+aa
+55
+08
+00
+98
+40
+ff
+fb
+8f
+fa
+8b
+85
+59
+83
+aa
+55
+03
+00
+14
+42
+25
+4a
+05
+aa
+55
+04
+00
+3d
+45
+01
+ff
+00
+03
+aa
+55
+03
+00
+2d
+46
+03
+00
+04
+aa
+55
+01
+00
+2c
+46
+01
+aa
+55
+06
+00
+57
+46
+04
+30
+30
+30
+30
+30
+aa
+55
+10
+00
+f0
+4f
+00
+1c
+ff
+1f
+00
+1c
+00
+1c
+00
+4c
+e0
+4f
+00
+4c
+00
+4c
+aa
+55
+03
+00
+ef
+4b
+00
+80
+02
+aa
+55
+02
+00
+68
+46
+10
+0d
+aa
+55
+01
+00
+6c
+46
+03
+aa
+55
+01
+00
+6f
+46
+07
+aa
+55
+03
+00
+aa
+40
+24
+04
+04
+aa
+55
+01
+00
+79
+46
+00
+aa
+55
+01
+00
+cf
+4a
+00
+aa
+55
+01
+00
+91
+40
+00
+aa
+55
+03
+00
+54
+41
+00
+01
+08
+aa
+55
+01
+00
+74
+41
+02
+aa
+55
+01
+00
+93
+40
+00
+aa
+55
+01
+00
+6d
+46
+28
+aa
+55
+06
+00
+a0
+40
+a7
+2a
+2a
+21
+10
+55
+aa
+55
+0f
+00
+e7
+44
+0e
+33
+31
+32
+31
+20
+4d
+6f
+75
+20
+42
+74
+31
+32
+31
+aa
+55
+03
+00
+e4
+41
+20
+00
+02
+aa
+55
+01
+00
+e8
+41
+01
+aa
+55
+01
+00
+90
+44
+01
+aa
+55
+01
+00
+5f
+44
+07
+aa
+55
+01
+00
+98
+44
+00
+aa
+55
+04
+00
+75
+46
+2d
+00
+2f
+00
+aa
+55
+01
+00
+40
+43
+00
+aa
+55
+02
+00
+54
+44
+40
+00
+aa
+55
+01
+00
+6e
+46
+05
+aa
+55
+06
+00
+72
+44
+21
+22
+01
+33
+02
+3a
+aa
+55
+0d
+00
+81
+43
+0c
+33
+31
+32
+31
+20
+4d
+6f
+75
+20
+42
+6c
+65
+aa
+55
+04
+00
+41
+43
+03
+02
+01
+02
+aa
+55
+12
+00
+61
+43
+0e
+02
+01
+02
+0d
+09
+33
+31
+32
+31
+20
+4d
+6f
+75
+20
+42
+6c
+65
+aa
+55
+07
+00
+25
+44
+02
+03
+00
+05
+10
+02
+03
+aa
+55
+08
+00
+68
+44
+08
+00
+10
+00
+00
+00
+2c
+01
+aa
+55
+01
+00
+78
+44
+f0
+aa
+55
+01
+00
+7a
+44
+17
+aa
+55
+02
+00
+cc
+44
+31
+00
+aa
+55
+01
+00
+d1
+40
+01
+aa
+55
+0c
+00
+49
+45
+05
+03
+00
+12
+00
+01
+01
+00
+01
+11
+03
+00
+aa
+55
+12
+00
+5f
+45
+01
+07
+00
+00
+00
+00
+de
+ca
+fa
+de
+de
+ca
+de
+af
+de
+ca
+ca
+ff
+aa
+55
+02
+00
+47
+45
+83
+46
+aa
+55
+b8
+00
+83
+46
+03
+12
+00
+01
+00
+00
+01
+00
+01
+00
+01
+36
+00
+52
+09
+00
+00
+0a
+00
+01
+00
+01
+09
+00
+01
+35
+03
+19
+12
+00
+09
+00
+04
+35
+0d
+35
+06
+19
+01
+00
+09
+00
+01
+35
+03
+19
+00
+01
+09
+00
+09
+35
+08
+35
+06
+19
+12
+00
+09
+01
+00
+09
+02
+00
+09
+01
+03
+09
+02
+01
+09
+05
+ac
+09
+02
+02
+09
+02
+39
+09
+02
+03
+09
+06
+44
+09
+02
+04
+28
+01
+09
+02
+05
+09
+00
+02
+03
+11
+01
+00
+03
+01
+00
+00
+01
+00
+03
+36
+00
+46
+09
+00
+00
+0a
+00
+01
+00
+03
+09
+00
+01
+35
+03
+19
+11
+01
+09
+00
+02
+0a
+00
+00
+00
+00
+09
+00
+04
+35
+0c
+35
+03
+19
+01
+00
+35
+05
+19
+00
+03
+08
+01
+09
+00
+06
+35
+09
+09
+65
+6e
+09
+00
+6a
+09
+01
+00
+09
+01
+00
+25
+0a
+53
+50
+50
+20
+73
+6c
+61
+76
+65
+00
+00
+00
+01
+00
+aa
+55
+02
+00
+8e
+44
+af
+47
+aa
+55
+4e
+01
+af
+47
+01
+00
+02
+00
+28
+02
+01
+18
+02
+00
+02
+03
+28
+01
+20
+03
+00
+02
+05
+2a
+01
+00
+04
+00
+02
+02
+29
+02
+01
+00
+05
+00
+02
+00
+28
+02
+00
+18
+06
+00
+02
+03
+28
+01
+4e
+07
+00
+02
+00
+2a
+13
+41
+73
+74
+20
+4c
+45
+20
+4d
+6f
+75
+73
+65
+20
+20
+20
+20
+20
+20
+20
+08
+00
+02
+03
+28
+01
+4e
+09
+00
+02
+01
+2a
+02
+00
+00
+0a
+00
+02
+03
+28
+01
+02
+0b
+00
+02
+04
+2a
+08
+10
+00
+20
+00
+05
+00
+2c
+01
+0c
+00
+02
+00
+28
+10
+55
+e4
+05
+d2
+af
+9f
+a9
+8f
+e5
+4a
+7d
+fe
+43
+53
+53
+49
+0d
+00
+02
+03
+28
+01
+12
+0e
+00
+10
+16
+96
+24
+47
+c6
+23
+61
+ba
+d9
+4b
+4d
+1e
+43
+53
+53
+49
+14
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+0f
+00
+02
+02
+29
+02
+00
+00
+10
+00
+02
+03
+28
+01
+08
+11
+00
+10
+b3
+9b
+72
+34
+be
+ec
+d4
+a8
+f4
+43
+41
+88
+43
+53
+53
+49
+14
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+12
+00
+02
+03
+28
+01
+04
+13
+00
+10
+fe
+69
+ca
+9a
+56
+19
+f6
+ab
+02
+4d
+aa
+6d
+43
+53
+53
+49
+14
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+14
+00
+02
+03
+28
+01
+1a
+15
+00
+10
+18
+03
+a6
+28
+5e
+d8
+ec
+91
+1c
+48
+a3
+ac
+43
+53
+53
+49
+14
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+16
+00
+02
+02
+29
+02
+00
+00
+00
+00
+aa
+55
+07
+00
+76
+41
+0f
+84
+f0
+00
+0b
+b2
+32
+aa
+55
+02
+00
+57
+41
+8b
+0b
+aa
+55
+08
+00
+a1
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+02
+00
+bd
+40
+02
+24
+aa
+55
+08
+00
+ad
+40
+40
+00
+00
+02
+32
+00
+00
+02
+aa
+55
+02
+00
+bb
+40
+20
+00
+aa
+55
+04
+00
+b7
+40
+20
+00
+00
+20
+aa
+55
+04
+00
+bf
+40
+80
+04
+00
+10
+aa
+55
+05
+00
+e2
+44
+08
+0e
+05
+04
+00
+aa
+55
+02
+00
+02
+42
+30
+1f
+aa
+55
+01
+00
+10
+42
+20
+aa
+55
+01
+00
+e0
+41
+01
+aa
+55
+0f
+00
+de
+4b
+4b
+ba
+55
+d0
+56
+e0
+57
+88
+58
+6c
+59
+10
+07
+ff
+ff
+aa
+55
+02
+00
+c3
+40
+de
+4b
+d8
+2e
Index: ModuleDemo/BlueTooth/print/branches/jingchen/output/memmap.format
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/output/memmap.format	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/output/memmap.format	(working copy)
@@ -0,0 +1,1052 @@
+0x0000 mem_le_adv_transmit
+0x0001 mem_le_adv_waitcnt
+0x0002 mem_le_adv_rcv
+0x0003 mem_le_req_rcv
+0x0004 mem_le_scanrsp_rcv
+0x0005 mem_le_conn_rcv
+0x0006 mem_inquiryscan_waitcnt
+0x0007 mem_inquiryscan_rcvcnt
+0x0008 mem_pagescan_waitcnt
+0x0009 mem_pagescan_rcvcnt
+0x000a mem_pagescan_rcvfhscnt
+0x000b mem_slave_rcvcnt
+0x000c mem_page_transmit
+0x000d mem_page_rcv
+0x000e mem_page_rcv_fhs
+0x000f mem_master_rcvcnt
+0x0010 mem_fhs_wait_counter
+0x0011 mem_newconnto_counter
+0x0012 mem_inquiry_transmit
+0x0013 mem_inquiry_rcv
+0x0014 mem_fw_ver
+0x0015 mem_current_context
+0x0016 mem_le_ch_mapped
+0x0017 mem_last_freq
+0x0018 mem_rssi
+0x0019 mem_rx_type
+0x001a mem_rx_hec_err
+0x001c mem_rx_crc_err
+0x001e mem_context_ptr
+0x0020 mem_display
+0x0028 mem_bcd
+0x0030 mem_state
+0x0031 mem_mode
+0x0032 mem_tsniff
+0x0034 mem_sniff_anchor
+0x0038 mem_clk_offset
+0x003e mem_rx_window
+0x0040 mem_plap
+0x0043 mem_puap
+0x0044 mem_pnap
+0x0046 mem_conn_handle
+0x0047 mem_arq
+0x0048 mem_lmp_to_send
+0x0049 mem_lmi_opcode
+0x004a mem_lmo_reason
+0x004b mem_op
+0x004c mem_state_map
+0x004d mem_supervision_timer
+0x0051 mem_supervision_to
+0x0053 mem_name_offset
+0x0054 mem_key_size
+0x0055 mem_conn_sm
+0x0056 mem_aco
+0x0062 mem_kc
+0x0072 mem_conn_timer
+0x0073 mem_sniff_attempt
+0x0074 mem_sniff_timeout
+0x0075 mem_dsniff
+0x0077 mem_amaddr
+0x0078 mem_lmo_opcode1
+0x0079 mem_lmi_opcode1
+0x007a mem_lmo_reason1
+0x007b mem_lmo_tid1
+0x007c mem_lmo_opcode2
+0x007d mem_lmi_opcode2
+0x007e mem_lmo_reason2
+0x007f mem_lmo_tid2
+0x0080 mem_hci_version
+0x0083 mem_acl_pktlen
+0x0085 mem_sco_pktlen
+0x0086 mem_acl_pktcnt
+0x0088 mem_sco_pktcnt
+0x008a mem_current_sniff_attempt
+0x008b mem_current_sniff_timeout
+0x008c mem_sniff_timeout_temp
+0x008d mem_nfreq_index_inq
+0x008e mem_nfreq_index_page
+0x008f mem_ninqy_index
+0x0090 mem_fhs_misc
+0x0091 mem_subsniff_instant
+0x0095 mem_subsniff_rate
+0x0096 mem_subsniff_tcmax
+0x0098 mem_subsniff_tsniff
+0x0099 mem_lpm_adjust
+0x009a mem_sync_clke
+0x00a0 mem_lpm_current_mult
+0x00a1 mem_gpio_wakeup
+0x00a7 mem_air_mode
+0x00a8 mem_sco_asso_handle
+0x00a9 mem_sco_handle
+0x00ab mem_esco_desco
+0x00ac mem_esco_type
+0x00ad mem_neogotiation_state
+0x00ae mem_saved_amaddr
+0x00af mem_esco_arq
+0x00b0 mem_esco_saved_arq
+0x00b1 mem_sco_obuf
+0x00cf mem_sco_ibuf
+0x00ed mem_sco_poll
+0x00ee mem_npage_index
+0x00ef mem_page_mode
+0x00f0 mem_page_clk
+0x00f4 mem_tst_pktcnt_sync
+0x00f6 mem_tst_pktcnt_hec
+0x00f8 mem_tst_pktcnt_crc
+0x00fa mem_tst_pktcnt_dmh
+0x00fc mem_tmp_buffer_head
+0x00ff mem_tmp_buffer
+0x014f mem_tester_emulate
+0x0150 mem_temp_payload
+0x0150 test_mode_scenario
+0x0151 test_mode_hopping_mode
+0x0152 test_mode_tx_freq
+0x0153 test_mode_rx_freq
+0x0154 test_mode_power_mode
+0x0155 test_mode_poll_period
+0x0156 test_mode_packet_type
+0x0157 test_mode_data_length
+0x0159 mem_test_mode_old_debug_config
+0x015a mem_tester_cnt
+0x015b mem_temp_am_addr
+0x015c mem_temp_arq
+0x015d mem_len
+0x015f mem_clkn_bt
+0x0163 mem_clke_bt
+0x0167 mem_dpll_clkn
+0x016b mem_connection_options
+0x016c mem_nameres_cnt
+0x016d mem_txptr
+0x016f mem_slot_offset
+0x0171 extm_fhs_misc
+0x0172 extm_newconn_am_addr
+0x0173 extm_class
+0x0176 extm_lap
+0x0179 extm_uap
+0x017a extm_nap
+0x017d mem_debug_config
+0x017e mem_lch_code
+0x017f mem_fhs_am_addr
+0x0180 mem_dpll_error
+0x0182 mem_select_list_item
+0x0183 mem_temp_reconn_record
+0x0183 mem_record_bt_mode
+0x0184 mem_temp_lap
+0x018a mem_list_item_ptr
+0x018c mem_eir
+0x01f0 mem_ucode_status
+0x01f1 mem_otp_ucode_flag
+0x01f3 mem_spid_tbuf/* spid buf: 03 addr[23:16] addr[15:8] addr[7:0] */
+0x01f4 mem_iicd_tbuf/* iicd buf: iic_adr addr[15:8] addr[7:0] iic_adr */
+0x01f4 mem_addr_hi
+0x01f5 mem_addr_mi
+0x01f6 mem_addr_lo
+0x01f7 mem_iicd_addr
+0x01f8 mem_spid_rbuf
+0x01fc mem_ucode_buf
+0x01fe mem_ucode_len
+0x0200 mem_sched_addr
+0x0202 mem_ucode_ptr
+0x0204 mem_ucode_keybuf
+0x0214 mem_check_plap_temp
+0x0226 mem_reconnect_flag
+0x0227 mem_switch_fail_master_count
+0x0228 mem_app_evt_timer_count
+0x0229 mem_h5rx_ackcnt
+0x022a mem_check_err_acl_cont
+0x022b mem_rp_packets
+0x022c mem_packet_type
+0x022e mem_hci_sniff_conn_handle
+0x0230 mem_hci_sniff_max_interval
+0x0232 mem_hci_sniff_min_interval
+0x0234 mem_hci_sniff_attempt
+0x0236 mem_hci_sniff_timeout
+0x0238 mem_voice_setting
+0x023a mem_retransmission_effort
+0x023b mem_sco_ptype
+0x023d mem_extm_uap_restore
+0x0240 mem_h5rx_rptr
+0x0242 mem_h5rx_ack
+0x0243 mem_h5tx_ack
+0x0244 mem_h5tx_rptr
+0x0246 mem_h5tx_wptr
+0x0248 mem_h5tx_free
+0x024a mem_h5rx_tmp
+0x024b mem_h5tx_seq
+0x024c mem_hci_acl_queue_wptr
+0x024e mem_hci_acl_queue_rptr
+0x0250 mem_hci_acl_queue_end
+0x0252 mem_hci_acl_queue_wcnt
+0x0253 mem_hci_acl_cnt
+0x0254 mem_hci_acl_tx_trigger_wptr//tx via uart
+0x0256 mem_hci_curr_len
+0x0257 mem_hci_curr_target
+0x0259 mem_l2cap_mem_start
+0x0259 mem_l2cap_rxbuff1_len
+0x025b mem_l2cap_rxbuff2_len
+0x025d mem_l2cap_rxbuff_new
+0x025f mem_l2cap_rxbuff_inuse
+0x0260 mem_l2cap_payload_ptr
+0x0262 mem_l2cap_rx_pkt_length
+0x0264 mem_l2cap_rx_cid
+0x0266 mem_l2cap_rx_done
+0x0267 mem_l2cap_signal_tx_buff_ptr
+0x0269 mem_l2cap_signal_tx_payload_ptr
+0x026b mem_l2cap_signal_tx_length
+0x026d mem_sdp_tx_buff_ptr
+0x026f mem_sdp_tx_payload_ptr
+0x0271 mem_sdp_tx_pkt_length
+0x0273 mem_rfcomm_tx_buff_ptr
+0x0275 mem_rfcomm_tx_payload_ptr
+0x0277 mem_rfcomm_tx_pkt_length
+0x0279 memL2CAP_T1
+0x027b mem_CONTROL_tasks
+0x027c mem_send_config_req
+0x027d mem_config_identifier
+0x027e mem_config_req_dest_CID
+0x0280 mem_rfcomm_malloc_fail_flag
+0x0281 mem_message_to_uppersm
+0x0282 mem_upper_sm_remote_page
+0x0283 mem_upper_sm_reconn
+0x0284 mem_upper_sm_ss
+0x0285 mem_tx_malloc_log
+0x02c5 mem_l2cap_mem_end
+0x02c5 mem_scid
+0x02c7 mem_cmd_length
+0x02c9 mem_tt2
+0x02cb mem_tt3
+0x02cd mem_id
+0x02cf mem_psm
+0x02d1 mem_l2cap_sdpres_delay_time
+0x02d5 mem_le_rxbuf
+0x030d mem_le_l2capbuf
+0x0413 mem_le_mic
+0x0417 mem_le_peer_mic
+0x041b mem_le_peer_ltk
+0x042b mem_le_mrand
+0x043b mem_le_state
+0x043c mem_le_mode
+0x043d mem_le_tsniff
+0x043f mem_le_anchor
+0x0443 mem_le_clk_offset
+0x0449 mem_le_receive_window
+0x044b mem_le_plap
+0x0451 mem_le_conn_handle
+0x0452 mem_le_arq
+0x0453 mem_le_ch
+0x0454 mem_le_hop
+0x0455 mem_le_event_count
+0x0457 mem_le_supervision_timer
+0x045b mem_le_instant
+0x045d mem_le_channels
+0x045e mem_le_op
+0x045f mem_le_access
+0x0463 mem_le_crcinit
+0x0466 mem_le_window_size
+0x0467 mem_le_slave_latency
+0x0469 mem_le_superto
+0x046b mem_le_channel_map
+0x0470 mem_le_no_using
+0x0472 mem_le_peer_sca
+0x0473 mem_le_att_opcode
+0x0474 mem_le_att_handle
+0x0476 mem_le_err_code
+0x0477 mem_le_ll_pairing_fail_reason
+0x0478 mem_le_sk
+0x0488 mem_le_testtype
+0x0489 mem_le_test_sync
+0x048b mem_le_test_pcnt
+0x048d mem_le_rxon_ts
+0x0493 mem_le_rx_ll_opcode
+0x0494 mem_le_notify_attr_start
+0x0496 mem_le_notify_len
+0x0497 mem_cmd_le_create_conn
+0x0498 mem_le_cur_attlist_start_ptr
+0x049a mem_le_cur_handle_start
+0x049c mem_le_cur_handle_end
+0x049e mem_le_cur_uuid_length
+0x049f mem_le_cur_uuid
+0x04af mem_le_curr_att_len
+0x04b0 mem_le_search_res
+0x04b1 mem_le_continue_type
+0x04b2 mem_lmo_header_length
+0x04b3 mem_lmo_header_opcode
+0x04b4 mem_lmo_payload
+0x04c5 mem_lmi_accepted_opcode
+0x04c6 mem_disconn_reason_send
+0x04c7 mem_tx_fixed_freq
+0x04c8 mem_rx_fixed_freq
+0x04c9 mem_ext_features_page
+0x04ca mem_lmpext_ssp_enable
+0x04cc mem_remote_sppcap
+0x04cd mem_lmp_conn_state
+0x04ce mem_soft_timer
+0x04d0 mem_pincode_state
+0x04d1 mem_sres_tid
+0x04d2 mem_accptsco_tid
+0x04d3 mem_auth_enable
+0x04d4 mem_wait_encryption
+0x04d5 mem_sniff_payload
+0x04e5 mem_aurand_send_delay_time
+0x04e9 memRemoteRPNBitRate
+0x04ea memRemotePRNDataBits
+0x04eb memRemotePRNStopBit
+0x04ec memRemotePRNParity
+0x04ed memRemotePRNFlowControl
+0x04ee memRemotePRNXon
+0x04ef memRemotePRNXoff
+0x04f0 mem_mod2div_temp
+0x04f3 mem_contw_temp
+0x04f5 mem_attrib_list
+0x04f7 mem_current_adss
+0x04f8 mem_current_channel
+0x04f9 mem_current_frame_type
+0x04fa mem_current_fcs
+0x04fb mem_current_length
+0x04fd mem_rfcomm_uih_payload_ptr
+0x04ff mem_uih_cmd_type
+0x0500 mem_uih_length
+0x0502 mem_param_payload_ptr
+0x0504 mem_ms_param
+0x0505 mem_pn_credit_flow_type_info
+0x0506 mem_pn_priority
+0x0507 mem_pn_acknowledg_timer
+0x0508 mem_pn_max_retrans
+0x0509 mem_rfcomm_send_adss
+0x050a mem_rfcomm_send_frame_type
+0x050b mem_rfcomm_send_fcs
+0x050c mem_rfcomm_send_offset
+0x050d mem_sdp_mem_start
+0x050d mem_sdp_uuid_search_ptr
+0x0515 mem_sdp_continue_byte
+0x0517 mem_sdp_pduid
+0x0518 mem_sdp_transactionid
+0x051a mem_sdp_transactionid_local
+0x051c mem_sdp_attribute_maxbyte
+0x051e mem_sdp_record_maxcnt
+0x0520 mem_sdp_record_handle
+0x0524 mem_sdp_LACAP_found
+0x0525 mem_sdp_RFCOMM_found
+0x0526 mem_sdp_handle_list
+0x0526 mem_sdp_attrib_list
+0x0546 mem_sdp_error_code
+0x0548 mem_sdp_all_length
+0x054a mem_handle_humber
+0x054b mem_search_uuid
+0x054d mem_sdp_mem_end
+0x054d mem_rxbuf
+0x055e mem_random_number
+0x056e mem_round_key
+0x057e mem_kinit
+0x058e mem_input_store
+0x059e mem_x
+0x05ae mem_y
+0x05bd mem_y15
+0x05be mem_key_store
+0x05cf mem_key_store_end
+0x05d0 memp_ar_key
+0x05d2 memp_ar_input
+0x05d4 mem_ar_hround
+0x05de mem_ec_infinite
+0x05df mem_ec_loopc
+0x05e1 mem_aes_cmac_data_length
+0x05e2 memdat
+0x05e2 mem_ax
+0x05fa mem_ay
+0x0612 mem_az
+0x062a mem_bx
+0x0642 mem_ax_256//32 bytes
+0x0642 mem_by
+0x065a mem_bz
+0x0662 mem_ay_256// 32 bytes
+0x0672 mem_cx
+0x0682 mem_az_256// 32 bytes
+0x068a mem_cy
+0x06a1 mem_cy5
+0x06a2 mem_bx_256// 32 bytes
+0x06a2 mem_cz
+0x06ba mem_k
+0x06c2 mem_by_256// 31 bytes
+0x06d2 mem_align
+0x06e2 mem_bz_256//32 bytes
+0x06e2 mem_tmp1
+0x06e2 memahbak
+0x06fa mem_tmp5
+0x0702 mem_cx_256//32 bytes
+0x0702 memahsave
+0x0712 mem_tmp2
+0x0722 mem_cy_256// 32 bytes
+0x0722 memahsave_end
+0x0722 mem_addr_padding
+0x0723 mem_addr_value/* 12 bytes     */ 
+0x072a mem_tmp3
+0x072a mem_t1
+0x072f mem_addr_value_end
+0x0732 mem_addr_iocap_end
+0x0741 mem_cy5_256// 1 byte
+0x0742 mem_cz_256// 32 bytes
+0x0742 mem_tmp0
+0x0742 mem_t0
+0x074a mem_tmp0a
+0x075a mem_t2
+0x0762 mem_k_256//32 bytes
+0x0772 mem_t3
+0x0782 mem_tmp1_256//32 bytes
+0x078a mem_t7
+0x07a2 mem_tmp5_256
+0x07c2 mem_tmp2_256
+0x07e2 mem_tmp3_256
+0x07e2 mem_t1_256
+0x0802 mem_tmp0_256
+0x0802 mem_t0_256
+0x0822 mem_t2_256
+0x0842 mem_t3_256
+0x0862 mem_t7_256
+0x0882 mem_p
+0x089a mem_a
+0x08b2 mem_b
+0x08ca mem_gx
+0x08e2 mem_gy
+0x08fa memh0
+0x091a mem_p_256
+0x093a mem_a_256
+0x095a mem_gx_256
+0x097a mem_gy_256
+0x099a mem_le_slat
+0x09aa mem_sp_state_start
+0x09aa mem_sp_state
+0x09ab mem_master_sp_state
+0x09ac mem_sp_flag
+0x09ad mem_master_sp_flag
+0x09ae mem_sp_calc
+0x09af mem_sp_dh_ready
+0x09b0 mem_sp_localsm
+0x09b1 mem_pairing_auth
+0x09b2 mem_sp_flag_start
+0x09b2 mem_sp_local_key_send_count
+0x09b3 mem_sp_remote_key_recv_count
+0x09b4 mem_sp_remote_key_invalid
+0x09b5 mem_sp_dhkey_invalid
+0x09b6 mem_gkey
+0x09ba mem_le_pubkey_remote_x_256
+0x09c2 mem_sp_pubkey_remote
+0x09c2 mem_sp_pubkey_remote_x
+0x09da mem_sp_pubkey_remote_x_end
+0x09da mem_le_pubkey_remote_y_256
+0x09e2 mem_sp_pubkey_remote_y
+0x09fa mem_le_dhkey_256
+0x0a02 mem_sp_dhkey
+0x0a1a mem_sp_dhkey_end
+0x0a1a mem_sp_random_local
+0x0a2a mem_sp_random_local_end
+0x0a2a mem_sp_random_remote
+0x0a3a mem_sp_random_remote_end
+0x0a3a memresult
+0x0a3a mem_sp_calc_result
+0x0a3a memh
+0x0a3e memg
+0x0a42 memf
+0x0a46 meme
+0x0a4a mem_sp_calc_result_high
+0x0a4a memd
+0x0a4e memc
+0x0a52 memb
+0x0a56 mema
+0x0a5a mem_sp_check_result
+0x0a6a mem_sp_confirm_remote
+0x0a7a mem_sp_prarm_stack
+0x0a8a mem_UI_data_txbuff_length
+0x0a8c mem_ipc_skip_continue_proc
+0x0a8d mem_ui_timer_temp//length 4
+0x0a8d mem_ipc_rega_temp
+0x0a91 mem_hold_contr
+0x0a93 mem_hold_contw
+0x0a95 mem_fifo_temp
+0x0a96 mem_pdatatemp
+0x0a9e mem_temp//8 bytes
+0x0aa6 mem_timeup// 4 bytes
+0x0aaa mem_rega//4 bytes
+0x0aae mem_regb//4 bytes
+0x0ab2 mem_regc//3 bytes
+0x0ab5 mem_contr//2 bytes
+0x0ab7 mem_contw//2 bytes
+0x0ab9 mem_wakup_from_power_flag
+0x0aba mem_saved_gpio_in
+0x0abe mem_shutter_random_mac_data_temp
+0x0abe mem_shutter_config_data_temp
+0x0abe mem_le_adv_channel_map_temp
+0x0abe mem_le_data_len_temp//1byte
+0x0abe mem_tx_fifo_map_temp
+0x0abe mem_rpn_dlci//1byte
+0x0abe mem_event_cmd_response_content//2byte
+0x0abe mem_le_prand//16byte
+0x0abe mem_AES_CMAC_k//16 bytes
+0x0abe mem_regext_index//1 bytes
+0x0abe mem_temp_block0
+0x0abf mem_le_data_temp//15bytes
+0x0abf mem_temp_block1
+0x0ace mem_le_aes_128//16byte
+0x0ace mem_regext//64 bytes
+0x0ace mem_AES_CMAC_k1//16 bytes
+0x0ace mem_temp_block2
+0x0ade mem_AES_CMAC_k2//16 bytes
+0x0ade mem_temp_block3
+0x0aee mem_AES_CMAC_temp// 16 bytes
+0x0aee mem_temp_block4
+0x0afe mem_AES_CMAC_M_last// 16 bytes
+0x0afe mem_module_uart_cmd
+0x0aff mem_module_uart_opcode
+0x0b00 mem_module_uart_len
+0x0b01 mem_module_temp_nl_discard_packet
+0x0b02 mem_temp_block5
+0x0b0e mem_le_mackey//16 bytes
+0x0b0e mem_app_receive_temp
+0x0b0e mem_key_value_temp
+0x0b10 mem_key_value
+0x0b12 mem_key_value_temp1
+0x0b13 mem_key_value_temp2
+0x0b14 mem_key_value_temp3
+0x0b15 mem_key_value_temp4
+0x0b16 mem_key_value_temp5
+0x0b17 mem_key_value_temp6
+0x0b18 mem_temp_block6
+0x4000 mem_patch00
+0x4001 mem_patch01
+0x4002 mem_patch02
+0x4003 mem_patch03
+0x4004 mem_patch04
+0x4005 mem_patch05
+0x4006 mem_patch06
+0x4007 mem_patch07
+0x4008 mem_patch08
+0x4009 mem_patch09
+0x400a mem_patch0a
+0x400b mem_patch0b
+0x400c mem_patch0c
+0x400d mem_patch0d
+0x400e mem_patch0e
+0x400f mem_patch0f
+0x4010 mem_patch10
+0x4011 mem_patch11
+0x4012 mem_patch12
+0x4013 mem_patch13
+0x4014 mem_patch14
+0x4015 mem_patch15
+0x4016 mem_patch16
+0x4017 mem_patch17
+0x4018 mem_patch18
+0x4019 mem_patch19
+0x401a mem_patch1a
+0x401b mem_patch1b
+0x401c mem_patch1c
+0x401d mem_patch1d
+0x401e mem_patch1e
+0x401f mem_patch1f
+0x4020 mem_patch20
+0x4021 mem_patch21
+0x4022 mem_patch22
+0x4023 mem_patch23
+0x4024 mem_patch24
+0x4025 mem_patch25
+0x4026 mem_patch26
+0x4027 mem_patch27
+0x4028 mem_patch28
+0x4029 mem_patch29
+0x402a mem_patch2a
+0x402b mem_patch2b
+0x402c mem_patch2c
+0x402d mem_patch2d
+0x402e mem_patch2e
+0x402f mem_patch2f
+0x4030 mem_patch30
+0x4031 mem_patch31
+0x4032 mem_patch32
+0x4033 mem_patch33
+0x4034 mem_patch34
+0x4035 mem_patch35
+0x4036 mem_patch36
+0x4037 mem_patch37
+0x4038 mem_patch38
+0x4039 mem_patch39
+0x403a mem_patch3a
+0x403b mem_patch3b
+0x403c mem_patch3c
+0x403d mem_patch3d
+0x403e mem_patch3e
+0x403f mem_patch3f
+0x4040 mem_context
+0x4090 mem_current_amaddr
+0x4091 mem_lpm_mode
+0x4092 mem_device_option
+0x4093 mem_scan_mode
+0x4094 mem_last_clkn
+0x4098 mem_features
+0x40a0 mem_lap
+0x40a3 mem_uap
+0x40a4 mem_nap
+0x40a6 mem_npage
+0x40a7 mem_glap
+0x40aa mem_class
+0x40ad mem_iscan_window
+0x40af mem_iscan_interval
+0x40b1 mem_pscan_window
+0x40b3 mem_pscan_interval
+0x40b5 mem_page_interval
+0x40b7 mem_page_window
+0x40b9 mem_page_to
+0x40bb mem_inq_window
+0x40bd mem_fcomp_mul
+0x40be mem_fcomp_div
+0x40bf mem_rx_window_init
+0x40c1 mem_rx_window_sniff
+0x40c3 mem_rf_init_ptr
+0x40c5 mem_last_type
+0x40c6 mem_last_type_esco
+0x40c7 mem_last_type_saved
+0x40c8 mem_retransmission_cnt
+0x40ca mem_next_btclk
+0x40ce mem_rf_rccal
+0x40cf mem_handle_num
+0x40d0 mem_max_slot
+0x40d1 mem_eir_enable
+0x40d2 mem_afh_instant
+0x40d6 mem_afh_error_total
+0x40d8 mem_afh_cfg
+0x40d9 mem_afh_new_mod
+0x40da mem_afh_map_lo
+0x40df mem_afh_map_hi
+0x40e4 mem_afh_used
+0x40e5 mem_afh_index
+0x40e7 mem_afh_map_new
+0x40f2 mem_afh_map
+0x4142 mem_afh_timer
+0x4146 mem_afh_classify_channel_map
+0x4150 mem_chip_functions
+0x4152 mem_lpm_wake_lock
+0x4154 mem_lpm_interval
+0x4156 mem_lpm_overhead
+0x4157 mem_lpm_hibernate_switch
+0x4158 mem_lpm_doze_switch
+0x4159 mem_esco_addr
+0x415a mem_sniff_unint_lost
+0x415b mem_ptt
+0x415c mem_sleep_counter//should be 0x41fc in REVC
+0x4160 mem_sleep_counter_all
+0x4164 mem_sleep_clkn
+0x416a mem_sniff_rcv
+0x416d mem_sniff_lost
+0x4170 mem_clks_per_lpo
+0x4173 mem_lpm_mult
+0x4174 mem_lpm_mult_timeout
+0x4175 mem_lpm_mult_cnt
+0x4176 mem_lpm_config
+0x4179 mem_lpm_xtalcnt
+0x417a mem_lpm_buckcnt
+0x417b mem_lpm_ldocnt
+0x417c mem_lpm_isogate
+0x417d mem_lpm_isogate_final
+0x417e mem_saved_gpio// should be 0x421e in REVC
+0x418e mem_saved_gsel
+0x4191 mem_saved_mark
+0x4199 mem_saved_spidctrl
+0x419a mem_patch_ptr
+0x419c mem_patch_len
+0x419e mem_timers
+0x41be mem_link_key_exists
+0x41bf mem_link_key
+0x41cf mem_hci_cmd
+0x41d0 mem_hci_conn_handle
+0x41d1 mem_hci_plap
+0x41d4 mem_hci_puap
+0x41d5 mem_hci_pnap
+0x41d7 mem_uartd_rxitems_got_data
+0x41d8 mem_uartd_rxitems_threshold
+0x41d9 mem_uartd_rx_timeout
+0x41db mem_loadcode_times
+0x41dc mem_tx_lch
+0x41dd mem_tx_len
+0x41df mem_tx_power
+0x41e0 mem_context_number
+0x41e1 mem_250k_freq_enable
+0x41e2 mem_rf_init_data
+0x41e3 mem_app_handshake_flag
+0x41e4 mem_sniff_param_interval
+0x41e6 mem_sniff_param_attempt
+0x41e8 mem_sniff_param_timeout
+0x41ea mem_cb_check_wakelock
+0x41ec mem_cb_before_hibernate
+0x41ee mem_cb_before_lpm
+0x41f0 mem_cb_le_process
+0x41f2 mem_cb_bt_process
+0x41f4 mem_cb_idle_process
+0x41f6 mem_cb_bb_event_process
+0x41f8 mem_cb_discovry_timeout
+0x41fa mem_cb_att_write
+0x41fc mem_cb_ble_transmit
+0x41fe mem_cb_event_timer
+0x4200 mem_cb_bt_set_mult
+0x4202 mem_eeprom_base
+0x4204 mem_unsniff2sniff_timer_count
+0x4205 mem_wake_up_delay_timer
+0x4206 mem_app_connection_options
+0x4207 mem_app_disconn_reason
+0x4209 mem_app_disconn_reason_flag
+0x420b mem_lpm_delay_after_sniff
+0x420f mem_xrecord_mode
+0x4210 mem_eeprom_block_size
+0x4211 mem_spi_init_clk
+0x4212 mem_spi_init_delay_time
+0x4213 mem_spi_ncs_gpio
+0x4214 mem_nv_data_ptr
+0x4216 mem_nv_data_number
+0x4217 mem_hci_lt_rx_state
+0x4218 mem_l2cap_xmem_start
+0x4218 mem_l2cap_tx_multi_offset//0 means single packet
+0x421a mem_sdp_remote_cid
+0x421c mem_rfcomm_remote_cid
+0x421e mem_hid_ctrl_remote_cid
+0x4220 mem_hid_int_remote_cid
+0x4222 mem_sdp_state
+0x4223 mem_rfcomm_state
+0x4224 mem_hid_control_state
+0x4225 mem_hid_interrupt_state
+0x4226 mem_spp_state
+0x4227 mem_ML2CAP_comm_id
+0x4228 mem_used_map
+0x4229 mem_tx_fifo0
+0x4229 mem_tx_fifo0_map
+0x422a mem_tx_fifo0_ptr
+0x422c mem_tx_fifo1
+0x422c mem_tx_fifo1_map
+0x422d mem_tx_fifo1_ptr
+0x422f mem_tx_fifo2
+0x422f mem_tx_fifo2_map
+0x4230 mem_tx_fifo2_ptr
+0x4232 mem_tx_fifo3
+0x4232 mem_tx_fifo3_map
+0x4233 mem_tx_fifo3_ptr
+0x4235 mem_tx_fifo_end
+0x4235 mem_l2cap_lpm_txbuf
+0x4335 mem_l2cap_flow_ctrl_flag
+0x4336 mem_l2cap_pending_item
+0x4337 mem_l2cap_xmem_end
+0x4337 mem_le_dsniff
+0x4339 mem_le_conn_interval
+0x433b mem_le_scan_enable
+0x433c mem_le_scan_interval
+0x433e mem_le_scan_window
+0x4340 mem_le_adv_enable
+0x4341 mem_le_adv_data_len
+0x4342 mem_le_adv_data
+0x4361 mem_le_scan_data_len
+0x4362 mem_le_scan_data
+0x4381 mem_le_name_len
+0x4382 mem_le_name
+0x43a0 mem_le_new_map
+0x43a5 mem_le_new_param
+0x43a5 mem_le_new_transmitwindowsize
+0x43a6 mem_le_new_transmitwindowoffset
+0x43a8 mem_le_new_conninterval
+0x43aa mem_le_new_connslavelatency
+0x43ac mem_le_new_connsupervisiontimeout
+0x43ae mem_le_txheader
+0x43af mem_le_txlen
+0x43b0 mem_le_txpayload
+0x43b2 mem_le_txcid
+0x43b4 mem_le_l2cap
+0x43b5 mem_le_l2cap_response
+0x43b6 mem_le_txbdy
+0x43d5 mem_le_pcnt_tx
+0x43da mem_le_pcnt_rx
+0x43df mem_le_last_mic
+0x43e3 mem_le_ivm
+0x43e7 mem_le_ivs
+0x43eb mem_le_ltk
+0x43fb mem_ltk_exists
+0x43fc mem_le_rconfirm
+0x440c mem_le_srand
+0x441c mem_le_iat
+0x441d mem_le_rat
+0x441e mem_le_preq
+0x441f mem_le_preq_iocap
+0x4420 mem_le_preq_oob
+0x4421 mem_le_preq_auth
+0x4422 mem_le_preq_max_keysize
+0x4423 mem_le_preq_init_key_distribution
+0x4424 mem_le_preq_resp_key_distribution
+0x4425 mem_le_pres
+0x4426 mem_le_pres_iocap
+0x4427 mem_le_pres_oob
+0x4428 mem_le_pres_auth
+0x4429 mem_le_pres_max_keysize
+0x442a mem_le_pres_init_key_distribution
+0x442b mem_le_pres_resp_key_distribution
+0x442c mem_le_search_handle_start
+0x442e mem_le_search_handle_end
+0x4430 mem_le_att_offset
+0x4430 mem_le_search_att_type_length
+0x4431 mem_le_search_att_type
+0x4441 mem_le_notify_handle
+0x4443 mem_le_search_uuid_length
+0x4444 mem_le_search_uuid
+0x4454 mem_le_adv_param
+0x4454 mem_le_adv_interval
+0x4456 mem_le_adv_type
+0x4457 mem_le_adv_own_addr_type
+0x4458 mem_le_adv_direct_addr_type
+0x4459 mem_le_adv_direct_addr
+0x445f mem_le_adv_channel_map
+0x4460 mem_le_conn_param
+0x4460 mem_le_conn_peer_addr_type
+0x4461 mem_le_conn_peer_addr
+0x4467 mem_le_conn_own_addr_type
+0x4468 mem_le_interval_min
+0x446a mem_le_interval_max
+0x446c mem_le_latency
+0x446e mem_le_timeout
+0x4470 mem_le_scan_params
+0x4470 mem_le_scan_type
+0x4471 mem_le_scan_own_addr_type
+0x4472 mem_le_lap
+0x4475 mem_le_uap
+0x4476 mem_le_nap
+0x4478 mem_le_local_mtu
+0x447a mem_le_remote_mtu
+0x447c mem_le_skdm
+0x4484 mem_le_skds
+0x448c mem_le_init_superto
+0x448e mem_ui_le_uuid_table
+0x4490 mem_le_secure_connect_enable
+0x4491 mem_le_secure_connect_flag
+0x4492 mem_le_sc_calc
+0x4493 mem_le_secure_connect_state
+0x4494 mem_le_sc_confirm_gkey_flag
+0x4495 mem_le_sc_local_key_invalid
+0x4496 mem_le_pairing_state
+0x4497 mem_le_enc_state
+0x4498 mem_le_pairing_mode
+0x4499 mem_le_tk
+0x449d mem_le_ediv
+0x449f mem_le_rand
+0x44a7 mem_le_irk
+0x44b7 mem_le_transmit_window
+0x44bb mem_le_configuration
+0x44bc mem_le_fixed_ltk
+0x44cc mem_le_pairing_handle
+0x44ce mem_le_l2cap_size
+0x44d0 mem_le_packet_len_recved
+0x44d1 mem_le_tx_buff_used
+0x44d2 mem_le_tx_ptr0
+0x44d4 mem_le_tx_ptr1
+0x44d6 mem_le_tx_ptr2
+0x44d8 mem_le_tx_ptr3
+0x44da mem_le_signaling_identifier
+0x44db mem_le_l2cap_signaling_conn_param_update_rsp_result
+0x44dd mem_le_packet_size
+0x44de mem_le_packet_llid
+0x44df mem_le_payload_ptr
+0x44e1 mem_le_md_count
+0x44e2 mem_lmp_version
+0x44e5 mem_lmp_subversion
+0x44e7 mem_local_name_length
+0x44e8 mem_local_name
+0x44eb mem_local_name2
+0x452b mem_local_name_end
+0x452c mem_unsniff2sniff_timer
+0x452d mem_switch_flag
+0x452e mem_classic_bt_flag
+0x452f mem_pn_dlci
+0x4530 mem_pn_max_frame_size
+0x4532 memFCStemp1
+0x4533 memFCStemp2
+0x4534 memFCStemp3
+0x4535 mem_rfcomm_initiator
+0x4536 mem_remote_spp_channel
+0x4537 mem_HIUfcs_SPP
+0x4538 mem_HIUfcs_SPP_WCredits
+0x4539 mem_rfcomm_send_more_pkt
+0x453a mem_remote_credits
+0x453b mem_credit_given
+0x453c mem_ms_channel
+0x453d mem_credit_flag
+0x453e mem_rfcomm_max_frame_size
+0x4540 mem_rfcomm_credit_init_data
+0x4541 mem_cb_receive_spp_data
+0x4543 mem_nl_rx_data_src
+0x4545 mem_nl_rx_len_all
+0x4547 mem_ui_uuid_table
+0x4549 mem_all_uuid_16bits
+0x455f mem_all_uuid_128bits
+0x4581 mem_sdp_l2capch_ptr
+0x4583 mem_sp_local_key_invalid
+0x4584 mem_le_private_key_256
+0x45a4 mem_le_pubkey_local_x_256
+0x45c4 mem_le_pubkey_local_y_256
+0x45e4 mem_sp_private_key
+0x45fc mem_sp_pubkey_local
+0x45fc mem_sp_pubkey_local_x
+0x4614 mem_sp_pubkey_local_x_end
+0x4614 mem_sp_pubkey_local_y
+0x462c mem_ssp_enable
+0x462d mem_sp_iocap_local
+0x4630 mem_sp_iocap_remote
+0x4633 mem_flag_mode_ssp_pin
+0x4634 mem_ssp_mode_flag
+0x4635 mem_authentication_passkey_times
+0x4636 mem_passkey_1bit
+0x4637 mem_flag_pairing_state
+0x4638 mem_ipc_lock_bt
+0x4639 mem_ipc_lock_c51
+0x463a mem_ipc_fifo_bt2c51
+0x4642 mem_ipc_fifo_c512bt
+0x464a mem_ui_timer_last_btclk
+0x464e mem_discovery_timeout_timer_count
+0x4650 mem_hid_handshake_timer_count
+0x4651 memui_reconnect_mode
+0x4652 mem_ui_state_map
+0x4654 mem_ui_profile_supported
+0x4655 mem_discovery_timeout
+0x4657 mem_pin_length
+0x4658 mem_pin
+0x4668 mem_soft_version_num
+0x466a mem_current_packet_length
+0x466c mem_module_state
+0x466d mem_module_spp_lpm_mult
+0x466e mem_module_le_lpm_mult
+0x466f mem_module_bluetooth_stauts_by_command
+0x4670 mem_module_le_rx_data_len
+0x4671 mem_module_le_rx_data_address
+0x4673 mem_module_le_rx_data_handle
+0x4675 mem_module_data_write_handle
+0x4677 mem_module_data_write_handle2
+0x4679 mem_module_flag
+0x467a mem_module_hci_notify_len
+0x467b mem_module_hci_notify_handle
+0x467d mem_module_hci_nofiy_addr
+0x467f mem_last_transmite_clock
+0x4683 mem_module_uuid_list
+0x47af mem_module_uuid_list_end
+0x47af mem_module_le_att_list
+0x4a25 mem_module_le_att_list_end
+0x4a25 mem_module_nv_data
+0x4a25 mem_module_nv_data0
+0x4a47 mem_module_nv_data1
+0x4a69 mem_module_nv_data2
+0x4a8b mem_module_nv_data3
+0x4aad mem_module_nv_data4
+0x4acf mem_rfcomm_lmp_dis_flag
+0x4ad0 mem_module_rfcomm_disconnect_count
+0x4ad1 mem_le_buff_len
+0x4ad3 mem_le_buff_len_all
+0x4ad5 mem_module_prepare_write_request_contw
+0x4ad7 mem_module_prepare_write_request_contr
+0x4ad9 mem_module_master_rx_max
+0x4adb mem_le_txheader_temp
+0x4adc mem_le_txlen_temp
+0x4add mem_le_txpayload_temp
+0x4adf mem_le_txcid_temp
+0x4ae1 mem_le_l2cap_temp
+0x4ae2 mem_le_l2cap_response_temp
+0x4ae3 mem_le_txbdy_temp
+0x4bde mem_rf_init
+0x4bed mem_ble_dle_enable
+0x4bee mem_judge_clear_got_tx_falg
+0x4bef mem_2m0_tmier_address
+0x4bf2 mem_ipcbuf_bt2m0_flag
+0x4bf3 mem_ipcbuf_bt2m0_write
+0x4bf5 mem_ipcbuf_bt2m0_read
+0x0b1e mem_module_prepare_write_request_packet
+0x0b1e mem_module_prepare_write_request_PDU_length
+0x0b20 mem_module_prepare_write_request_Channel_ID
+0x0b22 mem_module_prepare_write_request_opcode
+0x0b23 mem_module_prepare_write_request_handle
+0x0b25 mem_temp_prepare_write_request_Data
+0x0d7d mem_le_l2capbuf_new
+0x0e81 mem_le_l2capbuf_new_end
+0x0b1e mem_usb_status
+0x0b1f mem_usb_fifo_empty
+0x0b20 mem_usb_read_len
+0x0b21 mem_usb_rxbuf
+0x0b61 mem_bufptr
+0x0b63 mem_remain
+0x0b64 mem_devicedesc
+0x0b78 mem_hidreportdesc_kb
+0x0b7a mem_hidreportdesc_m
+0x0b7c mem_confdesc
+0x0be0 mem_string0
+0x0be5 mem_string1
+0x0c03 mem_string2
+0x0c43 mem_string3
+0x0c61 mem_usb_zero_packet
+0x0c63 mem_usb_ones_packet
+0x0c65 mem_usb_two_packet
+0x0c67 mem_usb0_state
+0x0c68 mem_usb_offline_check_gpio
+0x0c69 mem_usb_tx_interval
+0x0c6a mem_usb_clear_mem_start
+0x0c6a mem_usb_setup
+0x0c6a mem_usb_setup_bmRequestType
+0x0c6b mem_usb_setup_bRequest
+0x0c6c mem_usb_setup_bValue
+0x0c6d mem_usb_setup_bValueH
+0x0c6e mem_usb_setup_wIndex
+0x0c70 mem_usb_setup_bLength
+0x0c71 mem_usb_setup_bLengthH
+0x0c72 mem_usb0_setup
+0x0cb2 mem_usb0_set_report_data
+0x0cf2 mem_usb0_get_report_data
+0x0d32 mem_usb_state
+0x0d33 mem_usb_tx_wait
+0x0d34 mem_usb_tx_enable
+0x0d35 mem_usb_remote_wakeup
+0x0d36 mem_usb_clear_remote_wakeup
+0x0d37 mem_usb_ep0_stall_status
+0x0d38 mem_usb_ep1_stall_status
+0x0d39 mem_usb_ep2_stall_status
+0x0d3a mem_usb_ep3_stall_status
+0x0d3b mem_dsc_info_data_pointer
+0x0d3d mem_dsc_info_len
+0x0d3e mem_usb0_data_ready_report
+0x0d3f mem_usb_tx_win_enable
+0x0d40 mem_usb_tx_mac_enable
+0x0d41 mem_usb_device_enumeration_endflag
+0x0d42 mem_usb_wakestate_onetime_flag
+0x0d43 mem_usb_mac_wakeup_trig
+0x0d44 mem_usb_set_high_addr_flag
+0x0d45 mem_usb_set_protocol_value
+0x0d46 mem_usb_set_protocol_status
+0x0d47 mem_usb_get_protocol_flag
+0x0d48 mem_usb_idle_flag
+0x0d49 mem_usb_idle_rate
+0x0d4a mem_usb_setup_bValue_temp
+0x0d4c mem_usb0_get_set_report
+0x0d4d mem_usb_ep1_data
+0x0d4e mem_usb_ep2_data
+0x0d4f mem_usb_clear_halt
+0x0d50 mem_usb_mouse_data
+0x0d60 mem_usb_kb_data
+0x0d70 mem_usb_kb_multikey
+0x0d80 mem_usb_kb_data_sta_data
+0x0d88 mem_usb_kb_data_last_data
+0x0d90 mem_usb_kb_multikey_sta_data
+0x0d93 mem_usb_kb_multikey_last_data
+0x0d96 mem_usb_kb_blank_data_enable
+0x0d97 mem_usb_kb_mul_blank_data_enable
+0x0d98 mem_usb_test_cnt
+0x0d99 mem_usb_clear_mem_end
+0x0d99 mem_usb_test_kb
+0x0d9a mem_rssi_noise_buffer
+0x0e9a mem_rssi_noise_dg_buffer
+0x0f9a mem_rssi_noise_ms_buffer
+0x109a mem_rssi_noise_kb_buffer
+0x119a mem_24g_common_temp
Index: ModuleDemo/BlueTooth/print/branches/jingchen/output/program.lis
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/output/program.lis	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/output/program.lis	(working copy)
@@ -0,0 +1,21983 @@
+              include "bt_format "
+              org 0x0000
+
+p_start:
+0000 c2840014 bbit1 8 ,pf_patch_ext 
+0001 c00080a4 beq patch00_1 ,p_soft_reset 
+0002 c0300053 beq patch0c_0 ,p_process_dmh_data_end 
+0003 c04280aa beq patch10_5 ,p_shutdown_radio 
+0004 c04480cb beq patch11_1 ,p_set_freq_tx 
+0005 c046802d beq patch11_5 ,p_set_rccal 
+0006 c04a008a beq patch12_4 ,p_ahead_window 
+0007 c05100d4 beq patch14_2 ,p_init_param 
+0008 c0518095 beq patch14_3 ,p_lpm_adjust_clk 
+0009 c0548098 beq patch15_1 ,p_lpm_dispatch_next 
+000a c05600db beq patch15_4 ,p_lpm_unconn_nossp 
+000b c05c00dc beq patch17_0 ,p_module_init 
+000c c05d8130 beq patch17_3 ,p_module_hci_cmd_control 
+000d c05e01a8 beq patch17_4 ,p_module_hci_cmd_transmit_le_notify 
+000e c0638050 beq patch18_7 ,p_l2cap_process_one_signal 
+000f c06a8038 beq patch1a_5 ,p_ml2cap_call_proc_signal 
+0010 c07581c9 beq patch1d_3 ,p_le_init_conn 
+0011 c078806d beq patch1e_1 ,p_le_slave_dispatch 
+0012 c07a8082 beq patch1e_5 ,p_le_slave_more_data 
+0013 20204a8b branch assert 
+
+pf_patch_ext:
+0014 c00181d3 beq patch20_3 ,p_le_receive_skip 
+0015 c00281df beq patch20_5 ,p_le_transmit_receive_sifs 
+0016 c00301e8 beq patch20_6 ,p_le_transmit 
+0017 c00381ee beq patch20_7 ,p_le_transmit0 
+0018 c00401f7 beq patch21_0 ,p_le_send_adv_ind 
+0019 c0058208 beq patch21_3 ,p_le_send_scan_response 
+001a c0098218 beq patch22_3 ,p_le_acknowledge 
+001b c00a02b3 beq patch22_4 ,p_le_check_wak 
+001c c00e02c8 beq patch23_4 ,p_le_prepare_tx 
+001d c00f02f1 beq patch23_6 ,p_le_send_packet 
+001e c00f831f beq patch23_7 ,p_le_parse 
+001f c0110381 beq patch24_2 ,p_le_parse_l2cap 
+0020 c01903a9 beq patch26_2 ,p_le_lpm_set_mult 
+0021 c01d03bc beq patch27_2 ,p_parse_lmp 
+0022 c01f03c7 beq patch27_6 ,p_send_lmp 
+0023 c02083d9 beq patch28_1 ,p_ssp_disable 
+0024 c02903df beq patch2a_2 ,p_parse_dlci0_rp 
+0025 c0468306 beq patch31_5 ,p_le_encrypt 
+0026 c04c83f3 beq patch33_1 ,p_sp_initialize_256 
+0027 20204a8b branch assert 
+
+p_initialize_radio_cont:
+0028 20404bba call lpm_cal_xtal_startup 
+0029 204049c8 call switchto_dpllclk 
+002a df200005 arg 5 ,loopcnt 
+002b 20407c9d call delay_ms_wait 
+002c 20204979 branch initialize_radio_cont + 3 
+
+p_set_rccal:
+002d 6fe240ce fetch 1 ,mem_rf_rccal 
+002e 793ffe05 set0 5 ,pdata 
+002f 1fe67c09 sub pdata ,0x09 ,null 
+0030 20210034 branch p_reset_mem_rf_rccal_min09 ,positive 
+0031 1fe67c0f sub pdata ,0x0f ,null 
+0032 24210036 nbranch p_reset_mem_rf_rccal_max0f ,positive 
+0033 202049ab branch set_rccal + 1 
+
+p_reset_mem_rf_rccal_min09:
+0034 7040ce09 jam 0x09 ,mem_rf_rccal 
+0035 202049ab branch set_rccal + 1 
+
+p_reset_mem_rf_rccal_max0f:
+0036 7040ce0f jam 0x0f ,mem_rf_rccal 
+0037 202049ab branch set_rccal + 1 
+
+p_ml2cap_call_proc_signal:
+0038 20405692 call l2cap_malloc_signal_channel 
+0039 18002400 force 0 ,regb 
+003a 2040569d call l2cap_get_signal_tx_payload 
+003b 1fe20a00 copy pdata ,contw 
+003c 6fe40262 fetch 2 ,mem_l2cap_rx_pkt_length 
+003d 1fe22600 copy pdata ,regc 
+003e 6fe40260 fetch 2 ,mem_l2cap_payload_ptr 
+003f 98000c00 iforce contr 
+
+p_ml2cap_proc_one_comm_loop:
+0040 20400046 call p_ml2cap_proc_one_comm 
+0041 1a60a7fc increase -4 ,regc 
+0042 24228040 nbranch p_ml2cap_proc_one_comm_loop ,zero 
+0043 1a420400 copy regb ,temp 
+0044 204054b8 call ml2cap_send_signal 
+0045 202051d6 branch l2cap_rx_reset_state 
+
+p_ml2cap_proc_one_comm:
+0046 efe20006 ifetch 1 ,contr 
+0047 c0040049 beq signal_echo_req ,p_l2cap_proc_signal_echo_req 
+0048 202054e3 branch ml2cap_proc_one_comm + 1 
+
+p_l2cap_proc_signal_echo_req:
+0049 18c22200 copy contr ,rega 
+004a dac0000f arg 0x0f ,addhi 
+004b 7187003f jam 0x3f ,0x18700 
+004c 7187003e jam 0x3e ,0x18700 
+004d dac00000 arg 0 ,addhi 
+004e 1a220c00 copy rega ,contr 
+004f 2020542a branch l2cap_proc_signal_echo_req 
+
+p_l2cap_process_one_signal:
+0050 efe20006 ifetch 1 ,contr 
+0051 c0040049 beq signal_echo_req ,p_l2cap_proc_signal_echo_req 
+0052 202051ec branch l2cap_process_one_signal + 2 
+
+p_process_dmh_data_end:
+0053 6fe2025d fetch 1 ,mem_l2cap_rxbuff_new 
+0054 c0008057 beq 1 ,p_process_l2cap_pass_crc_buff1 
+0055 c0010062 beq 2 ,p_process_l2cap_pass_crc_buff2 
+0056 20204a8b branch assert 
+
+p_process_l2cap_pass_crc_buff1:
+0057 6fe40259 fetch 2 ,mem_l2cap_rxbuff1_len 
+0058 6844015d fetcht 2 ,mem_len 
+0059 9840fe00 iadd temp ,pdata 
+005a 67e40259 store 2 ,mem_l2cap_rxbuff1_len 
+005b 1fe67c00 sub pdata ,0 ,null 
+005c 2022ca8b branch assert ,zero 
+005d 68441000 fetcht 2 ,mem_l2cap_rxbuff1 
+005e 18408404 increase 4 ,temp 
+005f 98467c00 isub temp ,null 
+0060 2042c743 call l2cap_buff1_inuse ,zero 
+0061 20204609 branch process_dmh_cont 
+
+p_process_l2cap_pass_crc_buff2:
+0062 6fe4025b fetch 2 ,mem_l2cap_rxbuff2_len 
+0063 6844015d fetcht 2 ,mem_len 
+0064 9840fe00 iadd temp ,pdata 
+0065 67e4025b store 2 ,mem_l2cap_rxbuff2_len 
+0066 1fe67c00 sub pdata ,0 ,null 
+0067 2022ca8b branch assert ,zero 
+0068 68441400 fetcht 2 ,mem_l2cap_rxbuff2 
+0069 18408404 add temp ,4 ,temp 
+006a 98467c00 isub temp ,null 
+006b 2042c747 call l2cap_buff2_inuse ,zero 
+006c 20204609 branch process_dmh_cont 
+
+p_le_slave_dispatch:
+006d 793f802c set0 mark_buf_full ,mark 
+006e 7044e100 jam 0 ,mem_le_md_count 
+006f 20407964 call sp_calc_sequence_256 
+0070 20405ff8 call le_secure_connect_sm 
+0071 78577c00 disable attempt 
+0072 20405ac0 call le_supervision_update 
+0073 20215783 branch le_slave_disconn ,positive 
+0074 20404c27 call check_ble_disabled 
+0075 204057ed call le_setup 
+0076 20405863 call le_receive_slave 
+0077 242c5775 nbranch le_slave_unsync ,sync 
+0078 2056829e call p_check_ipcbuf_size ,match 
+0079 6fe24bf2 fetch 1 ,mem_ipcbuf_bt2m0_flag 
+007a 245a007f ncall p_buf_full ,blank 
+007b 20405791 call le_got_first_packet 
+007c 2036d762 branch le_slave_match ,match 
+007d c5165762 bmark1 mark_buf_full ,le_slave_match 
+007e 2020576f branch le_slave_cont 
+
+p_buf_full:
+007f 7920002c set1 mark_buf_full ,mark 
+0080 7856fc00 disable match 
+0081 20600000 rtn 
+
+p_le_slave_more_data:
+0082 78377c00 enable attempt 
+0083 2040589b call le_transmit_receive_sifs_notx 
+0084 2056829e call p_check_ipcbuf_size ,match 
+0085 6fe24bf2 fetch 1 ,mem_ipcbuf_bt2m0_flag 
+0086 245a007f ncall p_buf_full ,blank 
+0087 2036d762 branch le_slave_match ,match 
+0088 c5165762 bmark1 mark_buf_full ,le_slave_match 
+0089 2020576f branch le_slave_cont 
+
+p_ahead_window:
+008a 18427e00 copy temp ,pdata 
+008b 20407d2b call clk2bt 
+008c 1c307e00 lshift16 bt_clk ,pdata 
+008d 79207e2c set1 44 ,pdata 
+008e 20407d14 call clk_diff 
+008f 793ffe2c set0 44 ,pdata 
+0090 20404a76 call get_clk 
+0091 20407d14 call clk_diff 
+0092 20740000 rtn user 
+0093 204000a1 call p_clk2rt 
+0094 20204a2f branch ahead_window + 12 
+
+p_lpm_adjust_clk:
+0095 1b427e00 deposit clke 
+0096 204000a0 call p_clk_diff_rt 
+0097 20204ae9 branch lpm_adjust_clk + 3 
+
+p_lpm_dispatch_next:
+0098 6fe4404e fetch 2 ,mem_context + coffset_rx_window 
+0099 1fe37e00 rshift pdata ,pdata 
+009a 20407d2b call clk2bt 
+009b 1e027e00 deposit alarm 
+009c 20407d14 call clk_diff 
+009d 1b420400 copy clke ,temp 
+009e 204000a0 call p_clk_diff_rt 
+009f 20204b67 branch lpm_dispatch_next + 30 
+
+p_clk_diff_rt:
+00a0 20407d14 call clk_diff 
+
+p_clk2rt:
+00a1 98000c00 iforce contr 
+00a2 793f8c10 set0 16 ,contr 
+00a3 20207d1f branch clk2rt + 1 
+
+p_soft_reset:
+00a4 204068c4 call rfcomm_init 
+00a5 204060d7 call init_lmp 
+00a6 204000a8 call p_ui_init 
+00a7 2020400a branch soft_reset + 9 
+
+p_ui_init:
+00a8 20758000 rtn wake 
+00a9 20207b9a branch ui_timer_init 
+
+p_shutdown_radio:
+00aa 203080ba branch p_shutdown_radio0 ,is_rx 
+00ab 708955d4 hjam 0xd4 ,0x955 
+00ac 20000004 nop 4 
+00ad 708955d2 hjam 0xd2 ,0x955 
+00ae 20000004 nop 4 
+00af 708955d1 hjam 0xd1 ,0x955 
+00b0 20000004 nop 4 
+00b1 6fe241df fetch 1 ,mem_tx_power 
+00b2 c00000b8 beq tx_power_0db ,p_shutdown_radio_0db 
+00b3 c00080c8 beq tx_power_3db ,p_shutdown_radio_3db 
+00b4 c00100b8 beq tx_power_5db ,p_shutdown_radio_5db 
+00b5 c00180c8 beq tx_power_f3db ,p_shutdown_radio_f3db 
+00b6 c00200c8 beq tx_power_f5db ,p_shutdown_radio_f5db 
+00b7 c01000c8 beq tx_power_pair ,p_shutdown_radio_pair 
+
+p_shutdown_radio_5db:
+
+p_shutdown_radio_0db:
+00b8 708955d0 hjam 0xd0 ,0x955 
+00b9 708956e0 hjam 0xe0 ,0x956 
+
+p_shutdown_radio0:
+00ba 18002a08 force 0x08 ,radio_ctrl 
+00bb 18002a00 force 0 ,radio_ctrl 
+00bc 7850fc00 disable is_rx 
+00bd 78507c00 disable is_tx 
+00be 782f7c00 pulse packet_end 
+00bf 70890200 hjam 0x0 ,rfen_mdm 
+00c0 70890100 hjam 0x0 ,rfen_tx 
+00c1 70890000 hjam 0x0 ,rfen_rx 
+00c2 70890300 hjam 0 ,rfen_sn 
+00c3 70890470 hjam 0x70 ,rfen_msc 
+00c4 6fe28906 fetch 1 ,rfen_adc 
+00c5 79207e00 set1 0 ,pdata 
+00c6 67e28906 store 1 ,rfen_adc 
+00c7 20600000 rtn 
+
+p_shutdown_radio_pair:
+
+p_shutdown_radio_f5db:
+
+p_shutdown_radio_f3db:
+
+p_shutdown_radio_3db:
+00c8 708955d0 hjam 0xd0 ,0x955 
+00c9 708956c0 hjam 0xc0 ,0x956 
+00ca 202000ba branch p_shutdown_radio0 
+
+p_set_freq_tx:
+00cb 60420017 storet 1 ,mem_last_freq 
+00cc 2040492a call set_freq_tx_offset 
+00cd 20404980 call rf_write_freq 
+00ce 58000500 setarg param_pll_setup 
+00cf 20404a8e call sleep 
+
+p_txon:
+00d0 6fe28906 fetch 1 ,rfen_adc 
+00d1 79207e00 set1 0 ,pdata 
+00d2 67e28906 store 1 ,rfen_adc 
+00d3 20204937 branch txon + 1 
+
+p_init_param:
+00d4 7089067c hjam 0x7c ,rfen_adc 
+00d5 20758000 rtn wake 
+00d6 58000000 setarg 0 
+00d7 67e441dd store 2 ,mem_tx_len 
+00d8 1c437e00 rshift clkn_bt ,pdata 
+00d9 67e84094 store 4 ,mem_last_clkn 
+00da 20600000 rtn 
+
+p_lpm_unconn_nossp:
+00db 20204b7f branch lpm_unconn_cont 
+
+p_module_init:
+00dc 580000ec setarg p_module_process_bb_event 
+00dd 67e441f6 store 2 ,mem_cb_bb_event_process 
+00de 580000fb setarg p_module_bb_event_timer 
+00df 67e441fe store 2 ,mem_cb_event_timer 
+00e0 58000105 setarg p_module_le_receive_data 
+00e1 67e441fa store 2 ,mem_cb_att_write 
+00e2 58000117 setarg p_module_lpm_lock 
+00e3 67e441ea store 2 ,mem_cb_check_wakelock 
+00e4 5800011a setarg p_module_bt_conn_process 
+00e5 67e441f2 store 2 ,mem_cb_bt_process 
+00e6 5800011d setarg p_module_hci_event_receive_spp_data 
+00e7 67e44541 store 2 ,mem_cb_receive_spp_data 
+00e8 20404daf call module_lpm_uart_init 
+00e9 20404dbc call module_gpio_init 
+00ea 20404c2a call check_module_disabled 
+00eb 2020504d branch module_hci_event_enter_standby_mode 
+
+p_module_process_bb_event:
+00ec 1a627e00 copy regc ,pdata 
+00ed c00480f3 beq bt_evt_spp_disconnected ,p_module_process_spp_disconnected 
+00ee c00100f1 beq bt_evt_bb_disconnected ,p_module_process_bb_event_disconned 
+00ef c00a00f9 beq bt_evt_le_connected ,p_module_process_le_conn 
+00f0 20204ddf branch module_process_bb_event + 1 
+
+p_module_process_bb_event_disconned:
+00f1 704ad000 jam 0 ,mem_module_rfcomm_disconnect_count 
+00f2 20204dfb branch module_process_bb_event_disconned 
+
+p_module_process_spp_disconnected:
+00f3 6fe24acf fetch 1 ,mem_rfcomm_lmp_dis_flag 
+00f4 245a00f7 ncall p_set_rfcomm_disconnect_count ,blank 
+00f5 704ad006 jam 6 ,mem_module_rfcomm_disconnect_count 
+00f6 20204e08 branch module_process_spp_disconnected 
+
+p_set_rfcomm_disconnect_count:
+00f7 704ad006 jam 6 ,mem_module_rfcomm_disconnect_count 
+00f8 20600000 rtn 
+
+p_module_process_le_conn:
+00f9 2040038b call module_clear_recv_confirm_flag 
+00fa 20204e28 branch module_process_le_conn 
+
+p_module_bb_event_timer:
+00fb 204000fd call p_module_rfcomm_disconnect_timer 
+00fc 202050c3 branch module_bb_event_timer 
+
+p_module_rfcomm_disconnect_timer:
+00fd 6fe24ad0 fetch 1 ,mem_module_rfcomm_disconnect_count 
+00fe 207a0000 rtn blank 
+00ff 1fe0ffff increase -1 ,pdata 
+0100 67e24ad0 store 1 ,mem_module_rfcomm_disconnect_count 
+0101 247a0000 nrtn blank 
+0102 6fe44652 fetch 2 ,mem_ui_state_map 
+0103 c2804d64 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0104 20600000 rtn 
+
+p_module_le_receive_data:
+0105 20404f11 call module_check_ble_encrypt_state 
+0106 20740000 rtn user 
+0107 1a227e00 copy rega ,pdata 
+0108 67e44671 store 2 ,mem_module_le_rx_data_address 
+0109 20400111 call p_check_ble_40_or_42 
+010a 67e24670 store 1 ,mem_module_le_rx_data_len 
+010b 68440474 fetcht 2 ,mem_le_att_handle 
+010c 60444673 storet 2 ,mem_module_le_rx_data_handle 
+010d 20405b6c call le_att_get_handle_info 
+010e 243a4a8b nbranch assert ,blank 
+010f 6fe2049e fetch 1 ,mem_le_cur_uuid_length 
+0110 20205042 branch module_hci_event_receive_le_data 
+
+p_check_ble_40_or_42:
+0111 6fe24bed fetch 1 ,mem_ble_dle_enable 
+0112 243a0115 nbranch p_check_ble_40 ,blank 
+
+p_check_ble_42:
+0113 1f227e00 copy loopcnt ,pdata 
+0114 20600000 rtn 
+
+p_check_ble_40:
+0115 1a427e00 copy regb ,pdata 
+0116 20600000 rtn 
+
+p_module_lpm_lock:
+0117 2040026c call p_le_check_complete_packet 
+0118 24344d4b nbranch app_get_lpm_wake_lock ,user 
+0119 20204dbd branch module_lpm_lock 
+
+p_module_bt_conn_process:
+011a 2040011c call p_module_spp_enter_sniff 
+011b 202050d3 branch module_control_air_flow 
+
+p_module_spp_enter_sniff:
+011c 20204dc8 branch module_spp_enter_sniff + 1 
+
+p_module_hci_event_receive_spp_data:
+011d 20404dd7 call module_spp_clear_last_transmite_clock 
+
+p_ng_event_receive_spp_data0:
+011e 700aff07 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
+011f 6fe404fb fetch 2 ,mem_current_length 
+0120 207a0000 rtn blank 
+0121 d84000ff arg 255 ,temp 
+0122 20407db5 call not_greater_than 
+0123 1fe27200 copy pdata ,loopcnt 
+0124 6fe404fb fetch 2 ,mem_current_length 
+0125 9f267e00 isub loopcnt ,pdata 
+0126 67e404fb store 2 ,mem_current_length 
+0127 1f227e00 copy loopcnt ,pdata 
+0128 204050a5 call module_hci_prepare_tx 
+0129 6fe404fd fetch 2 ,mem_rfcomm_uih_payload_ptr 
+012a 1fe20c00 copy pdata ,contr 
+012b 204067c1 call uart_copy_tx_bytes_fast 
+012c 18c27e00 copy contr ,pdata 
+012d 67e404fd store 2 ,mem_rfcomm_uih_payload_ptr 
+012e 204067b9 call uartd_send 
+012f 2020011e branch p_ng_event_receive_spp_data0 
+
+p_module_hci_cmd_control:
+0130 6fe20aff fetch 1 ,mem_module_uart_opcode 
+0131 c01381a6 beq hci_cmd_sleep ,p_module_hci_cmd_enter_sleep 
+0132 c0060141 beq hci_cmd_set_pairing_req ,p_module_hci_cmd_set_pairing_mode 
+0133 c03b014a beq hci_cmd_delete_customize_service ,module_hci_cmd_delete_customize_service 
+0134 c03b8150 beq hci_cmd_add_service_uuid ,module_hci_cmd_add_service_uuid 
+0135 c03c0155 beq hci_cmd_add_characteristic_uuid ,module_hci_cmd_add_characteristic_uuid 
+0136 c00a818f beq hci_cmd_set_cod ,module_hci_cmd_le_set_adv_data_set_cod 
+0137 c07f0192 beq hci_cmd_all_round ,module_hci_cmd_all_round 
+0138 20204e5c branch module_hci_cmd_control + 2 
+
+p_module_hci_cmd_set_visibility:
+0139 6fe28950 hfetch 1 ,0x8950 
+013a c0be013c bne 0x7c ,p_module_reset_89xx 
+013b 20204e86 branch module_hci_cmd_set_visibility 
+
+p_module_reset_89xx:
+013c 7089507c hjam 0x7c ,0x8950 
+013d 7089520f hjam 0x0f ,0x8952 
+013e 708955d8 hjam 0xd8 ,0x8955 
+013f 708956f0 hjam 0xf0 ,0x8956 
+0140 20204e86 branch module_hci_cmd_set_visibility 
+
+p_module_hci_cmd_set_pairing_mode:
+0141 1a220600 copy rega ,contru 
+0142 efe20003 ifetch 1 ,contru 
+0143 c0004f1c beq pairing_pincode ,module_hci_pairing_pincode_mode 
+0144 c000cf1f beq pairing_justwork ,module_hci_pairing_just_work_mode 
+0145 c0014f25 beq pairing_passkey ,module_hci_pairing_passkey 
+0146 c0018148 beq pairing_confirm ,p_module_hci_pairing_numeric_comparison 
+0147 2020501c branch module_hci_event_receive_invalid_cmd 
+
+p_module_hci_pairing_numeric_comparison:
+0148 58000001 setarg 0x000001 
+0149 20204f20 branch module_hci_sspairing_mode 
+
+module_hci_cmd_delete_customize_service:
+014a d840000c arg 0x000c ,temp 
+014b 20405b4d call le_att_get_handle_ptr2 
+014c 18c08bfe add contr ,-2 ,contw 
+014d 58000000 setarg 0x0000 
+014e e7e40005 istore 2 ,contw 
+014f 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_add_service_uuid:
+0150 20400159 call module_hci_cmd_add_service_uuid_set_uuid 
+0151 20400176 call uart_copy_rx_bytes_len_data 
+0152 58000000 setarg 0x0000 
+0153 e7e40005 istore 2 ,contw 
+0154 20200188 branch module_hci_event_uuid_handle 
+
+module_hci_cmd_add_characteristic_uuid:
+0155 efe20003 ifetch 1 ,contru 
+0156 2040015d call module_hci_cmd_add_characteristic_uuid_set_handle 
+0157 20400164 call module_hci_cmd_add_characteristic_uuid_set_uuid 
+0158 20200188 branch module_hci_event_uuid_handle 
+
+module_hci_cmd_add_service_uuid_set_uuid:
+0159 2040017a call le_att_creat_new_handle 
+015a 58280002 setarg 0x280002 
+015b e7e60005 istore 3 ,contw 
+015c 20600000 rtn 
+
+module_hci_cmd_add_characteristic_uuid_set_handle:
+015d 67e20a96 store 1 ,mem_pdatatemp 
+015e 2040017a call le_att_creat_new_handle 
+015f 59280302 setarg 0x01280302 
+0160 e7e80005 istore 4 ,contw 
+0161 6fe20a96 fetch 1 ,mem_pdatatemp 
+0162 e7e60005 istore 3 ,contw 
+0163 20600000 rtn 
+
+module_hci_cmd_add_characteristic_uuid_set_uuid:
+0164 2040017a call le_att_creat_new_handle 
+0165 20400176 call uart_copy_rx_bytes_len_data 
+0166 20400176 call uart_copy_rx_bytes_len_data 
+0167 58000000 setarg 0 
+0168 e7e40005 istore 2 ,contw 
+0169 184085ff increase -1 ,temp 
+016a 20405b4d call le_att_get_handle_ptr2 
+016b 18c08c04 add contr ,4 ,contr 
+016c efe20006 ifetch 1 ,contr 
+016d c2820171 bbit1 bit_characteristic_notify ,module_hci_cmd_add_characteristic_uuid_set_ccc_uuid 
+016e c2828171 bbit1 bit_characteristic_indicate ,module_hci_cmd_add_characteristic_uuid_set_ccc_uuid 
+016f 18408401 increase 1 ,temp 
+0170 20600000 rtn 
+
+module_hci_cmd_add_characteristic_uuid_set_ccc_uuid:
+0171 2040017a call le_att_creat_new_handle 
+0172 5a290202 setarg 0x02290202 
+0173 e7f00005 istore 8 ,contw 
+0174 184085ff increase -1 ,temp 
+0175 20600000 rtn 
+
+uart_copy_rx_bytes_len_data:
+0176 efe20003 ifetch 1 ,contru 
+0177 1fe27200 copy pdata ,loopcnt 
+0178 e7e20005 istore 1 ,contw 
+0179 202067ed branch uart_copy_rx_bytes 
+
+le_att_creat_new_handle:
+017a 2040017d call le_att_get_last_handle 
+017b e0440005 istoret 2 ,contw 
+017c 20600000 rtn 
+
+le_att_get_last_handle:
+017d 6fe4448e fetch 2 ,mem_ui_le_uuid_table 
+017e 98000c00 iforce contr 
+
+le_att_get_last_handle_loop:
+017f efe40006 ifetch 2 ,contr 
+0180 207a0000 rtn blank 
+0181 1fe08401 add pdata ,1 ,temp 
+0182 efe20006 ifetch 1 ,contr 
+0183 98c08c00 iadd contr ,contr 
+0184 efe20006 ifetch 1 ,contr 
+0185 98c08c00 iadd contr ,contr 
+0186 18c20a00 copy contr ,contw 
+0187 2020017f branch le_att_get_last_handle_loop 
+
+module_hci_event_uuid_handle:
+0188 60440a9e storet 2 ,mem_temp 
+0189 700aff29 jam hci_event_uuid_handle ,mem_module_uart_opcode 
+018a 58000002 setarg 2 
+018b 204050a5 call module_hci_prepare_tx 
+018c 68440a9e fetcht 2 ,mem_temp 
+018d e044000a istoret 2 ,contwu 
+018e 202067b9 branch uartd_send 
+
+module_hci_cmd_le_set_adv_data_set_cod:
+018f efe60003 ifetch 3 ,contru 
+0190 67e640aa store 3 ,mem_class 
+0191 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_all_round:
+0192 efe20003 ifetch 1 ,contru 
+0193 c000019d beq 0x00 ,module_hci_cmd_all_round_write 
+0194 c0008197 beq 0x01 ,module_hci_cmd_all_round_read 
+0195 c00101a3 beq 0x02 ,module_hci_cmd_all_round_write_addhi 
+0196 2020501c branch module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_all_round_read:
+0197 efe40003 ifetch 2 ,contru 
+0198 1fe22400 copy pdata ,regb 
+0199 efe20003 ifetch 1 ,contru 
+019a 1fe22200 copy pdata ,rega 
+019b d8400000 arg 0x00 ,temp 
+019c 2020502a branch module_hci_event_set_cmd 
+
+module_hci_cmd_all_round_write:
+019d efe40003 ifetch 2 ,contru 
+019e 1fe20a00 copy pdata ,contw 
+019f efe20003 ifetch 1 ,contru 
+01a0 1fe27200 copy pdata ,loopcnt 
+01a1 204067da call uart_copy_rx_bytes_fast 
+01a2 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_all_round_write_addhi:
+01a3 efe20003 ifetch 1 ,contru 
+01a4 1fe22c00 copy pdata ,addhi 
+01a5 2020501f branch module_hci_event_receive_valid_cmd 
+
+p_module_hci_cmd_enter_sleep:
+01a6 2040501f call module_hci_event_receive_valid_cmd 
+01a7 20204d85 branch app_enter_hibernate 
+
+p_module_hci_cmd_transmit_le_notify:
+01a8 6fe24679 fetch 1 ,mem_module_flag 
+01a9 c281827e bbit1 module_receive_complete_prepare_write_req ,p_le_send_att_prepare_write_response 
+01aa 6fe24679 fetch 1 ,mem_module_flag 
+01ab c3838000 rtnbit1 module_recv_confirm 
+01ac 1840fffd add temp ,-3 ,pdata 
+01ad d84000c8 arg 200 ,temp 
+01ae 20407db5 call not_greater_than 
+01af 6842467a fetcht 1 ,mem_module_hci_notify_len 
+01b0 20407db5 call not_greater_than 
+01b1 1fe22200 copy pdata ,rega 
+01b2 18427e00 copy temp ,pdata 
+01b3 9a267e00 isub rega ,pdata 
+01b4 67e2467a store 1 ,mem_module_hci_notify_len 
+01b5 6844467b fetcht 2 ,mem_module_hci_notify_handle 
+01b6 184085ff increase -1 ,temp 
+01b7 20405b4d call le_att_get_handle_ptr2 
+01b8 203a01c5 branch p_module_hci_cmd_transmit_handle_error ,blank 
+01b9 e8480006 ifetcht 4 ,contr 
+01ba 59280302 setarg 0x01280302 
+01bb 98467c00 isub temp ,null 
+01bc 242281c5 nbranch p_module_hci_cmd_transmit_handle_error ,zero 
+01bd efe20006 ifetch 1 ,contr 
+01be c28281c1 bbit1 bit_characteristic_indicate ,p_module_hci_cmd_transmit_le_indicate 
+01bf c2824f01 bbit1 bit_characteristic_notify ,module_hci_cmd_transmit_le_notify + 13 
+01c0 202001c5 branch p_module_hci_cmd_transmit_handle_error 
+
+p_module_hci_cmd_transmit_le_indicate:
+01c1 20400391 call module_set_recv_confirm_flag 
+01c2 6844467b fetcht 2 ,mem_module_hci_notify_handle 
+01c3 20405e4d call le_att_malloc_tx_indication 
+01c4 20204f03 branch module_hci_cmd_transmit_le_notify + 15 
+
+p_module_hci_cmd_transmit_handle_error:
+01c5 70467a00 jam 0 ,mem_module_hci_notify_len 
+01c6 700b0101 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+01c7 204050e0 call module_clear_le_tx_data_flag 
+01c8 2020501c branch module_hci_event_receive_invalid_cmd 
+
+p_le_init_conn:
+01c9 6fe24bed fetch 1 ,mem_ble_dle_enable 
+01ca 243a5709 nbranch le_init_conn + 1 ,blank 
+01cb 20405709 call le_init_conn + 1 
+01cc 704adb01 jam 1 ,mem_le_txheader_temp 
+01cd 704adc00 jam 0 ,mem_le_txlen_temp 
+01ce 58000000 setarg 0 
+01cf 67f04ad1 store 8 ,mem_le_buff_len 
+01d0 5800001b setarg 27 
+01d1 67e44ad9 store 2 ,mem_module_master_rx_max 
+01d2 20600000 rtn 
+
+p_le_receive_skip:
+01d3 204049ba call save_rssi 
+01d4 7823fc00 enable enable_white 
+01d5 7824fc00 enable enable_crc 
+01d6 09800008 parse demod ,bucket ,8 
+01d7 19897e00 rshift3 pwindow ,pdata 
+01d8 67e202d5 store 1 ,mem_le_rxbuf 
+01d9 09800008 parse demod ,bucket ,8 
+01da 19897e00 rshift3 pwindow ,pdata 
+01db e7e20005 istore 1 ,contw 
+01dc 1fe27200 copy pdata ,loopcnt 
+01dd 203a588b branch lerx_nopayload ,blank 
+01de 20205887 branch lerx_loop 
+
+p_le_transmit_receive_sifs:
+01df 204058a3 call le_transmit 
+01e0 20404915 call set_sync_on 
+01e1 68420017 fetcht 1 ,mem_last_freq 
+01e2 2040491c call set_freq_rx 
+01e3 200005dc nop 1500 
+01e4 20404921 call rf_rx_enable 
+01e5 78287c00 enable swfine 
+01e6 d960157c arg 5500 ,timeup 
+01e7 20205869 branch le_receive_rxon 
+
+p_le_transmit:
+01e8 204057af call le_prep 
+01e9 204001eb call p_letx_setfreq 
+01ea 202058a7 branch le_transmit0 
+
+p_letx_setfreq:
+01eb 203680d0 branch p_txon ,match 
+01ec c51600d0 bmark1 mark_buf_full ,p_txon 
+01ed 202057be branch letx_setfreq + 1 
+
+p_le_transmit0:
+01ee 6fe24bed fetch 1 ,mem_ble_dle_enable 
+01ef 243a58b3 nbranch le_transmit0 + 12 ,blank 
+01f0 6fe24adb fetch 1 ,mem_le_txheader_temp 
+01f1 08008608 inject mod ,8 
+01f2 efe20006 ifetch 1 ,contr 
+01f3 1fe27200 copy pdata ,loopcnt 
+01f4 08008608 inject mod ,8 
+01f5 2022d8bc branch letr_nopayload ,zero 
+01f6 202058b9 branch letr_loop 
+
+p_le_send_adv_ind:
+01f7 6fe24bed fetch 1 ,mem_ble_dle_enable 
+01f8 243a58c4 nbranch le_send_adv_ind + 1 ,blank 
+01f9 6fe24456 fetch 1 ,mem_le_adv_type 
+01fa c000d8d3 beq adv_direct_ind ,le_send_adv_direct_ind 
+01fb 6fe24457 fetch 1 ,mem_le_adv_own_addr_type 
+01fc 1ff27e00 lshift4 pdata ,pdata 
+01fd 1febfe00 lshift2 pdata ,pdata 
+01fe 67e24adb store 1 ,mem_le_txheader_temp 
+01ff 68424341 fetcht 1 ,mem_le_adv_data_len 
+0200 1840fe06 add temp ,6 ,pdata 
+0201 67e24adc store 1 ,mem_le_txlen_temp 
+0202 6fec4472 fetch 6 ,mem_le_lap 
+0203 67ec4add store 6 ,mem_le_txpayload_temp 
+0204 18427200 copy temp ,loopcnt 
+0205 d8c04342 arg mem_le_adv_data ,contr 
+0206 20407ccf call memcpy_fast 
+0207 202058de branch le_send_adv_transmit 
+
+p_le_send_scan_response:
+0208 6fe24bed fetch 1 ,mem_ble_dle_enable 
+0209 243a58f7 nbranch le_send_scan_response + 1 ,blank 
+020a d8400004 arg scan_rsp ,temp 
+020b 6fe24457 fetch 1 ,mem_le_adv_own_addr_type 
+020c 7d3a0406 nsetflag blank ,le_sender_addr_bit ,temp 
+020d 60424adb storet 1 ,mem_le_txheader_temp 
+020e 68424361 fetcht 1 ,mem_le_scan_data_len 
+020f 1840fe06 add temp ,6 ,pdata 
+0210 67e24adc store 1 ,mem_le_txlen_temp 
+0211 6fec4472 fetch 6 ,mem_le_lap 
+0212 67ec4add store 6 ,mem_le_txpayload_temp 
+0213 d8c04362 arg mem_le_scan_data ,contr 
+0214 18427200 copy temp ,loopcnt 
+0215 20407ccf call memcpy_fast 
+0216 204058a1 call le_transmit_norx 
+0217 20205ae2 branch le_adv_not_match 
+
+p_le_acknowledge:
+0218 20405ac9 call le_supervision_flush 
+0219 c6160000 rtnmark1 mark_buf_full 
+021a 2040599a call le_check_wak 
+021b 6fe202d5 fetch 1 ,mem_le_rxbuf 
+021c 2feffe04 isolate1 md ,pdata 
+021d 7920802a setflag true ,mark_ble_rx_md ,mark 
+021e 1fe37e00 rshift pdata ,pdata 
+021f 9842fe00 ixor temp ,pdata 
+0220 2feffe02 isolate1 nesn ,pdata 
+0221 7920800f setflag true ,mark_old_packet ,mark 
+0222 c6078000 rtnmark1 mark_old_packet 
+0223 6fe202d6 fetch 1 ,mem_le_rxbuf + 1 
+0224 203a022b branch p_le_ack_unenc ,blank 
+0225 6fe2043b fetch 1 ,mem_le_state 
+0226 c302022b bbit0 lestate_encryption ,p_le_ack_unenc 
+0227 20407342 call load_sk 
+0228 204072b2 call le_decrypt 
+0229 7d3a000f nsetflag blank ,mark_old_packet ,mark 
+022a 247a0000 nrtn blank 
+
+p_le_ack_unenc:
+022b 68420452 fetcht 1 ,mem_le_arq 
+022c 79400402 setflip nesn ,temp 
+022d 60420452 storet 1 ,mem_le_arq 
+022e 6fe24bed fetch 1 ,mem_ble_dle_enable 
+022f 247a0000 nrtn blank 
+0230 20200231 branch p_le_parse_writing_attribute 
+
+p_le_parse_writing_attribute:
+0231 6fe202d6 fetch 1 ,mem_le_rxbuf + 1 
+0232 207a0000 rtn blank 
+0233 6fe202d5 fetch 1 ,mem_le_rxbuf 
+0234 2fe00601 compare 1 ,pdata ,3 
+0235 20208259 branch p_le_parse_writing_attribute_continue ,true 
+0236 2fe00602 compare 2 ,pdata ,3 
+0237 20208239 branch p_le_parse_writing_attribute_start ,true 
+0238 20600000 rtn 
+
+p_le_parse_writing_attribute_start:
+0239 6fe402d9 fetch 2 ,mem_le_rxbuf + 4 
+023a c1820000 rtnne le_l2cap_cid_att 
+023b efe60006 ifetch 3 ,contr 
+023c 67e60473 store 3 ,mem_le_att_opcode 
+023d 7920000f set1 mark_old_packet ,mark 
+023e c009024d beq attop_write_request ,p_le_parse_att_write_request 
+023f c029024f beq attop_write_command ,p_le_parse_att_write_command 
+0240 c00b0246 beq attop_prepare_write_request ,p_le_parse_att_prepare_write_request 
+0241 c00c5e3b beq attop_execute_write_request ,le_parse_att_execute_write_request 
+0242 c0015ca1 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
+0243 c00f038b beq attop_handle_value_confirmation ,p_le_parse_handle_value_confirmation 
+0244 793f800f set0 mark_old_packet ,mark 
+0245 20600000 rtn 
+
+p_le_parse_att_prepare_write_request:
+0246 58000b1e setarg mem_module_prepare_write_request_packet 
+0247 67e44ad5 store 2 ,mem_module_prepare_write_request_contw 
+0248 20400252 call p_le_long_packet_patch 
+0249 1f20f3fe increase -2 ,loopcnt 
+024a da2002e0 arg mem_le_rxbuf + 11 ,rega 
+024b 20405abe call le_writeatt_cb 
+024c 20200272 branch p_le_parse_att_prepare_write_request_finish 
+
+p_le_parse_att_write_request:
+024d 2040024f call p_le_parse_att_write_command 
+024e 20200269 branch p_le_send_att_write_response_check_auth 
+
+p_le_parse_att_write_command:
+024f 20400252 call p_le_long_packet_patch 
+0250 da2002de arg mem_le_rxbuf + 9 ,rega 
+0251 20205abe branch le_writeatt_cb 
+
+p_le_long_packet_patch:
+0252 6fe202d6 fetch 1 ,mem_le_rxbuf + 1 
+0253 1fe0f3f9 add pdata ,-7 ,loopcnt 
+0254 1fe0fffc increase -4 ,pdata 
+0255 67e44ad1 store 2 ,mem_le_buff_len 
+0256 e8440006 ifetcht 2 ,contr 
+0257 60444ad3 storet 2 ,mem_le_buff_len_all 
+0258 20600000 rtn 
+
+p_le_parse_writing_attribute_continue:
+0259 7920000f set1 mark_old_packet ,mark 
+025a 20400261 call p_parse_l2cap_continue_common 
+025b 6fe20473 fetch 1 ,mem_le_att_opcode 
+025c c0090269 beq attop_write_request ,p_parse_l2cap_continue_write_request 
+025d c00b0268 beq attop_prepare_write_request ,p_parse_l2cap_continue_prepare_write_request 
+025e c1290000 rtneq attop_write_command 
+025f 793f800f set0 mark_old_packet ,mark 
+0260 20600000 rtn 
+
+p_parse_l2cap_continue_write_common:
+
+p_parse_l2cap_continue_common:
+0261 6fe202d6 fetch 1 ,mem_le_rxbuf + 1 
+0262 68444ad1 fetcht 2 ,mem_le_buff_len 
+0263 98408400 iadd temp ,temp 
+0264 60444ad1 storet 2 ,mem_le_buff_len 
+0265 1fe27200 copy pdata ,loopcnt 
+0266 da2002d7 arg mem_le_rxbuf + 2 ,rega 
+0267 20205abe branch le_writeatt_cb 
+
+p_parse_l2cap_continue_prepare_write_request:
+0268 20200272 branch p_le_parse_att_prepare_write_request_finish 
+
+p_parse_l2cap_continue_write_request:
+
+p_le_send_att_write_response_check_auth:
+0269 2040026c call p_le_check_complete_packet 
+026a 24740000 nrtn user 
+026b 20205e13 branch le_send_att_write_response_check_auth 
+
+p_le_check_complete_packet:
+026c 20407dc1 call disable_user 
+026d 6fe44ad3 fetch 2 ,mem_le_buff_len_all 
+026e 68444ad1 fetcht 2 ,mem_le_buff_len 
+026f 98467c00 isub temp ,null 
+0270 24628000 nrtn zero 
+0271 20207dbf branch enable_user 
+
+p_le_parse_att_prepare_write_request_finish:
+0272 6fe44ad5 fetch 2 ,mem_module_prepare_write_request_contw 
+0273 1fe20a00 copy pdata ,contw 
+0274 6fe202d6 fetch 1 ,mem_le_rxbuf + 1 
+0275 1fe27200 copy pdata ,loopcnt 
+0276 20407cdc call memcpy 
+0277 18a27e00 copy contw ,pdata 
+0278 67e44ad5 store 2 ,mem_module_prepare_write_request_contw 
+0279 2040026c call p_le_check_complete_packet 
+027a 24740000 nrtn user 
+027b d8e00003 arg module_receive_complete_prepare_write_req ,queue 
+027c 204050e6 call module_set_state 
+027d 2020027e branch p_le_send_att_prepare_write_response 
+
+p_le_send_att_prepare_write_response:
+027e 20405c74 call le_fifo_check_empty 
+027f 247a0000 nrtn blank 
+0280 700b2217 jam attop_prepare_write_response ,mem_module_prepare_write_request_opcode 
+0281 58000b1e setarg mem_module_prepare_write_request_packet 
+0282 67e44ad7 store 2 ,mem_module_prepare_write_request_contr 
+0283 68440b1e fetcht 2 ,mem_module_prepare_write_request_pdu_length 
+0284 18408404 increase 4 ,temp 
+0285 580000f9 setarg le_baseband_max_buffer 
+0286 20407db5 call not_greater_than 
+0287 1fe0a5fc add pdata ,-4 ,regb 
+0288 18000202 force llid_start ,type 
+
+p_le_send_att_prepare_write_response_continue:
+0289 1fe22200 copy pdata ,rega 
+028a 20405c32 call le_fifo_malloc_tx + 2 
+028b 6fe44ad7 fetch 2 ,mem_module_prepare_write_request_contr 
+028c 1fe20c00 copy pdata ,contr 
+028d 1a227200 copy rega ,loopcnt 
+028e 20407ccf call memcpy_fast 
+028f 18c27e00 copy contr ,pdata 
+0290 67e44ad7 store 2 ,mem_module_prepare_write_request_contr 
+0291 6fe40b1e fetch 2 ,mem_module_prepare_write_request_pdu_length 
+0292 9a467e00 isub regb ,pdata 
+0293 67e40b1e store 2 ,mem_module_prepare_write_request_pdu_length 
+0294 203a029a branch p_le_send_att_prepare_write_response_ending ,blank 
+0295 d84000f9 arg le_baseband_max_buffer ,temp 
+0296 20407db5 call not_greater_than 
+0297 1fe22400 copy pdata ,regb 
+0298 18000201 force llid_continue ,type 
+0299 20200289 branch p_le_send_att_prepare_write_response_continue 
+
+p_le_send_att_prepare_write_response_ending:
+029a 58000000 setarg 0 
+029b 67e44ad5 store 2 ,mem_module_prepare_write_request_contw 
+029c d8e00003 arg module_receive_complete_prepare_write_req ,queue 
+029d 202050e2 branch module_clr_state 
+
+p_check_ipcbuf_size:
+029e 704bf200 jam 0 ,mem_ipcbuf_bt2m0_flag 
+029f 68444ff0 fetcht 2 ,ipc_bt2m0_start_addr 
+02a0 6fe44ff2 fetch 2 ,ipc_bt2m0_end_addr 
+02a1 98462200 isub temp ,rega 
+02a2 68444ff4 fetcht 2 ,ipc_bt2m0_read_ptr 
+02a3 6fe44ff6 fetch 2 ,ipc_bt2m0_write_ptr 
+02a4 60444bf5 storet 2 ,mem_ipcbuf_bt2m0_read 
+02a5 67e44bf3 store 2 ,mem_ipcbuf_bt2m0_write 
+02a6 98467e00 isub temp ,pdata 
+02a7 202102ae branch start_calc_ipcbuf ,positive 
+02a8 202282ae branch start_calc_ipcbuf ,zero 
+02a9 1a220400 copy rega ,temp 
+02aa 6fe44bf3 fetch 2 ,mem_ipcbuf_bt2m0_write 
+02ab 9840fe00 iadd temp ,pdata 
+02ac 68444bf5 fetcht 2 ,mem_ipcbuf_bt2m0_read 
+02ad 98467e00 isub temp ,pdata 
+
+start_calc_ipcbuf:
+02ae d8400300 arg 0x300 ,temp 
+02af 98467c00 isub temp ,null 
+02b0 24610000 nrtn positive 
+02b1 704bf201 jam 1 ,mem_ipcbuf_bt2m0_flag 
+02b2 20600000 rtn 
+
+p_le_check_wak:
+02b3 68420452 fetcht 1 ,mem_le_arq 
+02b4 284c0005 isolate0 wak ,temp 
+02b5 20608000 rtn true 
+02b6 6fe202d5 fetch 1 ,mem_le_rxbuf 
+02b7 1fe3fe00 lshift pdata ,pdata 
+02b8 9842fe00 ixor temp ,pdata 
+02b9 c4018000 rtnbit0 sn 
+02ba 793f8405 set0 wak ,temp 
+02bb 79400403 setflip sn ,temp 
+
+p_le_check_wak_1:
+02bc 60420452 storet 1 ,mem_le_arq 
+02bd 28400603 compare 3 ,temp ,3 
+02be 24608000 nrtn true 
+02bf 6fe24bed fetch 1 ,mem_ble_dle_enable 
+02c0 243a02c3 nbranch le_check_wak_2 ,blank 
+02c1 6fe24add fetch 1 ,mem_le_txpayload_temp 
+02c2 202002c4 branch le_check_wak_3 
+
+le_check_wak_2:
+02c3 6fe243b0 fetch 1 ,mem_le_txpayload 
+
+le_check_wak_3:
+02c4 c002d9ac beq ll_start_enc_req ,le_set_enc 
+02c5 6fe24497 fetch 1 ,mem_le_enc_state 
+02c6 c00159b0 beq flag_le_enc_pause ,le_clear_enc 
+02c7 20600000 rtn 
+
+p_le_prepare_tx:
+02c8 6fe20452 fetch 1 ,mem_le_arq 
+02c9 c3828000 rtnbit1 wak 
+02ca 20405a1c call le_check_tx_md 
+02cb 6fe24bed fetch 1 ,mem_ble_dle_enable 
+02cc 243a59fc nbranch le_prepare_tx + 4 ,blank 
+02cd 20405c53 call le_fifo_get_first_tx_ptr 
+02ce 203a5a3e branch le_send_empty ,blank 
+02cf efe20006 ifetch 1 ,contr 
+02d0 e8420006 ifetcht 1 ,contr 
+02d1 18422200 copy temp ,rega 
+02d2 9a267e00 isub rega ,pdata 
+02d3 204002ed call p_le_get_master_rx_max 
+02d4 20407db5 call not_greater_than 
+02d5 1fe20400 copy pdata ,temp 
+02d6 efe20006 ifetch 1 ,contr 
+02d7 1fe20200 copy pdata ,type 
+02d8 1a227e00 copy rega ,pdata 
+02d9 98c08c00 iadd contr ,contr 
+02da d8a04add arg mem_le_txpayload_temp ,contw 
+02db 18427200 copy temp ,loopcnt 
+02dc 20407ccf call memcpy_fast 
+02dd 20405a2e call le_update_tx_type 
+02de 20405a40 call le_send_packet 
+02df 20405c53 call le_fifo_get_first_tx_ptr 
+02e0 efe20006 ifetch 1 ,contr 
+02e1 1fe22200 copy pdata ,rega 
+02e2 18c22600 copy contr ,regc 
+02e3 e8420006 ifetcht 1 ,contr 
+02e4 18422400 copy temp ,regb 
+02e5 9a467e00 isub regb ,pdata 
+02e6 204002ed call p_le_get_master_rx_max 
+02e7 20407db5 call not_greater_than 
+02e8 9a40fe00 iadd regb ,pdata 
+02e9 e7e20013 istore 1 ,regc 
+02ea 9a267c00 isub rega ,null 
+02eb 24628000 nrtn zero 
+02ec 20205c76 branch le_fifo_release_first_node 
+
+p_le_get_master_rx_max:
+02ed 18c20a00 copy contr ,contw 
+02ee 68444ad9 fetcht 2 ,mem_module_master_rx_max 
+02ef 18a20c00 copy contw ,contr 
+02f0 20600000 rtn 
+
+p_le_send_packet:
+02f1 6fe24bed fetch 1 ,mem_ble_dle_enable 
+02f2 243a5a41 nbranch le_send_packet + 1 ,blank 
+02f3 60424adc storet 1 ,mem_le_txlen_temp 
+02f4 68420452 fetcht 1 ,mem_le_arq 
+02f5 79200405 set1 wak ,temp 
+02f6 18417efc and temp ,0xfc ,pdata 
+02f7 9821fe00 ior type ,pdata 
+02f8 67e20452 store 1 ,mem_le_arq 
+02f9 1fe17e1f and_into 0x1f ,pdata 
+02fa 280ffe29 isolate1 mark_ble_tx_md ,mark 
+02fb 7920fe04 setflag true ,md ,pdata 
+02fc 67e24adb store 1 ,mem_le_txheader_temp 
+02fd 6fe24adb fetch 1 ,mem_le_txheader_temp 
+02fe 28200601 compare 1 ,type ,3 
+02ff 24208302 nbranch p_le_send_no_txlen ,true 
+0300 6fe24adc fetch 1 ,mem_le_txlen_temp 
+0301 207a0000 rtn blank 
+
+p_le_send_no_txlen:
+0302 6fe2043b fetch 1 ,mem_le_state 
+0303 c4020000 rtnbit0 lestate_encryption 
+0304 20407342 call load_sk 
+0305 20207299 branch le_encrypt 
+
+p_le_encrypt:
+0306 6fe24bed fetch 1 ,mem_ble_dle_enable 
+0307 243a729a nbranch le_encrypt + 1 ,blank 
+0308 da604adb arg mem_le_txheader_temp ,regc 
+0309 684a43d5 fetcht 5 ,mem_le_pcnt_tx 
+030a 20407277 call generate_mic 
+030b 18007008 force regidx_xor ,regext_index 
+030c 98005e00 iforce regext 
+030d 18002200 force 0 ,rega 
+030e 20407263 call first_block_data 
+030f 204072e8 call aes_init 
+0310 da604add arg mem_le_txpayload_temp ,regc 
+0311 6fe24adc fetch 1 ,mem_le_txlen_temp 
+0312 1fe0a5ff add pdata ,-1 ,regb 
+0313 9a608a00 iadd regc ,contw 
+0314 1800700c force regidx_result ,regext_index 
+0315 1de27e00 deposit regext 
+0316 e7e80005 istore 4 ,contw 
+0317 2040728e call aes_crypt_data 
+0318 6fe24adc fetch 1 ,mem_le_txlen_temp 
+0319 1fe0fe04 increase 4 ,pdata 
+031a 67e24adc store 1 ,mem_le_txlen_temp 
+031b 684a43d5 fetcht 5 ,mem_le_pcnt_tx 
+031c 18408401 increase 1 ,temp 
+031d 604a43d5 storet 5 ,mem_le_pcnt_tx 
+031e 20600000 rtn 
+
+p_le_parse:
+031f c6078000 rtnmark1 mark_old_packet 
+0320 c6160000 rtnmark1 mark_buf_full 
+0321 20405c70 call le_fifo_check_full 
+0322 247a0000 nrtn blank 
+0323 6fe202d5 fetch 1 ,mem_le_rxbuf 
+0324 1fe17e03 and pdata ,0x3 ,pdata 
+0325 67e244de store 1 ,mem_le_packet_llid 
+0326 efe20006 ifetch 1 ,contr 
+0327 67e244dd store 1 ,mem_le_packet_size 
+0328 207a0000 rtn blank 
+0329 18c27e00 copy contr ,pdata 
+032a 67e444df store 2 ,mem_le_payload_ptr 
+032b 6fe244de fetch 1 ,mem_le_packet_llid 
+032c c0018360 beq llid_le_ll ,p_le_parse_ll 
+032d 20400332 call p_le_check_l2cap_complete 
+032e d8e00003 arg wake_lock_ble_rx_patch ,queue 
+032f 24344bec nbranch lpm_get_wake_lock ,user 
+0330 20404bf0 call lpm_put_wake_lock 
+0331 20205a6b branch le_parse_l2cap + 3 
+
+p_le_check_l2cap_complete:
+0332 6fe244de fetch 1 ,mem_le_packet_llid 
+0333 c0010336 beq llid_start ,p_le_check_l2cap_llid_start 
+0334 c000834a beq llid_continue ,p_le_check_l2cap_llid_continue 
+0335 20600000 rtn 
+
+p_le_check_l2cap_llid_start:
+0336 6fe444df fetch 2 ,mem_le_payload_ptr 
+0337 1fe20c00 copy pdata ,contr 
+0338 efe40006 ifetch 2 ,contr 
+0339 67e444ce store 2 ,mem_le_l2cap_size 
+033a efe40006 ifetch 2 ,contr 
+033b 20405a7a call le_check_l2cap_cid_legal 
+033c 24740000 nrtn user 
+033d 684244dd fetcht 1 ,mem_le_packet_size 
+033e 604244d0 storet 1 ,mem_le_packet_len_recved 
+033f 6fe444ce fetch 2 ,mem_le_l2cap_size 
+0340 1fe0fe04 increase 4 ,pdata 
+0341 98467c00 isub temp ,null 
+0342 2022fdbf branch enable_user ,zero 
+0343 6fe244dd fetch 1 ,mem_le_packet_size 
+0344 1fe27200 copy pdata ,loopcnt 
+0345 d8a00d7d arg mem_le_l2capbuf_new ,contw 
+0346 6fe444df fetch 2 ,mem_le_payload_ptr 
+0347 1fe20c00 copy pdata ,contr 
+0348 20407cdc call memcpy 
+0349 20207dc1 branch disable_user 
+
+p_le_check_l2cap_llid_continue:
+034a 20405a99 call le_check_l2cap_continue_legal 
+034b 24740000 nrtn user 
+034c 6fe244d0 fetch 1 ,mem_le_packet_len_recved 
+034d d8a00d7d arg mem_le_l2capbuf_new ,contw 
+034e 98a0a200 iadd contw ,rega 
+034f 684244dd fetcht 1 ,mem_le_packet_size 
+0350 9840fe00 iadd temp ,pdata 
+0351 67e244d0 store 1 ,mem_le_packet_len_recved 
+0352 6fe244dd fetch 1 ,mem_le_packet_size 
+0353 1fe27200 copy pdata ,loopcnt 
+0354 1a220a00 copy rega ,contw 
+0355 6fe444df fetch 2 ,mem_le_payload_ptr 
+0356 1fe20c00 copy pdata ,contr 
+0357 20407ccf call memcpy_fast 
+0358 58000d7d setarg mem_le_l2capbuf_new 
+0359 67e444df store 2 ,mem_le_payload_ptr 
+035a 6fe444ce fetch 2 ,mem_le_l2cap_size 
+035b 1fe0fe04 increase 4 ,pdata 
+035c 684244d0 fetcht 1 ,mem_le_packet_len_recved 
+035d 98467c00 isub temp ,null 
+035e 2022fdbf branch enable_user ,zero 
+035f 20207dc1 branch disable_user 
+
+p_le_parse_ll:
+0360 6fe202d7 fetch 1 ,mem_le_rxbuf + 2 
+0361 c0040364 beq ll_feature_req ,p_le_parse_feature_req 
+0362 c00a0372 beq ll_length_req ,le_parse_length_request 
+0363 20206045 branch le_parse_ll + 1 
+
+p_le_parse_feature_req:
+
+p_le_send_feature_rsp:
+0364 da200009 arg 9 ,rega 
+0365 da400009 arg ll_feature_rsp ,regb 
+0366 20405c22 call le_fifo_malloc_tx_ll 
+0367 58000021 setarg 0x21 
+0368 e7f00005 istore 8 ,contw 
+0369 2040036b call p_check_ble_dle_enable 
+036a 20600000 rtn 
+
+p_check_ble_dle_enable:
+036b 6fe202d8 fetch 1 ,mem_le_rxbuf + 3 
+036c 1fe17e20 and pdata ,0x20 ,pdata 
+036d 203a0370 branch p_set_ble_dle_disable ,blank 
+036e 704bed00 jam dle_enable ,mem_ble_dle_enable 
+036f 20600000 rtn 
+
+p_set_ble_dle_disable:
+0370 704bed01 jam dle_disable ,mem_ble_dle_enable 
+0371 20600000 rtn 
+
+le_parse_length_request:
+0372 efe40006 ifetch 2 ,contr 
+0373 67e44ad9 store 2 ,mem_module_master_rx_max 
+0374 20200375 branch le_send_length_res 
+
+le_send_length_res:
+0375 da200009 arg 9 ,rega 
+0376 da400015 arg ll_length_rsp ,regb 
+0377 20405c22 call le_fifo_malloc_tx_ll 
+0378 580000fb setarg 251 
+0379 e7e40005 istore 2 ,contw 
+037a 58000848 setarg 2120 
+037b e7e40005 istore 2 ,contw 
+037c 580000fb setarg 251 
+037d e7e40005 istore 2 ,contw 
+037e 58000848 setarg 2120 
+037f e7e40005 istore 2 ,contw 
+0380 20600000 rtn 
+
+p_le_parse_l2cap:
+0381 efe40006 ifetch 2 ,contr 
+0382 c0020386 beq le_l2cap_cid_att ,p_le_parse_att 
+0383 c0035ed4 beq le_l2cap_cid_smp ,le_parse_smp 
+0384 c002de96 beq le_l2cap_cid_signal ,le_parse_signaling 
+0385 20600000 rtn 
+
+p_le_parse_att:
+0386 efe60006 ifetch 3 ,contr 
+0387 67e60473 store 3 ,mem_le_att_opcode 
+0388 c008038d beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
+0389 c0040396 beq attop_read_by_type_request ,p_le_parse_att_read_by_type_request 
+038a 20205c8d branch le_parse_att + 2 
+
+p_le_parse_handle_value_confirmation:
+
+module_clear_recv_confirm_flag:
+038b d8e00007 arg module_recv_confirm ,queue 
+038c 202050e2 branch module_clr_state 
+
+p_le_parse_att_read_by_group_type_request:
+038d 20405e91 call le_get_search_handle_start_end_common 
+038e 20405ab3 call le_get_search_att_type 
+038f d9600001 arg 1 ,timeup 
+0390 20205dde branch le_send_att_read_by_group_type_response + 1 
+
+module_set_recv_confirm_flag:
+0391 d8e00007 arg module_recv_confirm ,queue 
+0392 202050e6 branch module_set_state 
+
+p_le_parse_att_exchange_mtu_request:
+0393 20405ca9 call le_parse_att_exchange_mtu_response 
+0394 67e44478 store 2 ,mem_le_local_mtu 
+0395 20205ca2 branch le_send_att_exchange_mtu_response 
+
+p_le_parse_att_read_by_type_request:
+0396 20405e91 call le_get_search_handle_start_end_common 
+0397 20405abb call le_get_search_att_uuid 
+0398 20200399 branch p_le_send_att_read_by_type_response 
+
+p_le_send_att_read_by_type_response:
+0399 6844442c fetcht 2 ,mem_le_search_handle_start 
+039a 60440a9e storet 2 ,mem_temp 
+039b 20405b36 call le_init_attlist_search 
+039c 20405b4d call le_att_get_handle_ptr2 
+039d 18c08dfe increase -2 ,contr 
+039e 18c27e00 copy contr ,pdata 
+039f 67e40498 store 2 ,mem_le_cur_attlist_start_ptr 
+03a0 68444444 fetcht 2 ,mem_le_search_uuid 
+03a1 58002a00 setarg uuid_chrctr_device_name 
+03a2 98467c00 isub temp ,null 
+03a3 202283a5 branch p_le_send_att_read_by_type_res_device_name ,zero 
+03a4 20205d2d branch le_send_att_read_by_type_response + 11 
+
+p_le_send_att_read_by_type_res_device_name:
+03a5 d8402a00 arg uuid_chrctr_device_name ,temp 
+03a6 20405b5c call le_att_get_short_uuid_ptr 
+03a7 203a5e56 branch le_send_att_error_response_notfound ,blank 
+03a8 20205d8b branch le_send_att_read_by_type_res_device_name + 3 
+
+p_le_lpm_set_mult:
+03a9 6fe24bed fetch 1 ,mem_ble_dle_enable 
+03aa 243a5bd5 nbranch le_lpm_set_mult + 1 ,blank 
+03ab 7855fc00 disable wake 
+03ac 203703ae branch p_le_lpm_set_mult_attempt ,attempt 
+03ad 2436dbe6 nbranch le_lpm_lost ,match 
+
+p_le_lpm_set_mult_attempt:
+03ae 20404ba0 call lpm_match 
+03af 6fe440c1 fetch 2 ,mem_rx_window_sniff 
+03b0 67e40449 store 2 ,mem_le_receive_window 
+03b1 2436cbb3 nbranch lpm_mult_short ,match 
+03b2 c507cbb3 bmark1 mark_old_packet ,lpm_mult_short 
+03b3 6fe244dd fetch 1 ,mem_le_packet_size 
+03b4 243a4bb3 nbranch lpm_mult_short ,blank 
+03b5 6fe24adc fetch 1 ,mem_le_txlen_temp 
+03b6 243a4bb3 nbranch lpm_mult_short ,blank 
+03b7 6fe244bb fetch 1 ,mem_le_configuration 
+03b8 c282cbb3 bbit1 bit_ble_short_mult ,lpm_mult_short 
+03b9 6fe2043b fetch 1 ,mem_le_state 
+03ba c282cbb3 bbit1 lestate_update_param ,lpm_mult_short 
+03bb 20204b95 branch lpm_mult_wait_timeout 
+
+p_parse_lmp:
+03bc 6fe2007d fetch 1 ,mem_lmi_opcode2 
+03bd c00803c0 beq lmp_encryption_key_size_req ,p_parse_lmp_crypt_key 
+03be c00b83c6 beq lmp_sniff_req ,p_parse_lmp_sniff_req 
+03bf 202060fe branch parse_lmp + 21 
+
+p_parse_lmp_crypt_key:
+03c0 6842054e fetcht 1 ,mem_rxbuf + 1 
+03c1 18467c06 sub temp ,6 ,null 
+03c2 202103c4 branch reject_lmp_packet_pdu_not_allowed ,positive 
+03c3 20206206 branch parse_lmp_crypt_key + 1 
+
+reject_lmp_packet_pdu_not_allowed:
+03c4 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+03c5 20206134 branch reject_lmp_packet 
+
+p_parse_lmp_sniff_req:
+03c6 202062b8 branch parse_lmp_sniff_req + 1 
+
+p_send_lmp:
+03c7 78547c00 disable user 
+03c8 204066a3 call lmo_fifo_process 
+03c9 6fe20048 fetch 1 ,mem_lmp_to_send 
+03ca 207a0000 rtn blank 
+03cb c28383cd bbit1 7 ,p_send_lmp_escape 
+03cc 202063f2 branch send_lmp0 
+
+p_send_lmp_escape:
+03cd c04203d0 beq lmp_ext_features_res ,p_send_lmpext_features_res 
+03ce c04183d3 beq lmp_ext_features_req ,p_send_lmpext_features_req 
+03cf 20206421 branch send_lmp_escape 
+
+p_send_lmpext_features_res:
+03d0 204003d6 call p_check_ssp_enable 
+03d1 6fe20048 fetch 1 ,mem_lmp_to_send 
+03d2 2020647b branch send_lmpext_features_res 
+
+p_send_lmpext_features_req:
+03d3 204003d6 call p_check_ssp_enable 
+03d4 6fe20048 fetch 1 ,mem_lmp_to_send 
+03d5 202064ef branch send_lmpext_features_req 
+
+p_check_ssp_enable:
+03d6 6fe2462c fetch 1 ,mem_ssp_enable 
+03d7 203a650d branch ssp_disable ,blank 
+03d8 20206506 branch ssp_enable 
+
+p_ssp_disable:
+03d9 6fe2409e fetch 1 ,mem_features + 6 
+03da 793ffe03 set0 param_featrue_ssp ,pdata 
+03db 67e2409e store 1 ,mem_features + 6 
+03dc 58000001 setarg 0x1 
+03dd 67e404ca store 2 ,mem_lmpext_ssp_enable 
+03de 20600000 rtn 
+
+p_parse_dlci0_rp:
+03df 6fe204f9 fetch 1 ,mem_current_frame_type 
+03e0 c01fe93e beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+03e1 c039e947 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+03e2 c07783e5 beq rfcomm_frame_type_uih ,p_parse_dlci0_rp_uih 
+03e3 c029ea05 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn_send_event 
+03e4 20600000 rtn 
+
+p_parse_dlci0_rp_uih:
+03e5 6fe404fd fetch 2 ,mem_rfcomm_uih_payload_ptr 
+03e6 1fe20c00 copy pdata ,contr 
+03e7 20406984 call get_rfcomm_uih_head_struct 
+03e8 6fe204ff fetch 1 ,mem_uih_cmd_type 
+03e9 c020e966 beq uih_param_neg_cmd ,parse_dlci0_rp_uih_pn_cmd 
+03ea c020696e beq uih_param_neg_res ,parse_dlci0_rp_uih_pn_res 
+03eb c038e9a7 beq uih_modem_status_cmd ,parse_dlci0_rp_uih_ms_cmd 
+03ec c03803ef beq uih_modem_status_res ,p_parse_dlci0_rp_uih_ms_res 
+03ed c024e9be beq uih_param_cmd_remove_port ,parse_dlci0_rp_uih_cmd_port 
+03ee 20206a58 branch rfcomm_rx_process_end 
+
+p_parse_dlci0_rp_uih_ms_res:
+03ef 700a9508 jam bt_evt_spp_connected ,mem_fifo_temp 
+03f0 20407bab call ui_ipc_send_event 
+03f1 20406972 call get_rfcomm_param_modem_status 
+03f2 202069ba branch parse_dlci0_rp_uih_ms_res_spp 
+
+p_sp_initialize_256:
+03f3 6fe24490 fetch 1 ,mem_le_secure_connect_enable 
+03f4 203a5ed0 branch le_secure_connection_disable ,blank 
+03f5 20407438 call sp_clear_flags 
+03f6 20207932 branch sp_pubkey_calc_256 
+              org 0x4000
+
+start:
+4000 20404abb call lpmstate 
+
+soft_reset:
+4001 44804000 bpatch patch00_0 ,mem_patch00 
+4002 20800000 clear_stack 
+4003 2040496a call initialize_radio 
+4004 20404a95 call init_param 
+4005 20405144 call l2cap_init 
+4006 4480c000 bpatch patch00_1 ,mem_patch00 
+4007 204068c4 call rfcomm_init 
+4008 204060d7 call init_lmp 
+4009 20407b81 call ui_init 
+400a 20404c77 call app_init 
+400b 44814000 bpatch patch00_2 ,mem_patch00 
+400c 2055cc7c call app_lpm_init ,wake 
+400d 2040741f call publickey_init 
+400e 2055cb1d call lpm_recover_clk ,wake 
+
+main_loop:
+400f 4481c000 bpatch patch00_3 ,mem_patch00 
+4010 20407591 call sp_calc_sequence 
+4011 20407964 call sp_calc_sequence_256 
+4012 20407422 call sp_calc_sequence_256_check 
+4013 20405736 call le_dispatch 
+4014 44824000 bpatch patch00_4 ,mem_patch00 
+4015 20404034 call idle_dispatch 
+4016 20404c86 call app_process_idle 
+4017 2040408b call inquiry_dispatch 
+4018 204042f4 call inquiry_scan_dispatch 
+4019 20404366 call page_scan_dispatch 
+401a 2040401d call connection_dispatch 
+401b 20404b3f call lpm_dispatch 
+401c 2020400f branch main_loop 
+
+connection_dispatch:
+401d 20404022 call connection_incontext 
+401e c6848000 rtnmark0 mark_context 
+401f 793f8009 set0 mark_context ,mark 
+4020 2040421f call context_save 
+4021 202057a8 branch le_disable 
+
+connection_incontext:
+4022 4482c000 bpatch patch00_5 ,mem_patch00 
+4023 2040425a call context_search_insniff 
+4024 2422c02b nbranch connection_nosniff ,zero 
+4025 20404206 call context_load 
+4026 1a208c01 add rega ,coffset_mode ,contr 
+4027 efe20006 ifetch 1 ,contr 
+4028 c280573a bbit1 mode_le ,le_conn_dispatch 
+4029 c280c162 bbit1 mode_master ,master_dispatch 
+402a 202043cb branch slave_dispatch 
+
+connection_nosniff:
+402b 20404227 call context_get_next 
+402c 1f227c00 copy loopcnt ,null 
+402d 20628000 rtn zero 
+402e 20404206 call context_load 
+402f 6fe20030 fetch 1 ,mem_state 
+4030 c281c0cf bbit1 state_inpage ,master_page 
+4031 6fe20031 fetch 1 ,mem_mode 
+4032 c280c162 bbit1 mode_master ,master_dispatch 
+4033 202043cb branch slave_dispatch 
+
+idle_dispatch:
+4034 6fe241cf fetch 1 ,mem_hci_cmd 
+4035 207a0000 rtn blank 
+4036 c000c044 beq hci_cmd_inquiry ,idle_inquiry 
+4037 c0014049 beq hci_cmd_inquiry_cancel ,idle_inquiry_cancel 
+4038 c001c04c beq hci_cmd_remote_name_req ,idle_remote_name_req 
+4039 c002c051 beq hci_cmd_create_conn ,idle_create_conn 
+403a c00dc041 beq hci_cmd_le_create_conn ,idle_le_create_conn 
+403b 20404253 call context_search_conn_handle 
+403c 20628000 rtn zero 
+403d 20404256 call context_search_plap 
+403e 20628000 rtn zero 
+
+idle_exit:
+403f 7041cf00 jam 0 ,mem_hci_cmd 
+4040 20600000 rtn 
+
+idle_le_create_conn:
+4041 7004971b jam hci_cmd_le_create_conn ,mem_cmd_le_create_conn 
+4042 7041cf00 jam 0 ,mem_hci_cmd 
+4043 20600000 rtn 
+
+idle_inquiry:
+4044 7920001c set1 mark_inquiry_on ,mark 
+4045 793f801e set0 mark_inquiry_trainb ,mark 
+4046 70008fff jam param_ninquiry ,mem_ninqy_index 
+4047 70008d1f jam 31 ,mem_nfreq_index_inq 
+4048 2020403f branch idle_exit 
+
+idle_inquiry_cancel:
+4049 793f801c set0 mark_inquiry_on ,mark 
+404a 18003600 force 0 ,stop_watch 
+404b 2020403f branch idle_exit 
+
+idle_remote_name_req:
+404c 20404256 call context_search_plap 
+404d 20628000 rtn zero 
+404e 18000401 force lmp_name_req ,temp 
+404f 70016c05 jam 5 ,mem_nameres_cnt 
+4050 20204058 branch idle_start_page 
+
+idle_create_conn:
+4051 44834000 bpatch patch00_6 ,mem_patch00 
+
+idle_create_conn_device:
+4052 6fec41d1 fetch 6 ,mem_hci_plap 
+4053 203a403f branch idle_exit ,blank 
+4054 70465101 jam reconnect_hid ,memui_reconnect_mode 
+4055 70005503 jam conn_sm_wait_features_res ,mem_conn_sm 
+4056 20204057 branch idle_create_conn_cont 
+
+idle_create_conn_cont:
+4057 18000425 force lmp_version_req ,temp 
+
+idle_start_page:
+4058 4483c000 bpatch patch00_7 ,mem_patch00 
+4059 6fe200ef fetch 1 ,mem_page_mode 
+405a 203a405e branch idle_page_mode_r0 ,blank 
+405b 1fe9fe00 lshift3 pdata ,pdata 
+405c 1ff27e00 lshift4 pdata ,pdata 
+405d 1fe0ffff increase -1 ,pdata 
+
+idle_page_mode_r0:
+405e 67e240a6 store 1 ,mem_npage 
+405f 67e200ee store 1 ,mem_npage_index 
+4060 70008e1f jam 31 ,mem_nfreq_index_page 
+4061 793f800c set0 mark_page_trainb ,mark 
+4062 20404237 call context_new 
+4063 2422c07f nbranch idle_page_fail ,zero 
+4064 20404a6e call get_free_amaddr 
+4065 67e20077 store 1 ,mem_amaddr 
+4066 6042007c storet 1 ,mem_lmo_opcode2 
+4067 6fec41d1 fetch 6 ,mem_hci_plap 
+4068 67ec0040 store 6 ,mem_plap 
+4069 44844001 bpatch patch01_0 ,mem_patch01 
+406a 20407cf0 call timer_reinit 
+406b 18007e00 force 0 ,pdata 
+406c 2841fe01 compare lmp_name_req ,temp ,0xff 
+406d 7d20fe05 nsetflag true ,state_init_seq ,pdata 
+406e 79207e03 set1 state_inpage ,pdata 
+406f 67e20030 store 1 ,mem_state 
+4070 700a9503 jam bt_evt_reconn_started ,mem_fifo_temp 
+4071 20407bab call ui_ipc_send_event 
+4072 18007e00 force 0 ,pdata 
+4073 7920fe04 setflag true ,smap_name_req ,pdata 
+4074 67e2004c store 1 ,mem_state_map 
+4075 58000000 setarg 0 
+4076 79207e01 set1 mode_master ,pdata 
+4077 67e20031 store 1 ,mem_mode 
+4078 7834fc00 enable master 
+4079 2040421f call context_save 
+407a 7854fc00 disable master 
+407b 18000e03 force page_length_timer ,queue 
+407c 6fe440b9 fetch 2 ,mem_page_to 
+407d 20407ce3 call timer_init 
+407e 2020403f branch idle_exit 
+
+idle_page_fail:
+407f 4484c001 bpatch patch01_1 ,mem_patch01 
+4080 6fec41d1 fetch 6 ,mem_hci_plap 
+4081 67ec0040 store 6 ,mem_plap 
+4082 2841fe01 compare lmp_name_req ,temp ,0xff 
+4083 2020c085 branch idle_name_fail ,true 
+4084 2020403f branch idle_exit 
+
+idle_name_fail:
+4085 d8a000ff arg mem_tmp_buffer ,contw 
+4086 df200008 arg 8 ,loopcnt 
+4087 20407ca1 call memset0 
+4088 700a9504 jam bt_evt_reconn_failed ,mem_fifo_temp 
+4089 20407bab call ui_ipc_send_event 
+408a 2020403f branch idle_exit 
+
+inquiry_dispatch:
+408b c68e0000 rtnmark0 mark_inquiry_on 
+408c 18000e01 force inquiry_length_timer ,queue 
+408d 20407cf1 call timer_check 
+408e 7d3a001c nsetflag blank ,mark_inquiry_on ,mark 
+408f 243a4091 nbranch inquiry_start ,blank 
+4090 20600000 rtn 
+
+inquiry_start:
+4091 44854001 bpatch patch01_2 ,mem_patch01 
+4092 684440bb fetcht 2 ,mem_inq_window 
+4093 18000e04 force 4 ,queue 
+4094 20404718 call sniff_check_window 
+4095 20740000 rtn user 
+4096 204048a0 call afh_clear 
+4097 18004800 force 0 ,freq_mode 
+
+inquiry_restart:
+4098 20618000 rtn timeout 
+4099 793f800b set0 mark_fhs_already_good ,mark 
+409a 793f8000 set0 mark_fhs_eir ,mark 
+
+inquiry_rx_restart:
+409b 1c40c201 add clkn_bt ,1 ,bt_clk 
+409c 280ffe1e isolate1 mark_inquiry_trainb ,mark 
+409d 7920c802 setflag true ,2 ,freq_mode 
+409e 2c200400 compare 0x00 ,bt_clk ,0x02 
+409f 2420c0ba nbranch inquiry_receive ,true 
+
+inquiry_transmit:
+40a0 4485c001 bpatch patch01_3 ,mem_patch01 
+40a1 6fe20012 fetch 1 ,mem_inquiry_transmit 
+40a2 1fe0fe01 increase 1 ,pdata 
+40a3 67e20012 store 1 ,mem_inquiry_transmit 
+40a4 204048d4 call fetch_giac 
+40a5 204048ce call tx_radio_freq 
+40a6 204048ee call fetch_diac 
+40a7 20404a50 call start_transmitter 
+40a8 20404a55 call start_tx_native 
+40a9 20404a63 call send_access_word 
+40aa 20404649 call end_of_packet 
+40ab 204040ad call inquiry_check_train 
+40ac 20204098 branch inquiry_restart 
+
+inquiry_check_train:
+40ad 44864001 bpatch patch01_4 ,mem_patch01 
+40ae 6fe2008d fetch 1 ,mem_nfreq_index_inq 
+40af 1fe0ffff increase -1 ,pdata 
+40b0 67e2008d store 1 ,mem_nfreq_index_inq 
+40b1 20610000 rtn positive 
+40b2 70008d1f jam 31 ,mem_nfreq_index_inq 
+40b3 6fe2008f fetch 1 ,mem_ninqy_index 
+40b4 1fe0ffff increase -1 ,pdata 
+40b5 67e2008f store 1 ,mem_ninqy_index 
+40b6 20610000 rtn positive 
+40b7 7940001e setflip mark_inquiry_trainb ,mark 
+40b8 70008fff jam param_ninquiry ,mem_ninqy_index 
+40b9 20600000 rtn 
+
+inquiry_receive:
+40ba 4486c001 bpatch patch01_5 ,mem_patch01 
+40bb 204048d4 call fetch_giac 
+40bc 204048c8 call rx_radio_freq 
+40bd 204048ee call fetch_diac 
+40be 20404a5a call start_rx_native 
+40bf 204049ea call start_receiver 
+40c0 20404a0c call wait_access_clkn_rt 
+40c1 202c40c4 branch inquiry_sync ,sync 
+40c2 204040ad call inquiry_check_train 
+40c3 2020409b branch inquiry_rx_restart 
+
+inquiry_sync:
+40c4 44874001 bpatch patch01_6 ,mem_patch01 
+40c5 204049ba call save_rssi 
+40c6 20404a6a call scan_mode_whiten 
+40c7 2040451a call receive_packet_whitened 
+40c8 793f8001 set0 mark_rxbuf_inuse ,mark 
+40c9 c6858000 rtnmark0 mark_fhs_already_good 
+
+inquiry_receive_rtn:
+40ca 4487c001 bpatch patch01_7 ,mem_patch01 
+
+inquiry_receive_eir_rtn:
+40cb 6fe20013 fetch 1 ,mem_inquiry_rcv 
+40cc 1fe0fe01 increase 1 ,pdata 
+40cd 67e20013 store 1 ,mem_inquiry_rcv 
+40ce 20600000 rtn 
+
+master_page:
+40cf 44884002 bpatch patch02_0 ,mem_patch02 
+40d0 7834fc00 enable master 
+40d1 78387c00 enable clknt 
+40d2 6fe440b5 fetch 2 ,mem_page_interval 
+40d3 203a40d7 branch master_page_no_interval ,blank 
+40d4 18000e08 force page_interval_timer ,queue 
+40d5 20407cf1 call timer_check 
+40d6 247a0000 nrtn blank 
+
+master_page_no_interval:
+40d7 4488c002 bpatch patch02_1 ,mem_patch02 
+40d8 684440b7 fetcht 2 ,mem_page_window 
+40d9 18000e28 force 40 ,queue 
+40da 20404718 call sniff_check_window 
+40db 20344110 branch page_exit ,user 
+40dc 18000e03 force page_length_timer ,queue 
+40dd 20407cf1 call timer_check 
+40de 243a40ec nbranch page_start ,blank 
+40df 6fe2004c fetch 1 ,mem_state_map 
+40e0 c28240e2 bbit1 smap_name_req ,master_npage_timeout 
+40e1 202040e5 branch master_page_timeout 
+
+master_npage_timeout:
+40e2 d8a000ff arg mem_tmp_buffer ,contw 
+40e3 df200008 arg 8 ,loopcnt 
+40e4 20407ca1 call memset0 
+
+master_page_timeout:
+40e5 44894002 bpatch patch02_2 ,mem_patch02 
+40e6 70003000 jam 0 ,mem_state 
+40e7 204060d8 call init_lmp_work 
+40e8 70465100 jam 0 ,memui_reconnect_mode 
+40e9 700a9513 jam bt_evt_reconn_page_timeout ,mem_fifo_temp 
+40ea 20407bab call ui_ipc_send_event 
+40eb 20204110 branch page_exit 
+
+page_start:
+40ec 4489c002 bpatch patch02_3 ,mem_patch02 
+40ed 18001600 force 0 ,timeup 
+40ee 34730200 until clkn_rt ,meet 
+40ef 6fe200f0 fetch 1 ,mem_page_clk 
+40f0 1fe0ffff increase -1 ,pdata 
+40f1 9c42fe00 ixor clkn_bt ,pdata 
+40f2 2fe00600 compare 0 ,pdata ,3 
+40f3 2420c0ec nbranch page_start ,true 
+40f4 18827e00 deposit am_addr 
+40f5 67e2017f store 1 ,mem_fhs_am_addr 
+40f6 18004c00 force 0 ,n_tx_slot 
+40f7 18004800 force 0 ,freq_mode 
+
+page_restart:
+40f8 448a4002 bpatch patch02_4 ,mem_patch02 
+40f9 2021c110 branch page_exit ,timeout 
+40fa 204048d8 call fetch_page_bt_adr 
+40fb d9600600 arg param_rf_setup ,timeup 
+40fc 34730200 until clkn_rt ,meet 
+
+page_rx_restart:
+40fd 448ac002 bpatch patch02_5 ,mem_patch02 
+40fe 6fe800f0 fetch 4 ,mem_page_clk 
+40ff 98004200 iforce bt_clk 
+4100 1fe0fe01 increase 1 ,pdata 
+4101 67e800f0 store 4 ,mem_page_clk 
+4102 280ffe0c isolate1 mark_page_trainb ,mark 
+4103 7920c802 setflag true ,2 ,freq_mode 
+4104 2c200400 compare 0x00 ,bt_clk ,0x02 
+4105 2420c124 nbranch page_receive ,true 
+4106 6fe2000c fetch 1 ,mem_page_transmit 
+4107 1fe0fe01 increase 1 ,pdata 
+4108 67e2000c store 1 ,mem_page_transmit 
+4109 204048ce call tx_radio_freq 
+410a 20404a50 call start_transmitter 
+410b 20404a55 call start_tx_native 
+410c 20404a63 call send_access_word 
+410d 20404649 call end_of_packet 
+410e 20404116 call page_check_train 
+410f 202040f8 branch page_restart 
+
+page_exit:
+4110 448b4002 bpatch patch02_6 ,mem_patch02 
+4111 7854fc00 disable master 
+4112 6fe440b5 fetch 2 ,mem_page_interval 
+4113 207a0000 rtn blank 
+4114 18000e08 force page_interval_timer ,queue 
+4115 20207ce3 branch timer_init 
+
+page_check_train:
+4116 448bc002 bpatch patch02_7 ,mem_patch02 
+4117 6fe2008e fetch 1 ,mem_nfreq_index_page 
+4118 1fe0ffff increase -1 ,pdata 
+4119 67e2008e store 1 ,mem_nfreq_index_page 
+411a 20610000 rtn positive 
+411b 70008e1f jam 31 ,mem_nfreq_index_page 
+411c 6fe200ee fetch 1 ,mem_npage_index 
+411d 1fe0ffff increase -1 ,pdata 
+411e 67e200ee store 1 ,mem_npage_index 
+411f 20610000 rtn positive 
+4120 7940000c setflip mark_page_trainb ,mark 
+4121 6fe240a6 fetch 1 ,mem_npage 
+4122 67e200ee store 1 ,mem_npage_index 
+4123 20600000 rtn 
+
+page_receive:
+4124 448c4003 bpatch patch03_0 ,mem_patch03 
+4125 204048c8 call rx_radio_freq 
+4126 20404a5a call start_rx_native 
+4127 204049ea call start_receiver 
+4128 20404a0c call wait_access_clkn_rt 
+4129 202c412c branch page_sync ,sync 
+412a 20404116 call page_check_train 
+412b 202040fd branch page_rx_restart 
+
+page_sync:
+412c 20404649 call end_of_packet 
+412d 6fe2000d fetch 1 ,mem_page_rcv 
+412e 1fe0fe01 increase 1 ,pdata 
+412f 67e2000d store 1 ,mem_page_rcv 
+4130 18003600 force 0 ,stop_watch 
+4131 6fe800f0 fetch 4 ,mem_page_clk 
+
+page_send_fhs:
+4132 448cc003 bpatch patch03_1 ,mem_patch03 
+4133 20404a4e call rf_setup_time_master_slot 
+4134 204048d8 call fetch_page_bt_adr 
+4135 1cc0cc01 increase 1 ,n_tx_slot 
+
+page_send_fhs_continue:
+4136 1c2143fd and_into 0x1fd ,bt_clk 
+4137 1c8149fc and_into 0x1fc ,freq_mode 
+4138 204048ce call tx_radio_freq 
+4139 20404a50 call start_transmitter 
+413a 20404a55 call start_tx_native 
+413b 20404a63 call send_access_word 
+413c 1c427e00 deposit clkn_bt 
+413d 67e8015f store 4 ,mem_clkn_bt 
+413e 18000800 force 0 ,am_addr 
+413f 18000202 force type_fhs ,type 
+4140 20404a6a call scan_mode_whiten 
+4141 20404762 call transmit_packet_whitened 
+
+page_wait_fhs_reply:
+4142 448d4003 bpatch patch03_2 ,mem_patch03 
+4143 20404a4c call rf_setup_time_slave_slot 
+4144 1c21c202 or_into 0x02 ,bt_clk 
+4145 1c8149fc and_into 0x1fc ,freq_mode 
+4146 204048c8 call rx_radio_freq 
+4147 20404a5a call start_rx_native 
+4148 204049ea call start_receiver 
+4149 20404a0c call wait_access_clkn_rt 
+414a 204c4649 call end_of_packet ,sync 
+414b 202c4151 branch page_wait_fhs_reply_ok ,sync 
+414c 6fe20010 fetch 1 ,mem_fhs_wait_counter 
+414d 203a40f8 branch page_restart ,blank 
+414e 1fe0ffff increase -1 ,pdata 
+414f 67e20010 store 1 ,mem_fhs_wait_counter 
+4150 20204132 branch page_send_fhs 
+
+page_wait_fhs_reply_ok:
+4151 448dc003 bpatch patch03_3 ,mem_patch03 
+4152 6fe2000e fetch 1 ,mem_page_rcv_fhs 
+4153 1fe0fe01 increase 1 ,pdata 
+4154 67e2000e store 1 ,mem_page_rcv_fhs 
+4155 20404431 call prepare_newconn 
+
+master_newconn_loop:
+4156 204042ee call master_newconn_once 
+4157 202c415b branch newconn_poll_responded ,sync 
+4158 20404451 call new_conn_timeout 
+4159 243a4156 nbranch master_newconn_loop ,blank 
+415a 202040f8 branch page_restart 
+
+newconn_poll_responded:
+415b 448e4003 bpatch patch03_4 ,mem_patch03 
+415c 6fe20030 fetch 1 ,mem_state 
+415d 793ffe03 set0 state_inpage ,pdata 
+415e 67e20030 store 1 ,mem_state 
+415f 2040443c call newconn_init 
+4160 7854fc00 disable master 
+4161 20600000 rtn 
+
+master_dispatch:
+4162 448ec003 bpatch patch03_5 ,mem_patch03 
+4163 7834fc00 enable master 
+4164 78387c00 enable clknt 
+4165 204041dd call role_switch_master 
+4166 20740000 rtn user 
+4167 20404c24 call check_bt_disabled 
+4168 20404a4e call rf_setup_time_master_slot 
+4169 1c40c201 add clkn_bt ,1 ,bt_clk 
+416a 204048de call fetch_self_bt_adr 
+416b 18004803 force 0x03 ,freq_mode 
+416c 20406b81 call scheduler_tx_l2cap_pkt 
+416d 20404485 call prepare_tx 
+416e 204048ce call tx_radio_freq 
+416f 20404a50 call start_transmitter 
+4170 20404a55 call start_tx_native 
+4171 20404a63 call send_access_word 
+4172 2040475e call transmit_packet 
+
+master_loop:
+4173 448f4003 bpatch patch03_6 ,mem_patch03 
+4174 204060e9 call parse_lmp 
+4175 204042e0 call master_conn_recv_packet 
+4176 2436c17c nbranch master_notmatch ,match 
+4177 20404a87 call supervision_flush 
+4178 20404724 call parse_l2cap 
+4179 6fe2000f fetch 1 ,mem_master_rcvcnt 
+417a 1fe0fe01 increase 1 ,pdata 
+417b 67e2000f store 1 ,mem_master_rcvcnt 
+
+master_notmatch:
+417c 448fc003 bpatch patch03_7 ,mem_patch03 
+417d 20406b69 call scheduler_process 
+417e 20404187 call check_master_disconnect 
+417f 24748000 nrtn master 
+4180 204046ef call check_attempt 
+4181 243a4184 nbranch master_attempt ,blank 
+
+master_exit:
+4182 7854fc00 disable master 
+4183 20600000 rtn 
+
+master_attempt:
+4184 20404485 call prepare_tx 
+4185 204042d6 call master_conn_send_packet 
+4186 20204173 branch master_loop 
+
+check_master_disconnect:
+4187 2036c18a branch check_master_match ,match 
+4188 20404a7e call supervision_update 
+4189 20214198 branch master_disconnect ,positive 
+
+check_master_match:
+418a 204041a3 call check_disconnect_timeout 
+418b 24344198 nbranch master_disconnect ,user 
+418c 6fe2004c fetch 1 ,mem_state_map 
+418d c4020000 rtnbit0 smap_name_req 
+418e c3818000 rtnbit1 smap_name_res 
+418f 6fe2004b fetch 1 ,mem_op 
+4190 c3818000 rtnbit1 op_disconn 
+4191 204041aa call conn_timer_expired 
+4192 247a0000 nrtn blank 
+4193 6fe2016c fetch 1 ,mem_nameres_cnt 
+4194 1fe0ffff increase -1 ,pdata 
+4195 67e2016c store 1 ,mem_nameres_cnt 
+4196 247a0000 nrtn blank 
+4197 202063e8 branch lmp_disconnect 
+
+master_disconnect:
+4198 44904004 bpatch patch04_0 ,mem_patch04 
+4199 20404459 call quit_connection 
+419a 7854fc00 disable master 
+419b 6fe2004c fetch 1 ,mem_state_map 
+419c c282419e bbit1 smap_name_req ,master_name_disconnect 
+419d 20600000 rtn 
+
+master_name_disconnect:
+419e 6fe2004c fetch 1 ,mem_state_map 
+419f c3818000 rtnbit1 smap_name_res 
+
+master_name_error:
+41a0 d8a000ff arg mem_tmp_buffer ,contw 
+41a1 df200008 arg 8 ,loopcnt 
+41a2 20207ca1 branch memset0 
+
+check_disconnect_timeout:
+41a3 4490c004 bpatch patch04_1 ,mem_patch04 
+41a4 78347c00 enable user 
+41a5 6fe2004b fetch 1 ,mem_op 
+41a6 c4018000 rtnbit0 op_disconn 
+41a7 204041aa call conn_timer_expired 
+41a8 247a0000 nrtn blank 
+41a9 20207dc1 branch disable_user 
+
+conn_timer_expired:
+41aa 6fe20072 fetch 1 ,mem_conn_timer 
+41ab 1fe0ffff increase -1 ,pdata 
+41ac 67e20072 store 1 ,mem_conn_timer 
+41ad 20600000 rtn 
+
+linkkey_ready:
+41ae 44914004 bpatch patch04_2 ,mem_patch04 
+41af 6fe20030 fetch 1 ,mem_state 
+41b0 c283c1b7 bbit1 state_linkkey ,linkkey_set 
+41b1 6fe209b1 fetch 1 ,mem_pairing_auth 
+41b2 203a41b7 branch linkkey_set ,blank 
+41b3 7009b100 jam defalt_pairing_auth ,mem_pairing_auth 
+41b4 700a9518 jam bt_evt_linkkey_generate ,mem_fifo_temp 
+41b5 20407bab call ui_ipc_send_event 
+41b6 202041b7 branch linkkey_set 
+
+linkkey_set:
+41b7 4491c004 bpatch patch04_3 ,mem_patch04 
+41b8 20404250 call context_traverse_linkkey 
+41b9 6fe20030 fetch 1 ,mem_state 
+41ba 79207e07 set1 state_linkkey ,pdata 
+41bb 67e20030 store 1 ,mem_state 
+41bc 7041be01 jam 1 ,mem_link_key_exists 
+41bd 6fe20055 fetch 1 ,mem_conn_sm 
+41be c08b41bf bne conn_sm_pairing ,linkkey_set_continue 
+
+linkkey_set_continue:
+41bf 20600000 rtn 
+
+generate_linkkey_continue:
+41c0 7009b101 jam pairing_auth ,mem_pairing_auth 
+
+clear_linkstate:
+41c1 6fe20030 fetch 1 ,mem_state 
+41c2 793ffe07 set0 state_linkkey ,pdata 
+41c3 67e20030 store 1 ,mem_state 
+41c4 20600000 rtn 
+
+role_switch_check:
+41c5 44924004 bpatch patch04_4 ,mem_patch04 
+41c6 78547c00 disable user 
+41c7 6fe40032 fetch 2 ,mem_tsniff 
+41c8 d840ffff arg 0xffff ,temp 
+41c9 98467c00 isub temp ,null 
+41ca 24628000 nrtn zero 
+41cb 6fe80034 fetch 4 ,mem_sniff_anchor 
+41cc 203841cf branch role_switch_clkn ,clknt 
+41cd 9d067e00 isub clke_bt ,pdata 
+41ce 202041d0 branch role_switch_clke 
+
+role_switch_clkn:
+41cf 9c467e00 isub clkn_bt ,pdata 
+
+role_switch_clke:
+41d0 1fe67c04 sub pdata ,4 ,null 
+41d1 24610000 nrtn positive 
+41d2 18007e00 force 0 ,pdata 
+41d3 67e40032 store 2 ,mem_tsniff 
+41d4 20207dbf branch enable_user 
+
+role_switch_prepare:
+41d5 1fe20400 copy pdata ,temp 
+41d6 4492c004 bpatch patch04_5 ,mem_patch04 
+41d7 60480034 storet 4 ,mem_sniff_anchor 
+
+role_switch_prepare0:
+41d8 70452d01 jam switch_flag_accept ,mem_switch_flag 
+41d9 5800ffff setarg 0xffff 
+41da 67e40032 store 2 ,mem_tsniff 
+41db 70007301 jam 1 ,mem_sniff_attempt 
+41dc 20600000 rtn 
+
+role_switch_master:
+41dd 44934004 bpatch patch04_6 ,mem_patch04 
+41de 204041c5 call role_switch_check 
+41df 24740000 nrtn user 
+41e0 78547c00 disable user 
+41e1 70001120 jam param_newconnto ,mem_newconnto_counter 
+41e2 793f800b set0 mark_fhs_already_good ,mark 
+
+roles_waitfhs_loop:
+41e3 20404a4e call rf_setup_time_master_slot 
+41e4 204042e2 call master_recv_packet 
+41e5 c505c1f0 bmark1 mark_fhs_already_good ,roles_replyto_fhs 
+41e6 20404451 call new_conn_timeout 
+41e7 243a41e3 nbranch roles_waitfhs_loop ,blank 
+
+role_switch_fail_master:
+41e8 4493c004 bpatch patch04_7 ,mem_patch04 
+41e9 78547c00 disable user 
+41ea 1c427e00 deposit clkn_bt 
+41eb 67e840ca store 4 ,mem_next_btclk 
+41ec 78387c00 enable clknt 
+41ed 7834fc00 enable master 
+41ee 700a952a jam bt_evt_switch_fail_master ,mem_fifo_temp 
+41ef 20207bab branch ui_ipc_send_event 
+
+roles_replyto_fhs:
+41f0 44944005 bpatch patch05_0 ,mem_patch05 
+41f1 20404a4c call rf_setup_time_slave_slot 
+41f2 d8200010 arg type_id ,type 
+41f3 204042d8 call master_send_packet 
+41f4 78587c00 disable clknt 
+41f5 7854fc00 disable master 
+41f6 20404814 call apply_switch_clke 
+41f7 20404431 call prepare_newconn 
+
+roles_newconns_loop:
+41f8 4494c005 bpatch patch05_1 ,mem_patch05 
+41f9 20404478 call slave_newconn_once 
+41fa 2036c1fe branch roles_newconns_responded ,match 
+41fb 20404451 call new_conn_timeout 
+41fc 243a41f8 nbranch roles_newconns_loop ,blank 
+41fd 202041e8 branch role_switch_fail_master 
+
+roles_newconns_responded:
+41fe 6fe20031 fetch 1 ,mem_mode 
+41ff 793ffe01 set0 mode_master ,pdata 
+4200 67e20031 store 1 ,mem_mode 
+4201 20404a87 call supervision_flush 
+4202 2040483d call calc_clke_offset 
+4203 78347c00 enable user 
+4204 700a952b jam bt_evt_switch_success_master ,mem_fifo_temp 
+4205 20207bab branch ui_ipc_send_event 
+
+context_load:
+4206 44954005 bpatch patch05_2 ,mem_patch05 
+4207 79200009 set1 mark_context ,mark 
+4208 1a227e00 deposit rega 
+4209 67e4001e store 2 ,mem_context_ptr 
+420a 18007250 force context_size ,loopcnt 
+420b d8a0043b arg mem_le_state ,contw 
+420c 1a208c01 add rega ,coffset_mode ,contr 
+420d efe20006 ifetch 1 ,contr 
+420e 1a220c00 copy rega ,contr 
+420f c2807cdc bbit1 mode_le ,memcpy 
+4210 d8a00030 arg mem_state ,contw 
+4211 20407cdc call memcpy 
+4212 78577c00 disable attempt 
+4213 6fe20077 fetch 1 ,mem_amaddr 
+4214 98000800 iforce am_addr 
+4215 70008a01 jam 1 ,mem_current_sniff_attempt 
+4216 2034c218 branch context_load_master ,master 
+4217 70008a01 jam 1 ,mem_current_sniff_attempt 
+
+context_load_master:
+4218 6fe20030 fetch 1 ,mem_state 
+4219 c4008000 rtnbit0 state_insniff 
+421a 6fe20073 fetch 1 ,mem_sniff_attempt 
+421b 67e2008a store 1 ,mem_current_sniff_attempt 
+421c 6fe20074 fetch 1 ,mem_sniff_timeout 
+421d 67e2008b store 1 ,mem_current_sniff_timeout 
+421e 20600000 rtn 
+
+context_save:
+421f 4495c005 bpatch patch05_3 ,mem_patch05 
+4220 6fe4001e fetch 2 ,mem_context_ptr 
+4221 98000a00 iforce contw 
+4222 18007250 force context_size ,loopcnt 
+4223 d8c0043b arg mem_le_state ,contr 
+4224 203b7cdc branch memcpy ,le 
+4225 d8c00030 arg mem_state ,contr 
+4226 20207cdc branch memcpy 
+
+context_get_next:
+4227 df200001 arg context_num ,loopcnt 
+4228 68420015 fetcht 1 ,mem_current_context 
+
+context_get_next_loop:
+4229 18408401 increase 1 ,temp 
+422a 2841fe01 compare context_num ,temp ,0xff 
+422b 2420c22d nbranch context_get_next_cont ,true 
+422c d8400000 arg 0 ,temp 
+
+context_get_next_cont:
+422d 60420015 storet 1 ,mem_current_context 
+422e 184ffe50 mul32 temp ,context_size ,pdata 
+422f da204040 arg mem_context ,rega 
+4230 9a20a200 iadd rega ,rega 
+4231 efe20011 ifetch 1 ,rega 
+4232 c280c235 bbit1 state_insniff ,context_get_next_sniff 
+4233 c3800000 rtnbit1 state_inconn 
+4234 c3818000 rtnbit1 state_inpage 
+
+context_get_next_sniff:
+4235 c2004229 loop context_get_next_loop 
+4236 20600000 rtn 
+
+context_new:
+4237 44964005 bpatch patch05_4 ,mem_patch05 
+4238 da604266 arg context_search_empty ,regc 
+4239 2040425d call context_search 
+423a 24628000 nrtn zero 
+423b 1a227e00 deposit rega 
+423c 67e4001e store 2 ,mem_context_ptr 
+423d 18007c00 force 0 ,null 
+423e 20600000 rtn 
+
+context_check_all_wack:
+423f 20404721 call check_esco_amaddr 
+4240 2020c247 branch context_check_esco_wack ,true 
+4241 6fe4001e fetch 2 ,mem_context_ptr 
+4242 1fe08a17 add pdata ,coffset_arq ,contw 
+4243 6fe20047 fetch 1 ,mem_arq 
+4244 e7e20005 istore 1 ,contw 
+4245 da6042a6 arg context_check_a_wack ,regc 
+4246 2020425d branch context_search 
+
+context_check_esco_wack:
+4247 6fe20047 fetch 1 ,mem_arq 
+4248 2feffe03 isolate1 wack ,pdata 
+4249 2020c24c branch context_esco_wack ,true 
+424a 18007c01 force 1 ,null 
+424b 20600000 rtn 
+
+context_esco_wack:
+424c 18007c00 force 0 ,null 
+424d 20600000 rtn 
+
+context_check_idle:
+424e da6042a3 arg context_check_inconn ,regc 
+424f 2020425d branch context_search 
+
+context_traverse_linkkey:
+4250 6844001e fetcht 2 ,mem_context_ptr 
+4251 da6042cb arg context_traverse_clearkey ,regc 
+4252 2020425d branch context_search 
+
+context_search_conn_handle:
+4253 684241d0 fetcht 1 ,mem_hci_conn_handle 
+
+context_search_conn_handle2:
+4254 da604271 arg context_search_handle ,regc 
+4255 2020425d branch context_search 
+
+context_search_plap:
+4256 4496c005 bpatch patch05_5 ,mem_patch05 
+4257 684c41d1 fetcht 6 ,mem_hci_plap 
+
+context_search_plap2:
+4258 da60426a arg context_search_lap ,regc 
+4259 2020425d branch context_search 
+
+context_search_insniff:
+425a da604277 arg context_search_sniff ,regc 
+425b 2020425d branch context_search 
+
+context_search_sniff_window:
+425c da6042c2 arg context_search_window ,regc 
+
+context_search:
+425d 44974005 bpatch patch05_6 ,mem_patch05 
+425e da204040 arg mem_context ,rega 
+425f df200001 arg context_num ,loopcnt 
+
+context_search_loop:
+4260 efe20011 ifetch 1 ,rega 
+4261 1a627a00 copy regc ,pc 
+
+context_search_next:
+4262 1a20a250 increase context_size ,rega 
+4263 c2004260 loop context_search_loop 
+4264 18007c01 force 1 ,null 
+4265 20600000 rtn 
+
+context_search_empty:
+4266 c2804262 bbit1 state_inconn ,context_search_next 
+4267 c281c262 bbit1 state_inpage ,context_search_next 
+4268 18007c00 force 0 ,null 
+4269 20600000 rtn 
+
+context_search_lap:
+426a c281c26c bbit1 state_inpage ,context_search_lap_cont 
+426b c3004262 bbit0 state_inconn ,context_search_next 
+
+context_search_lap_cont:
+426c 1a208c10 add rega ,coffset_plap ,contr 
+426d efec0006 ifetch 6 ,contr 
+426e 98467c00 isub temp ,null 
+426f 20628000 rtn zero 
+4270 20204262 branch context_search_next 
+
+context_search_handle:
+4271 c3004262 bbit0 state_inconn ,context_search_next 
+4272 1a208c16 add rega ,coffset_conn_handle ,contr 
+4273 efe20006 ifetch 1 ,contr 
+4274 98467c00 isub temp ,null 
+4275 20628000 rtn zero 
+4276 20204262 branch context_search_next 
+
+context_search_sniff:
+4277 c300c262 bbit0 state_insniff ,context_search_next 
+
+context_search_sniff_loop:
+4278 204042af call context_get_anchor 
+4279 20404293 call sign_pdata_temp 
+427a 98467e00 isub temp ,pdata 
+427b 1fe0fe01 increase 1 ,pdata 
+427c 2021428d branch context_search_sniff_miss ,positive 
+427d 18c22400 copy contr ,regb 
+427e 67f20a9e store 9 ,mem_temp 
+427f 6fe24492 fetch 1 ,mem_le_sc_calc 
+4280 243a4285 nbranch context_search_sniff_sc ,blank 
+4281 6ff20a9e fetch 9 ,mem_temp 
+4282 1a420c00 copy regb ,contr 
+4283 1fe0fe05 increase 5 ,pdata 
+4284 20204288 branch context_search_meet1 
+
+context_search_sniff_sc:
+4285 6ff20a9e fetch 9 ,mem_temp 
+4286 1a420c00 copy regb ,contr 
+4287 1fe0fe14 increase 20 ,pdata 
+
+context_search_meet1:
+4288 24214262 nbranch context_search_next ,positive 
+
+context_search_meet:
+4289 18424200 copy temp ,bt_clk 
+428a 204042bb call context_next_anchor 
+428b 18007c00 force 0 ,null 
+428c 20600000 rtn 
+
+context_search_sniff_miss:
+428d 98002400 iforce regb 
+428e 1a208c02 add rega ,coffset_tsniff ,contr 
+428f efe40006 ifetch 2 ,contr 
+4290 203a4289 branch context_search_meet ,blank 
+4291 204042bb call context_next_anchor 
+4292 20204278 branch context_search_sniff_loop 
+
+sign_pdata_temp:
+4293 1ff11600 rshift16 pdata ,timeup 
+4294 196c9600 rshift8 timeup ,timeup 
+4295 2022c29d branch sign_pdata_temp_p0 ,zero 
+4296 29601e0f compare 0xf ,timeup ,0xf 
+4297 24608000 nrtn true 
+4298 18511600 rshift16 temp ,timeup 
+4299 196c9600 rshift8 timeup ,timeup 
+429a 24628000 nrtn zero 
+429b 7920041c set1 28 ,temp 
+429c 20600000 rtn 
+
+sign_pdata_temp_p0:
+429d 18511600 rshift16 temp ,timeup 
+429e 196c9600 rshift8 timeup ,timeup 
+429f 29601e0f compare 0xf ,timeup ,0xf 
+42a0 24608000 nrtn true 
+42a1 79207e1c set1 28 ,pdata 
+42a2 20600000 rtn 
+
+context_check_inconn:
+42a3 c3004262 bbit0 state_inconn ,context_search_next 
+42a4 18007c00 force 0 ,null 
+42a5 20600000 rtn 
+
+context_check_a_wack:
+42a6 c3004262 bbit0 state_inconn ,context_search_next 
+42a7 1a208c01 add rega ,coffset_mode ,contr 
+42a8 efe20006 ifetch 1 ,contr 
+42a9 c2804262 bbit1 mode_le ,context_search_next 
+42aa 1a208c17 add rega ,coffset_arq ,contr 
+42ab efe20006 ifetch 1 ,contr 
+42ac c301c262 bbit0 wack ,context_search_next 
+42ad 18007c00 force 0 ,null 
+42ae 20600000 rtn 
+
+context_get_anchor:
+42af 1a208c01 add rega ,coffset_mode ,contr 
+42b0 e8420006 ifetcht 1 ,contr 
+42b1 1c427e00 deposit clkn_bt 
+42b2 284ffe01 isolate1 mode_master ,temp 
+42b3 1a208c04 add rega ,coffset_sniff_anchor ,contr 
+42b4 e8480006 ifetcht 4 ,contr 
+42b5 20608000 rtn true 
+42b6 1a208c08 add rega ,coffset_clk_offset ,contr 
+42b7 efec0006 ifetch 6 ,contr 
+42b8 20404850 call calc_clke2 
+42b9 1d027e00 deposit clke_bt 
+42ba 20600000 rtn 
+
+context_next_anchor:
+42bb 1a208c02 add rega ,coffset_tsniff ,contr 
+42bc 1a208a04 add rega ,coffset_sniff_anchor ,contw 
+42bd efe40006 ifetch 2 ,contr 
+42be 98409600 iadd temp ,timeup 
+42bf 19627e00 deposit timeup 
+42c0 e7e80005 istore 4 ,contw 
+42c1 20205823 branch le_context_nexthop 
+
+context_search_window:
+42c2 c300c262 bbit0 state_insniff ,context_search_next 
+42c3 204042af call context_get_anchor 
+42c4 9b60fe00 iadd stop_watch ,pdata 
+42c5 9b60fe00 iadd stop_watch ,pdata 
+42c6 98e0fe00 iadd queue ,pdata 
+42c7 98467c00 isub temp ,null 
+42c8 24214262 nbranch context_search_next ,positive 
+42c9 18007c00 force 0 ,null 
+42ca 20600000 rtn 
+
+context_traverse_clearkey:
+42cb c3004262 bbit0 state_inconn ,context_search_next 
+42cc 18427e00 deposit temp 
+42cd 9a267c00 isub rega ,null 
+42ce 203f4262 branch context_search_next ,null 
+42cf 1a208c01 add rega ,coffset_mode ,contr 
+42d0 efe20006 ifetch 1 ,contr 
+42d1 c2804262 bbit1 mode_le ,context_search_next 
+42d2 efe20011 ifetch 1 ,rega 
+42d3 793ffe07 set0 state_linkkey ,pdata 
+42d4 e7e20011 istore 1 ,rega 
+42d5 20204262 branch context_search_next 
+
+master_conn_send_packet:
+42d6 4497c005 bpatch patch05_7 ,mem_patch05 
+42d7 20404a4e call rf_setup_time_master_slot 
+
+master_send_packet:
+42d8 1c40c201 add clkn_bt ,1 ,bt_clk 
+42d9 204048de call fetch_self_bt_adr 
+42da 18004803 force 0x03 ,freq_mode 
+42db 204048ce call tx_radio_freq 
+42dc 20404a50 call start_transmitter 
+42dd 20404a55 call start_tx_native 
+42de 20404a63 call send_access_word 
+42df 2020475e branch transmit_packet 
+
+master_conn_recv_packet:
+42e0 44984006 bpatch patch06_0 ,mem_patch06 
+42e1 20404a4c call rf_setup_time_slave_slot 
+
+master_recv_packet:
+42e2 1c40c201 add clkn_bt ,1 ,bt_clk 
+42e3 204048de call fetch_self_bt_adr 
+42e4 18004803 force 0x03 ,freq_mode 
+42e5 204048c8 call rx_radio_freq 
+42e6 20404426 call init_rx_packet_flags 
+42e7 204049f0 call prep_crypt 
+42e8 20404a5a call start_rx_native 
+42e9 204049ea call start_receiver 
+
+master_rx_conn_finish_packet:
+42ea 20404a0c call wait_access_clkn_rt 
+42eb 246c0000 nrtn sync 
+42ec 204049ba call save_rssi 
+42ed 20204518 branch receive_packet 
+
+master_newconn_once:
+42ee 4498c006 bpatch patch06_1 ,mem_patch06 
+42ef 6fe2017f fetch 1 ,mem_fhs_am_addr 
+42f0 98000800 iforce am_addr 
+42f1 18000201 force type_poll ,type 
+42f2 204042d6 call master_conn_send_packet 
+42f3 202042e0 branch master_conn_recv_packet 
+
+inquiry_scan_dispatch:
+42f4 6fe24093 fetch 1 ,mem_scan_mode 
+42f5 c4000000 rtnbit0 inq_scan_mode 
+42f6 18000e04 force iscan_interval_timer ,queue 
+42f7 20407cf1 call timer_check 
+42f8 247a0000 nrtn blank 
+42f9 684440ad fetcht 2 ,mem_iscan_window 
+42fa 18000e04 force 4 ,queue 
+42fb 20404718 call sniff_check_window 
+42fc 20740000 rtn user 
+42fd 20404304 call inquiry_scan_start 
+42fe 18000e04 force iscan_interval_timer ,queue 
+42ff 6fe440af fetch 2 ,mem_iscan_interval 
+4300 242c7ce3 nbranch timer_init ,sync 
+4301 180a7e00 random pdata 
+4302 9ea17e00 iand mask3ff ,pdata 
+4303 20207ce3 branch timer_init 
+
+inquiry_scan_start:
+4304 44994006 bpatch patch06_2 ,mem_patch06 
+4305 70017f00 jam 0 ,mem_fhs_am_addr 
+4306 78587c00 disable clknt 
+4307 78577c00 disable attempt 
+4308 204048a0 call afh_clear 
+4309 1c4143fc and clkn_bt ,0x1fc ,bt_clk 
+430a 18004801 force 0x01 ,freq_mode 
+430b 204048d4 call fetch_giac 
+430c 204048c8 call rx_radio_freq 
+430d 7940001d setflip mark_inquiry_state ,mark 
+430e 6fe20006 fetch 1 ,mem_inquiryscan_waitcnt 
+430f 1fe0fe01 increase 1 ,pdata 
+4310 67e20006 store 1 ,mem_inquiryscan_waitcnt 
+4311 204048ee call fetch_diac 
+4312 204049ea call start_receiver 
+4313 20404a13 call wait_access_forever 
+4314 246c0000 nrtn sync 
+4315 4499c006 bpatch patch06_3 ,mem_patch06 
+4316 18003600 force 0 ,stop_watch 
+4317 204048f5 call shutdown_radio 
+4318 6fe20007 fetch 1 ,mem_inquiryscan_rcvcnt 
+4319 1fe0fe01 increase 1 ,pdata 
+431a 67e20007 store 1 ,mem_inquiryscan_rcvcnt 
+431b 204048d4 call fetch_giac 
+431c 20404a4c call rf_setup_time_slave_slot 
+431d 1c21c202 or_into 0x002 ,bt_clk 
+431e 18004801 force 0x01 ,freq_mode 
+431f 204048ce call tx_radio_freq 
+4320 204048ee call fetch_diac 
+4321 20404a50 call start_transmitter 
+4322 20404a5e call start_tx_external 
+4323 1c427e00 deposit clkn_bt 
+4324 67e8015f store 4 ,mem_clkn_bt 
+4325 20404a63 call send_access_word 
+4326 18000202 force type_fhs ,type 
+4327 18000800 force 0 ,am_addr 
+4328 20404a6a call scan_mode_whiten 
+4329 20404762 call transmit_packet_whitened 
+432a 2040432e call send_eir 
+432b 1c2143fd and_into 0x1fd ,bt_clk 
+432c 1cc0cc01 increase 1 ,n_tx_slot 
+432d 20600000 rtn 
+
+send_eir:
+432e 449a4006 bpatch patch06_4 ,mem_patch06 
+432f 6fe240d1 fetch 1 ,mem_eir_enable 
+4330 207a0000 rtn blank 
+4331 d8a0018c arg mem_eir ,contw 
+4332 6fe244e7 fetch 1 ,mem_local_name_length 
+4333 1fe27200 copy pdata ,loopcnt 
+4334 1fe0fe01 increase 1 ,pdata 
+4335 e7e20005 istore 1 ,contw 
+4336 18a20400 copy contw ,temp 
+4337 1fe0fe01 increase 1 ,pdata 
+4338 67e441dd store 2 ,mem_tx_len 
+4339 18420a00 copy temp ,contw 
+433a 58000009 setarg 0x09 
+433b e7e20005 istore 1 ,contw 
+433c d8c044e8 arg mem_local_name ,contr 
+433d 20407cdc call memcpy 
+433e da60455f arg mem_all_uuid_128bits ,regc 
+433f df200004 arg 4 ,loopcnt 
+4340 20404350 call get_all_uuid 
+4341 da604549 arg mem_all_uuid_16bits ,regc 
+4342 df200001 arg 1 ,loopcnt 
+4343 20404350 call get_all_uuid 
+4344 1800020a force type_dm3 ,type 
+4345 7041dc02 jam 2 ,mem_tx_lch 
+4346 5800018c setarg mem_eir 
+4347 67e4016d store 2 ,mem_txptr 
+4348 20404a4c call rf_setup_time_slave_slot 
+4349 204048ce call tx_radio_freq 
+434a 20404a50 call start_transmitter 
+434b 20404a5e call start_tx_external 
+434c 20404a63 call send_access_word 
+434d 20404a6a call scan_mode_whiten 
+434e 20404762 call transmit_packet_whitened 
+434f 20600000 rtn 
+
+get_all_uuid:
+4350 18a20400 copy contw ,temp 
+4351 1a620c00 copy regc ,contr 
+4352 efe20006 ifetch 1 ,contr 
+4353 207a0000 rtn blank 
+
+lshift_loop:
+4354 1fe3fe00 lshift pdata ,pdata 
+4355 c2004354 loop lshift_loop 
+4356 1fe22200 copy pdata ,rega 
+4357 1fe0fe02 increase 2 ,pdata 
+4358 1fe20e00 copy pdata ,queue 
+4359 6fe441dd fetch 2 ,mem_tx_len 
+435a 98e0fe00 iadd queue ,pdata 
+435b 67e441dd store 2 ,mem_tx_len 
+435c 18420a00 copy temp ,contw 
+435d 1a227e00 copy rega ,pdata 
+435e 1fe0fe01 increase 1 ,pdata 
+435f e7e20005 istore 1 ,contw 
+4360 1a620c00 copy regc ,contr 
+4361 efe20006 ifetch 1 ,contr 
+4362 efe20006 ifetch 1 ,contr 
+4363 e7e20005 istore 1 ,contw 
+4364 1a227200 copy rega ,loopcnt 
+4365 20207cdc branch memcpy 
+
+page_scan_dispatch:
+4366 6fe24093 fetch 1 ,mem_scan_mode 
+4367 c4008000 rtnbit0 page_scan_mode 
+4368 18000e05 force pscan_interval_timer ,queue 
+4369 20407cf1 call timer_check 
+436a 247a0000 nrtn blank 
+436b 684440b1 fetcht 2 ,mem_pscan_window 
+436c 18000e28 force 40 ,queue 
+436d 20404718 call sniff_check_window 
+436e 20740000 rtn user 
+436f 18000800 force 0 ,am_addr 
+4370 70001008 jam param_pagerespto ,mem_fhs_wait_counter 
+4371 793f800b set0 mark_fhs_already_good ,mark 
+4372 20404376 call page_scan_start 
+4373 18000e05 force pscan_interval_timer ,queue 
+4374 6fe440b3 fetch 2 ,mem_pscan_interval 
+4375 20207ce3 branch timer_init 
+
+page_scan_start:
+4376 449ac006 bpatch patch06_5 ,mem_patch06 
+4377 78587c00 disable clknt 
+4378 204048a0 call afh_clear 
+4379 6fe20008 fetch 1 ,mem_pagescan_waitcnt 
+437a 1fe0fe01 increase 1 ,pdata 
+437b 67e20008 store 1 ,mem_pagescan_waitcnt 
+437c 18004c00 force 0 ,n_tx_slot 
+437d 204048de call fetch_self_bt_adr 
+437e 1c40c201 add clkn_bt ,1 ,bt_clk 
+437f 18004802 force 0x02 ,freq_mode 
+4380 449b4006 bpatch patch06_6 ,mem_patch06 
+4381 204048c8 call rx_radio_freq 
+4382 204049ea call start_receiver 
+4383 20404a13 call wait_access_forever 
+4384 246c0000 nrtn sync 
+4385 204048f5 call shutdown_radio 
+4386 6fe20009 fetch 1 ,mem_pagescan_rcvcnt 
+4387 1fe0fe01 increase 1 ,pdata 
+4388 67e20009 store 1 ,mem_pagescan_rcvcnt 
+4389 18003600 force 0 ,stop_watch 
+438a 20404a4c call rf_setup_time_slave_slot 
+438b 1c21c202 or_into 0x002 ,bt_clk 
+438c 18004801 force 0x01 ,freq_mode 
+438d 204048ce call tx_radio_freq 
+438e 20404a50 call start_transmitter 
+438f 20404a5e call start_tx_external 
+4390 20404a63 call send_access_word 
+4391 20404649 call end_of_packet 
+4392 18000800 force 0 ,am_addr 
+4393 d9600600 arg param_rf_setup ,timeup 
+4394 35330200 until clke_rt ,meet 
+4395 1d01d003 or_into 0x03 ,clke_bt 
+4396 1c2143fd and_into 0x1fd ,bt_clk 
+
+page_scan_wait_fhs_restart:
+4397 449bc006 bpatch patch06_7 ,mem_patch06 
+4398 1cc0cc01 increase 1 ,n_tx_slot 
+4399 204048c8 call rx_radio_freq 
+439a 204049ea call start_receiver 
+439b 20404a06 call wait_access_mhalfbnd 
+439c 242c43a0 nbranch page_scan_wait_fhs_again ,sync 
+439d 20404a6a call scan_mode_whiten 
+439e 2040451a call receive_packet_whitened 
+439f c505c3a7 bmark1 mark_fhs_already_good ,page_scan_reply_to_fhs 
+
+page_scan_wait_fhs_again:
+43a0 449c4007 bpatch patch07_0 ,mem_patch07 
+43a1 6fe20010 fetch 1 ,mem_fhs_wait_counter 
+43a2 207a0000 rtn blank 
+43a3 1fe0ffff increase -1 ,pdata 
+43a4 67e20010 store 1 ,mem_fhs_wait_counter 
+43a5 20404a4e call rf_setup_time_master_slot 
+43a6 20204397 branch page_scan_wait_fhs_restart 
+
+page_scan_reply_to_fhs:
+43a7 449cc007 bpatch patch07_1 ,mem_patch07 
+43a8 793fd001 set0 1 ,clke_bt 
+43a9 79205000 set1 0 ,clke_bt 
+43aa 6fe2000a fetch 1 ,mem_pagescan_rcvfhscnt 
+43ab 1fe0fe01 increase 1 ,pdata 
+43ac 67e2000a store 1 ,mem_pagescan_rcvfhscnt 
+43ad 20404a4c call rf_setup_time_slave_slot 
+43ae 1c21c202 or_into 0x02 ,bt_clk 
+43af 204048ce call tx_radio_freq 
+43b0 20404a50 call start_transmitter 
+43b1 20404a5e call start_tx_external 
+43b2 20404a63 call send_access_word 
+43b3 20404649 call end_of_packet 
+
+slave_apply_clke_bt:
+43b4 2d000603 compare 0x03 ,clke_bt ,0x03 
+43b5 2020c3b8 branch slave_apply_clke_bt_now ,true 
+43b6 37cb8200 until null ,mhalfbnd 
+43b7 202043b4 branch slave_apply_clke_bt 
+
+slave_apply_clke_bt_now:
+43b8 6fe80163 fetch 4 ,mem_clke_bt 
+43b9 1fe1fe03 or_into 0x03 ,pdata 
+43ba 1fe25000 icopy clke_bt 
+
+start_slave_connection:
+43bb 449d4007 bpatch patch07_2 ,mem_patch07 
+43bc 6fec0176 fetch 6 ,extm_lap 
+43bd 67ec0040 store 6 ,mem_plap 
+43be 20404431 call prepare_newconn 
+
+slave_newconn_loop:
+43bf 20404478 call slave_newconn_once 
+43c0 2036c3c4 branch sconn_successful ,match 
+43c1 20404451 call new_conn_timeout 
+43c2 243a43bf nbranch slave_newconn_loop ,blank 
+43c3 20600000 rtn 
+
+sconn_successful:
+43c4 449dc007 bpatch patch07_3 ,mem_patch07 
+43c5 2040443c call newconn_init 
+43c6 20404237 call context_new 
+43c7 24628000 nrtn zero 
+43c8 70003100 jam 0 ,mem_mode 
+43c9 2040483d call calc_clke_offset 
+43ca 2020421f branch context_save 
+
+slave_dispatch:
+43cb 449e4007 bpatch patch07_4 ,mem_patch07 
+43cc 2040484c call calc_clke 
+43cd 204043ef call role_switch_slave 
+43ce 20740000 rtn user 
+
+slave_loop:
+43cf 449ec007 bpatch patch07_5 ,mem_patch07 
+43d0 20404c24 call check_bt_disabled 
+43d1 20406b69 call scheduler_process 
+43d2 20404510 call slave_conn_recv_packet 
+43d3 2436c3de nbranch slave_notmatch ,match 
+43d4 20404a87 call supervision_flush 
+43d5 20406b81 call scheduler_tx_l2cap_pkt 
+43d6 20404485 call prepare_tx 
+43d7 20404753 call slave_conn_send_packet 
+43d8 20404724 call parse_l2cap 
+43d9 204060e9 call parse_lmp 
+43da 6fe2000b fetch 1 ,mem_slave_rcvcnt 
+43db 1fe0fe01 increase 1 ,pdata 
+43dc 67e2000b store 1 ,mem_slave_rcvcnt 
+43dd 2040483d call calc_clke_offset 
+
+slave_notmatch:
+43de 449f4007 bpatch patch07_6 ,mem_patch07 
+43df 20404b86 call lpm_set_mult 
+43e0 20404a7e call supervision_update 
+43e1 202143e7 branch slave_disconnect ,positive 
+43e2 204041a3 call check_disconnect_timeout 
+43e3 243443e7 nbranch slave_disconnect ,user 
+43e4 204046ef call check_attempt 
+43e5 243a43cf nbranch slave_loop ,blank 
+43e6 20600000 rtn 
+
+slave_disconnect:
+43e7 449fc007 bpatch patch07_7 ,mem_patch07 
+43e8 70014f00 jam 0 ,mem_tester_emulate 
+43e9 70017d00 jam 0 ,mem_debug_config 
+43ea 20404459 call quit_connection 
+43eb 793f8011 set0 mark_testmode ,mark 
+43ec 20407d8c call test_enable_white 
+43ed 6fe20030 fetch 1 ,mem_state 
+43ee 20600000 rtn 
+
+role_switch_slave:
+43ef 44a04008 bpatch patch08_0 ,mem_patch08 
+43f0 204041c5 call role_switch_check 
+43f1 24740000 nrtn user 
+43f2 18820400 copy am_addr ,temp 
+43f3 20404a6e call get_free_amaddr 
+43f4 67e2017f store 1 ,mem_fhs_am_addr 
+43f5 18420800 copy temp ,am_addr 
+43f6 70001120 jam param_newconnto ,mem_newconnto_counter 
+
+roles_sendfhs_loop:
+43f7 44a0c008 bpatch patch08_1 ,mem_patch08 
+43f8 20404a4e call rf_setup_time_master_slot 
+43f9 18000202 force type_fhs ,type 
+43fa 2040474b call slave_send_access 
+43fb 1c427e00 deposit clkn_bt 
+43fc 67e8015f store 4 ,mem_clkn_bt 
+43fd 2040475e call transmit_packet 
+43fe 20404a4c call rf_setup_time_slave_slot 
+43ff 7837fc00 enable user3 
+4400 204044f2 call slave_receive_access 
+4401 202c4409 branch roles_got_fhs_reply ,sync 
+4402 204048f5 call shutdown_radio 
+4403 20404451 call new_conn_timeout 
+4404 243a43f7 nbranch roles_sendfhs_loop ,blank 
+4405 c6820000 rtnmark0 mark_accept_switch 
+4406 70007c34 jam lmp_slot_offset ,mem_lmo_opcode2 
+4407 79200003 set1 mark_switch_initiated ,mark 
+4408 20600000 rtn 
+
+roles_got_fhs_reply:
+4409 78387c00 enable clknt 
+440a 20404431 call prepare_newconn 
+440b 204048a0 call afh_clear 
+
+roles_newconn_loop:
+440c 44a14008 bpatch patch08_2 ,mem_patch08 
+440d 204042ee call master_newconn_once 
+440e 202c4415 branch roles_newconn_responded ,sync 
+440f 20404451 call new_conn_timeout 
+4410 243a440c nbranch roles_newconn_loop ,blank 
+4411 78587c00 disable clknt 
+4412 1d027e00 deposit clke_bt 
+4413 67e840ca store 4 ,mem_next_btclk 
+4414 20600000 rtn 
+
+roles_newconn_responded:
+4415 7834fc00 enable master 
+4416 c582441b bmark0 mark_accept_switch ,roles_newconn_nolmp 
+4417 793f8004 set0 mark_accept_switch ,mark 
+4418 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+4419 70007d33 jam lmp_host_connection_req ,mem_lmi_opcode2 
+441a 204066da call tid_set_reply 
+
+roles_newconn_nolmp:
+441b 18827e00 deposit am_addr 
+441c 67e20077 store 1 ,mem_amaddr 
+441d 18007e00 force 0 ,pdata 
+441e 67ec0038 store 6 ,mem_clk_offset 
+441f 6fe20031 fetch 1 ,mem_mode 
+4420 79207e01 set1 mode_master ,pdata 
+4421 67e20031 store 1 ,mem_mode 
+4422 20404a87 call supervision_flush 
+4423 7854fc00 disable master 
+4424 78347c00 enable user 
+4425 20600000 rtn 
+
+init_rx_packet_flags:
+4426 44a1c008 bpatch patch08_3 ,mem_patch08 
+4427 7856fc00 disable match 
+4428 793f8005 set0 mark_loopback ,mark 
+4429 793f800a set0 mark_am_addr_broadcast ,mark 
+442a 793f8010 set0 mark_longpacket ,mark 
+442b 793f800f set0 mark_old_packet ,mark 
+442c 6fe20047 fetch 1 ,mem_arq 
+442d 793ffe05 set0 arqnx ,pdata 
+442e 79207e04 set1 flowx ,pdata 
+442f 67e20047 store 1 ,mem_arq 
+4430 20600000 rtn 
+
+prepare_newconn:
+4431 44a24008 bpatch patch08_4 ,mem_patch08 
+4432 70001120 jam param_newconnto ,mem_newconnto_counter 
+4433 70004750 jam param_newconn_arq ,mem_arq 
+4434 6fe440bf fetch 2 ,mem_rx_window_init 
+4435 67e4003e store 2 ,mem_rx_window 
+4436 1c427e00 deposit clkn_bt 
+4437 67e840ca store 4 ,mem_next_btclk 
+4438 20780000 rtn clknt 
+4439 1d027e00 deposit clke_bt 
+443a 67e840ca store 4 ,mem_next_btclk 
+443b 20600000 rtn 
+
+newconn_init:
+443c 44a2c008 bpatch patch08_5 ,mem_patch08 
+443d 204060e5 call init_lmp_reinit 
+443e 20404455 call new_conn_handle 
+443f 67e20046 store 1 ,mem_conn_handle 
+4440 58000000 setarg 0 
+4441 67e40259 store 2 ,mem_l2cap_rxbuff1_len 
+4442 58001c80 setarg param_supervision_to 
+4443 67e40051 store 2 ,mem_supervision_to 
+4444 6fe20030 fetch 1 ,mem_state 
+4445 79207e00 set1 state_inconn ,pdata 
+4446 67e20030 store 1 ,mem_state 
+4447 70004b00 jam 0 ,mem_op 
+4448 70004c00 jam 0 ,mem_state_map 
+4449 7000a000 jam 0 ,mem_lpm_current_mult 
+444a 20204a87 branch supervision_flush 
+
+clear_linkkey:
+444b 44a34008 bpatch patch08_6 ,mem_patch08 
+444c 18007e00 force 0 ,pdata 
+444d 67f041bf store 8 ,mem_link_key 
+444e e7f00005 istore 8 ,contw 
+444f 204041c1 call clear_linkstate 
+4450 20204250 branch context_traverse_linkkey 
+
+new_conn_timeout:
+4451 6fe20011 fetch 1 ,mem_newconnto_counter 
+4452 1fe0ffff increase -1 ,pdata 
+4453 67e20011 store 1 ,mem_newconnto_counter 
+4454 20600000 rtn 
+
+new_conn_handle:
+4455 6fe240cf fetch 1 ,mem_handle_num 
+4456 1fe0fe01 increase 1 ,pdata 
+4457 67e240cf store 1 ,mem_handle_num 
+4458 20600000 rtn 
+
+quit_connection:
+4459 44a3c008 bpatch patch08_7 ,mem_patch08 
+445a 6fe241cf fetch 1 ,mem_hci_cmd 
+445b c001c45e beq hci_cmd_remote_name_req ,quit_connection_name 
+445c 6fe20048 fetch 1 ,mem_lmp_to_send 
+445d c080c462 bne lmp_name_req ,quit_connection_cont 
+
+quit_connection_name:
+445e 204050ec call cmd_check_plap 
+445f 2422c462 nbranch quit_connection_cont ,zero 
+4460 204041a0 call master_name_error 
+4461 7041cf00 jam 0 ,mem_hci_cmd 
+
+quit_connection_cont:
+4462 44a44009 bpatch patch09_0 ,mem_patch09 
+4463 20404d3a call app_disconn_reason_collect_bt 
+4464 204046e5 call sniff_exit 
+4465 700a9502 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+4466 20407bab call ui_ipc_send_event 
+4467 204060d8 call init_lmp_work 
+4468 20405145 call l2cap_init_work 
+4469 20407432 call sp_initialize 
+446a 6fe20030 fetch 1 ,mem_state 
+446b 793ffe00 set0 state_inconn 
+446c 67e20030 store 1 ,mem_state 
+446d 70465100 jam 0 ,memui_reconnect_mode 
+446e 6fe2004c fetch 1 ,mem_state_map 
+446f 2fe18000 compare 0x0 ,pdata ,0xc0 
+4470 2020c472 branch quit_connection_not_clear_mark ,true 
+4471 793f8001 set0 mark_rxbuf_inuse ,mark 
+
+quit_connection_not_clear_mark:
+4472 6fe20047 fetch 1 ,mem_arq 
+4473 c301c474 bbit0 wack ,quit_connection_not_clear_tx 
+
+quit_connection_not_clear_tx:
+4474 6fe2004b fetch 1 ,mem_op 
+4475 c4030000 rtnbit0 op_txl2cap 
+4476 793f8002 set0 mark_tx_l2cap ,mark 
+4477 20600000 rtn 
+
+slave_newconn_once:
+4478 44a4c009 bpatch patch09_1 ,mem_patch09 
+4479 6fe20172 fetch 1 ,extm_newconn_am_addr 
+447a 207a0000 rtn blank 
+447b 1fe20800 icopy am_addr 
+447c 20404510 call slave_conn_recv_packet 
+447d 24768000 nrtn match 
+447e 18000200 force type_null ,type 
+447f 20404753 call slave_conn_send_packet 
+4480 18827e00 deposit am_addr 
+4481 67e20077 store 1 ,mem_amaddr 
+4482 18007e00 force 0 ,pdata 
+4483 67e20172 store 1 ,extm_newconn_am_addr 
+4484 20600000 rtn 
+
+prepare_tx:
+4485 44a54009 bpatch patch09_2 ,mem_patch09 
+4486 6fe20030 fetch 1 ,mem_state 
+4487 c3014492 bbit0 state_insco ,prepare_tx_not_sco 
+4488 18000207 force type_hv3 ,type 
+4489 c583c491 bmark0 mark_esco ,prepare_tx_not_esco 
+448a 20404721 call check_esco_amaddr 
+448b 2420c492 nbranch prepare_tx_not_sco ,true 
+448c 20374492 branch prepare_tx_not_sco ,attempt 
+448d 204044bd call set_wait_ack 
+448e 58000002 setarg 2 
+448f 67e440c8 store 2 ,mem_retransmission_cnt 
+4490 20600000 rtn 
+
+prepare_tx_not_esco:
+4491 24770000 nrtn attempt 
+
+prepare_tx_not_sco:
+4492 44a5c009 bpatch patch09_3 ,mem_patch09 
+4493 2040423f call context_check_all_wack 
+4494 2422c4a3 nbranch prepare_tx_no_retransmit ,zero 
+4495 6fe20047 fetch 1 ,mem_arq 
+4496 c301c4ac bbit0 wack ,prepare_tx_pollnull 
+
+prepare_tx_retransmit:
+4497 c502c4b0 bmark1 mark_loopback ,prepare_tx_loopback 
+4498 6fe2017d fetch 1 ,mem_debug_config 
+4499 c28344b6 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+449a 6fe440c8 fetch 2 ,mem_retransmission_cnt 
+449b 1fe0ffff increase -1 ,pdata 
+449c 67e440c8 store 2 ,mem_retransmission_cnt 
+449d 203a44a1 branch prepare_tx_nomore_retransmit ,blank 
+449e 6fe240c5 fetch 1 ,mem_last_type 
+449f 98000200 iforce type 
+44a0 20600000 rtn 
+
+prepare_tx_nomore_retransmit:
+44a1 44a64009 bpatch patch09_4 ,mem_patch09 
+44a2 20404683 call clear_got_tx 
+
+prepare_tx_no_retransmit:
+44a3 20404721 call check_esco_amaddr 
+44a4 2020c4ac branch prepare_tx_pollnull ,true 
+44a5 204063ec call send_lmp 
+44a6 203444ba branch prepare_tx_sendlmp ,user 
+44a7 6fe2004b fetch 1 ,mem_op 
+44a8 c28344bc bbit1 op_txl2cap ,prepare_tx_sendl2cap 
+44a9 c502c4b0 bmark1 mark_loopback ,prepare_tx_loopback 
+44aa 6fe2017d fetch 1 ,mem_debug_config 
+44ab c28344b6 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+
+prepare_tx_pollnull:
+44ac 18000201 force type_poll ,type 
+44ad 20748000 rtn master 
+44ae 18000200 force type_null ,type 
+44af 20600000 rtn 
+
+prepare_tx_loopback:
+44b0 44a6c009 bpatch patch09_5 ,mem_patch09 
+44b1 6fe20019 fetch 1 ,mem_rx_type 
+44b2 98000200 iforce type 
+44b3 c1808000 rtnne 1 
+44b4 18000200 force type_null ,type 
+44b5 20600000 rtn 
+
+prepare_tx_txpat:
+44b6 6fe20156 fetch 1 ,test_mode_packet_type 
+44b7 1fe1020f and pdata ,0xf ,type 
+44b8 79200005 set1 mark_loopback ,mark 
+44b9 20600000 rtn 
+
+prepare_tx_sendlmp:
+44ba 18000213 force type_lmp ,type 
+44bb 202044bd branch set_wait_ack 
+
+prepare_tx_sendl2cap:
+44bc 204044c6 call tx_l2cap_type 
+
+set_wait_ack:
+44bd 44a74009 bpatch patch09_6 ,mem_patch09 
+44be 68420047 fetcht 1 ,mem_arq 
+44bf 79200403 set1 wack ,temp 
+44c0 60420047 storet 1 ,mem_arq 
+44c1 18227e00 deposit type 
+44c2 67e240c5 store 1 ,mem_last_type 
+44c3 5800ffff setarg 0xffff 
+44c4 67e440c8 store 2 ,mem_retransmission_cnt 
+44c5 20600000 rtn 
+
+tx_l2cap_type:
+44c6 44a7c009 bpatch patch09_7 ,mem_patch09 
+44c7 6fe2004c fetch 1 ,mem_state_map 
+44c8 2feffe05 isolate1 smap_edr ,pdata 
+44c9 6fe441dd fetch 2 ,mem_tx_len 
+44ca 2020c4dc branch tx_l2cap_type_edr ,true 
+44cb 18000203 force type_dm1 ,type 
+44cc 1fe67c11 sub pdata ,17 ,null 
+44cd 20610000 rtn positive 
+44ce 18000204 force type_dh1 ,type 
+44cf 1fe67c1b sub pdata ,27 ,null 
+44d0 20610000 rtn positive 
+44d1 1800020a force type_dm3 ,type 
+44d2 1fe67c79 sub pdata ,121 ,null 
+44d3 20610000 rtn positive 
+44d4 1800020b force type_dh3 ,type 
+44d5 1fe67cb7 sub pdata ,183 ,null 
+44d6 20610000 rtn positive 
+44d7 1800020e force type_dm5 ,type 
+44d8 1fe67ce0 sub pdata ,224 ,null 
+44d9 20610000 rtn positive 
+44da 1800020f force type_dh5 ,type 
+44db 20600000 rtn 
+
+tx_l2cap_type_edr:
+44dc 18000203 force type_dm1 ,type 
+44dd 1fe67c11 sub pdata ,17 ,null 
+44de 20610000 rtn positive 
+44df 18000204 force type_dh1 ,type 
+44e0 1fe67c36 sub pdata ,54 ,null 
+44e1 20610000 rtn positive 
+44e2 1800020a force type_dm3 ,type 
+44e3 d840016f arg 367 ,temp 
+44e4 98467c00 isub temp ,null 
+44e5 24610000 nrtn positive 
+44e6 1800020e force type_dm5 ,type 
+44e7 d84002a7 arg 679 ,temp 
+44e8 98467c00 isub temp ,null 
+44e9 24610000 nrtn positive 
+44ea 1800020f force type_dh5 ,type 
+44eb 20600000 rtn 
+
+slave_receive_master_slot:
+44ec 6fe20030 fetch 1 ,mem_state 
+44ed c300c4f1 bbit0 state_insniff ,slave_receive_notsniff 
+44ee 6fe40032 fetch 2 ,mem_tsniff 
+44ef 203a44f1 branch slave_receive_notsniff ,blank 
+44f0 243744f3 nbranch slave_receive_sniff ,attempt 
+
+slave_receive_notsniff:
+44f1 20404a4e call rf_setup_time_master_slot 
+
+slave_receive_access:
+44f2 1d00c201 add clke_bt ,1 ,bt_clk 
+
+slave_receive_sniff:
+44f3 78287c00 enable swfine 
+44f4 6fe4003e fetch 2 ,mem_rx_window 
+44f5 1fe37e00 rshift pdata ,pdata 
+44f6 d8400500 arg param_pll_setup ,temp 
+44f7 9840fe00 iadd temp ,pdata 
+44f8 20404a23 call ahead_window 
+44f9 204048e6 call fetch_extm_bt_adr 
+44fa 18004803 force 0x03 ,freq_mode 
+44fb 204048c8 call rx_radio_freq 
+44fc 20404426 call init_rx_packet_flags 
+44fd 204049f0 call prep_crypt 
+44fe 44a8400a bpatch patch0a_0 ,mem_patch0a 
+44ff 6fe4003e fetch 2 ,mem_rx_window 
+4500 1fe37e00 rshift pdata ,pdata 
+4501 20404a23 call ahead_window 
+4502 204049ea call start_receiver 
+4503 7826fc00 enable decode_fec0 
+4504 6fe4003e fetch 2 ,mem_rx_window 
+4505 d84003bb arg param_clke_cal ,temp 
+4506 9840b600 iadd temp ,stop_watch 
+4507 37c18400 correlate null ,timeout 
+4508 1b420400 copy clke ,temp 
+4509 604c009a storet 6 ,mem_sync_clke 
+450a 7846fc00 disable decode_fec0 
+450b 246c0000 nrtn sync 
+450c dd2003bb arg param_clke_cal ,clke_rt 
+450d 1c225000 copy bt_clk ,clke_bt 
+450e 2035cae6 branch lpm_adjust_clk ,wake 
+450f 20600000 rtn 
+
+slave_conn_recv_packet:
+4510 44a8c00a bpatch patch0a_1 ,mem_patch0a 
+4511 204044ec call slave_receive_master_slot 
+4512 242c48f5 nbranch shutdown_radio ,sync 
+4513 204049ba call save_rssi 
+4514 c588c518 bmark0 mark_testmode ,receive_packet 
+4515 6fe400f4 fetch 2 ,mem_tst_pktcnt_sync 
+4516 1fe0fe01 increase 1 ,pdata 
+4517 67e400f4 store 2 ,mem_tst_pktcnt_sync 
+
+receive_packet:
+4518 1c230400 rshift bt_clk ,temp 
+4519 18419c40 or temp ,0x40 ,white_init 
+
+receive_packet_whitened:
+451a 44a9400a bpatch patch0a_2 ,mem_patch0a 
+451b 7823fc00 enable enable_white 
+451c 78257c00 enable enable_hec 
+451d 7825fc00 enable decode_fec1 
+451e 09800003 parse demod ,bucket ,3 
+451f 198cfe00 rshift8 pwindow ,pdata 
+4520 67e2015b store 1 ,mem_temp_am_addr 
+4521 09800004 parse demod ,bucket ,4 
+4522 08008007 inject bucket ,7 
+4523 19827e00 copy pwindow ,pdata 
+4524 67e20019 store 1 ,mem_rx_type 
+4525 09800003 parse demod ,bucket ,3 
+4526 198cfe00 rshift8 pwindow ,pdata 
+4527 67e2015c store 1 ,mem_temp_arq 
+4528 6fe20019 fetch 1 ,mem_rx_type 
+4529 1fe67c03 sub pdata ,3 ,null 
+452a 2021452f branch receive_packet_noedr ,positive 
+452b c003c52f beq 7 ,receive_packet_noedr 
+452c 6fe2004c fetch 1 ,mem_state_map 
+452d 2feffe05 isolate1 smap_edr ,pdata 
+452e 7920aa01 setflag true ,psk ,radio_ctrl 
+
+receive_packet_noedr:
+452f 44a9c00a bpatch patch0a_3 ,mem_patch0a 
+4530 09800008 parse demod ,bucket ,8 
+4531 7845fc00 disable decode_fec1 
+4532 78457c00 disable enable_hec 
+4533 2023462d branch error_header ,crc_failed 
+4534 c588c538 bmark0 mark_testmode ,receive_packet_amchk 
+4535 6fe400f6 fetch 2 ,mem_tst_pktcnt_hec 
+4536 1fe0fe01 increase 1 ,pdata 
+4537 67e400f6 store 2 ,mem_tst_pktcnt_hec 
+
+receive_packet_amchk:
+4538 44aa400a bpatch patch0a_4 ,mem_patch0a 
+4539 6fe2015b fetch 1 ,mem_temp_am_addr 
+453a 2fe00e00 compare 0 ,pdata ,0x07 
+453b 7920800a setflag true ,mark_am_addr_broadcast ,mark 
+453c 2020c548 branch am_addr_ok ,true 
+453d a8800e00 icompare 0x07 ,am_addr 
+453e 2020c547 branch am_addr_match ,true 
+453f c583c649 bmark0 mark_esco ,end_of_packet 
+4540 684200ae fetcht 1 ,mem_saved_amaddr 
+4541 a8400e00 icompare 0x7 ,temp 
+4542 2420c649 nbranch end_of_packet ,true 
+4543 6fe20047 fetch 1 ,mem_arq 
+4544 793ffe05 set0 arqnx ,pdata 
+4545 79207e04 set1 flowx ,pdata 
+4546 67e20047 store 1 ,mem_arq 
+
+am_addr_match:
+4547 7836fc00 enable match 
+
+am_addr_ok:
+4548 44aac00a bpatch patch0a_5 ,mem_patch0a 
+4549 6fe20019 fetch 1 ,mem_rx_type 
+454a 1fe20200 icopy type 
+454b c5054557 bmark1 mark_am_addr_broadcast ,arqn_bypass 
+454c 6842015c fetcht 1 ,mem_temp_arq 
+454d 6fe20047 fetch 1 ,mem_arq 
+454e 793ffe00 set0 flow ,pdata 
+454f 284ffe00 isolate1 flow ,temp 
+4550 7920fe00 setflag true ,flow ,pdata 
+4551 284ffe01 isolate1 arqn ,temp 
+4552 7920fe01 setflag true ,arqn ,pdata 
+4553 67e20047 store 1 ,mem_arq 
+4554 284c0001 isolate0 arqn ,temp 
+4555 2020c557 branch arqn_bypass ,true 
+4556 20404683 call clear_got_tx 
+
+arqn_bypass:
+4557 44ab400a bpatch patch0a_6 ,mem_patch0a 
+4558 d8400000 arg 0 ,temp 
+4559 20404a1b call reserve_slot 
+455a 18217e0f and type ,0xf ,pdata 
+455b c000c583 beq type_poll ,process_poll 
+455c c0004649 beq type_null ,end_of_packet 
+455d c0014655 beq type_fhs ,process_fhs 
+455e 6842015c fetcht 1 ,mem_temp_arq 
+455f 6fe20047 fetch 1 ,mem_arq 
+4560 a8400800 icompare 0x04 ,temp 
+4561 2420c565 nbranch rx_type_dispatch ,true 
+4562 c5854564 bmark0 mark_am_addr_broadcast ,failed_seqn 
+4563 c303c565 bbit0 bcast1 ,rx_type_dispatch 
+
+failed_seqn:
+4564 7920000f set1 mark_old_packet ,mark 
+
+rx_type_dispatch:
+4565 44abc00a bpatch patch0a_7 ,mem_patch0a 
+4566 18227e00 deposit type 
+4567 c001c585 beq type_dm1 ,process_dm1 
+4568 c0024589 beq type_dh1 ,process_dh1 
+4569 c003c574 beq type_hv3 ,process_hev 
+456a c0044588 beq type_3dh1 ,process_3dh1 
+456b d8400004 arg 4 ,temp 
+456c 20404a1b call reserve_slot 
+456d c0054584 beq type_dm3 ,process_dm3 
+456e c005c587 beq type_dh3 ,process_dh3 
+456f d8400008 arg 8 ,temp 
+4570 20404a1b call reserve_slot 
+4571 c0074584 beq type_dm5 ,process_dm5 
+4572 c007c587 beq type_dh5 ,process_dh5 
+4573 20600000 rtn 
+
+process_hev:
+4574 44ac400b bpatch patch0b_0 ,mem_patch0b 
+4575 7826fc00 enable decode_fec0 
+4576 7824fc00 enable enable_crc 
+4577 78277c00 enable encrypt 
+4578 d8a000cf arg mem_sco_ibuf ,contw 
+4579 1800721e force 30 ,loopcnt 
+
+process_hev_loop:
+457a 09800008 parse demod ,bucket ,8 
+457b 19897e00 rshift3 pwindow ,pdata 
+457c e7e20005 istore 1 ,contw 
+457d c200457a loop process_hev_loop 
+457e c583c649 bmark0 mark_esco ,end_of_packet 
+457f 09800010 parse demod ,bucket ,16 
+4580 7d230008 nsetflag crc_failed ,mark_esco_rxok ,mark 
+4581 20234639 branch error_payload ,crc_failed 
+4582 2020461c branch ack_payload 
+
+process_poll:
+4583 20204649 branch end_of_packet 
+
+process_dm3:
+
+process_dm5:
+4584 79200010 set1 mark_longpacket ,mark 
+
+process_dm1:
+4585 78267c00 enable decode_fec2 
+4586 2020458a branch process_dmh 
+
+process_dh3:
+
+process_dh5:
+4587 79200010 set1 mark_longpacket ,mark 
+
+process_3dh1:
+4588 79202a02 set1 psk3m ,radio_ctrl 
+
+process_dh1:
+4589 7826fc00 enable decode_fec0 
+
+process_dmh:
+458a 44acc00b bpatch patch0b_1 ,mem_patch0b 
+458b c500c649 bmark1 mark_rxbuf_inuse ,end_of_packet 
+458c 2aac0001 isolate0 psk ,radio_ctrl 
+458d 2020c596 branch process_dmh_noedr ,true 
+458e 7843fc00 disable enable_white 
+458f 7826fc00 enable decode_fec0 
+4590 78467c00 disable decode_fec2 
+4591 1c409602 add clkn_bt ,2 ,timeup 
+4592 34530400 correlate clkn_bt ,meet 
+4593 242c4639 nbranch error_payload ,sync 
+4594 79200010 set1 mark_longpacket ,mark 
+4595 7823fc00 enable enable_white 
+
+process_dmh_noedr:
+4596 44ad400b bpatch patch0b_2 ,mem_patch0b 
+4597 78277c00 enable encrypt 
+4598 7824fc00 enable enable_crc 
+4599 09800003 parse demod ,bucket ,3 
+459a 198cfe00 rshift8 pwindow ,pdata 
+459b 67e2017e store 1 ,mem_lch_code 
+459c 09800005 parse demod ,bucket ,5 
+459d c50845a1 bmark1 mark_longpacket ,process_dmh_long 
+459e 19897200 rshift3 pwindow ,loopcnt 
+459f 1f297200 rshift3 loopcnt ,loopcnt 
+45a0 202045a4 branch process_dmh_common 
+
+process_dmh_long:
+45a1 09800005 parse demod ,bucket ,5 
+45a2 19837200 rshift pwindow ,loopcnt 
+45a3 09800003 parse demod ,bucket ,3 
+
+process_dmh_common:
+45a4 44adc00b bpatch patch0b_3 ,mem_patch0b 
+45a5 1f227e00 deposit loopcnt 
+45a6 67e4015d store 2 ,mem_len 
+45a7 203a45e4 branch process_dmh_data_end ,blank 
+45a8 9ea67c00 isub mask3ff ,null 
+45a9 20214639 branch error_payload ,positive 
+45aa 44ae400b bpatch patch0b_4 ,mem_patch0b 
+45ab 793f8000 set0 mark_fhs_eir ,mark 
+45ac 6fe2017e fetch 1 ,mem_lch_code 
+45ad 1fe17e03 and_into 0x03 ,pdata 
+45ae d8a0054d arg mem_rxbuf ,contw 
+45af c001c5b6 beq llid_lmp ,process_lmp 
+45b0 c508c5e0 bmark1 mark_testmode ,process_dmh_data 
+45b1 6fe2017e fetch 1 ,mem_lch_code 
+45b2 1fe17e03 and_into 0x03 ,pdata 
+45b3 c00145bb beq llid_l2cap_start ,process_dmh_data_l2cap_start_pkt 
+45b4 c000c5cf beq llid_l2cap_cont ,process_dmh_data_l2cap_continue_pkt 
+45b5 20204639 branch error_payload 
+
+process_lmp:
+45b6 6fe4015d fetch 2 ,mem_len 
+45b7 1fe67c70 sub pdata ,0x70 ,null 
+45b8 24214639 nbranch error_payload ,positive 
+45b9 c507c61c bmark1 mark_old_packet ,ack_payload 
+45ba 202045e0 branch process_dmh_data 
+
+process_dmh_data_l2cap_start_pkt:
+45bb 44aec00b bpatch patch0b_5 ,mem_patch0b 
+45bc c507c61c bmark1 mark_old_packet ,ack_payload 
+45bd 6fe4015d fetch 2 ,mem_len 
+45be d84002e0 arg 0x2e0 ,temp 
+45bf 98467c00 isub temp ,null 
+45c0 20214639 branch error_payload ,positive 
+45c1 6fe2025f fetch 1 ,mem_l2cap_rxbuff_inuse 
+45c2 c30045c5 bbit0 l2cap_inuse_buff1 ,process_dmh_data_into_buff1 
+45c3 c300c5ca bbit0 l2cap_inuse_buff2 ,process_dmh_data_into_buff2 
+45c4 20204649 branch end_of_packet 
+
+process_dmh_data_into_buff1:
+45c5 70025d01 jam 1 ,mem_l2cap_rxbuff_new 
+45c6 6fe40259 fetch 2 ,mem_l2cap_rxbuff1_len 
+45c7 c0804649 bne 0 ,end_of_packet 
+45c8 d8a01000 arg mem_l2cap_rxbuff1 ,contw 
+45c9 202045e0 branch process_dmh_data 
+
+process_dmh_data_into_buff2:
+45ca 70025d02 jam 2 ,mem_l2cap_rxbuff_new 
+45cb 6fe4025b fetch 2 ,mem_l2cap_rxbuff2_len 
+45cc c0804649 bne 0 ,end_of_packet 
+45cd d8a01400 arg mem_l2cap_rxbuff2 ,contw 
+45ce 202045e0 branch process_dmh_data 
+
+process_dmh_data_l2cap_continue_pkt:
+45cf 44af400b bpatch patch0b_6 ,mem_patch0b 
+45d0 c507c61c bmark1 mark_old_packet ,ack_payload 
+45d1 6fe4015d fetch 2 ,mem_len 
+45d2 d84002e0 arg 0x2e0 ,temp 
+45d3 98467c00 isub temp ,null 
+45d4 20214639 branch error_payload ,positive 
+45d5 6fe2025d fetch 1 ,mem_l2cap_rxbuff_new 
+45d6 c000c5d9 beq 1 ,process_dmh_data_l2cap_continue_pkt1 
+45d7 c00145dd beq 2 ,process_dmh_data_l2cap_continue_pkt2 
+45d8 20204649 branch end_of_packet 
+
+process_dmh_data_l2cap_continue_pkt1:
+45d9 d8a01000 arg mem_l2cap_rxbuff1 ,contw 
+45da 6fe40259 fetch 2 ,mem_l2cap_rxbuff1_len 
+45db 98a08a00 iadd contw ,contw 
+45dc 202045e0 branch process_dmh_data 
+
+process_dmh_data_l2cap_continue_pkt2:
+45dd d8a01400 arg mem_l2cap_rxbuff2 ,contw 
+45de 6fe4025b fetch 2 ,mem_l2cap_rxbuff2_len 
+45df 98a08a00 iadd contw ,contw 
+
+process_dmh_data:
+45e0 09800008 parse demod ,bucket ,8 
+45e1 19897e00 rshift3 pwindow ,pdata 
+45e2 e7e20005 istore 1 ,contw 
+45e3 c20045e0 loop process_dmh_data 
+
+process_dmh_data_end:
+45e4 44afc00b bpatch patch0b_7 ,mem_patch0b 
+45e5 09800010 parse demod ,bucket ,16 
+45e6 20234633 branch error_payload_crc ,crc_failed 
+45e7 6fe24335 fetch 1 ,mem_l2cap_flow_ctrl_flag 
+45e8 c000c649 beq l2cap_flow_ctrl_enable ,end_of_packet 
+45e9 c508c609 bmark1 mark_testmode ,process_dmh_cont 
+45ea c507c646 bmark1 mark_old_packet ,redundant_payload 
+45eb 6fe2017e fetch 1 ,mem_lch_code 
+45ec 2fe00603 compare 3 ,pdata ,3 
+45ed 2020c609 branch process_dmh_cont ,true 
+45ee 6fe4015d fetch 2 ,mem_len 
+45ef 203a4609 branch process_dmh_cont ,blank 
+45f0 44b0400c bpatch patch0c_0 ,mem_patch0c 
+45f1 6fe2025d fetch 1 ,mem_l2cap_rxbuff_new 
+45f2 c000c5f5 beq 1 ,process_l2cap_pass_crc_buff1 
+45f3 c00145ff beq 2 ,process_l2cap_pass_crc_buff2 
+45f4 20204a8b branch assert 
+
+process_l2cap_pass_crc_buff1:
+45f5 6fe40259 fetch 2 ,mem_l2cap_rxbuff1_len 
+45f6 6844015d fetcht 2 ,mem_len 
+45f7 9840fe00 iadd temp ,pdata 
+45f8 67e40259 store 2 ,mem_l2cap_rxbuff1_len 
+45f9 c0004a8b beq 0 ,assert 
+45fa 68441000 fetcht 2 ,mem_l2cap_rxbuff1 
+45fb 18408404 increase 4 ,temp 
+45fc 98467c00 isub temp ,null 
+45fd 2042c743 call l2cap_buff1_inuse ,zero 
+45fe 20204609 branch process_dmh_cont 
+
+process_l2cap_pass_crc_buff2:
+45ff 6fe4025b fetch 2 ,mem_l2cap_rxbuff2_len 
+4600 6844015d fetcht 2 ,mem_len 
+4601 9840fe00 iadd temp ,pdata 
+4602 67e4025b store 2 ,mem_l2cap_rxbuff2_len 
+4603 c0004a8b beq 0 ,assert 
+4604 68441400 fetcht 2 ,mem_l2cap_rxbuff2 
+4605 18408404 add temp ,4 ,temp 
+4606 98467c00 isub temp ,null 
+4607 2042c747 call l2cap_buff2_inuse ,zero 
+4608 20204609 branch process_dmh_cont 
+
+process_dmh_cont:
+4609 44b0c00c bpatch patch0c_1 ,mem_patch0c 
+460a 6842004c fetcht 1 ,mem_state_map 
+460b 6fe2017e fetch 1 ,mem_lch_code 
+460c 2fe00603 compare 3 ,pdata ,0x03 
+460d 79208406 setflag true ,smap_rxlmp ,temp 
+460e 7d208407 nsetflag true ,smap_rxl2cap ,temp 
+460f 6042004c storet 1 ,mem_state_map 
+4610 2420c612 nbranch process_dmh_cont_rxbuf_not_use ,true 
+4611 79200001 set1 mark_rxbuf_inuse ,mark 
+
+process_dmh_cont_rxbuf_not_use:
+4612 c588c61c bmark0 mark_testmode ,ack_payload 
+4613 284ffe06 isolate1 smap_rxlmp ,temp 
+4614 2020c61c branch ack_payload ,true 
+4615 6fe400f8 fetch 2 ,mem_tst_pktcnt_crc 
+4616 1fe0fe01 increase 1 ,pdata 
+4617 67e400f8 store 2 ,mem_tst_pktcnt_crc 
+4618 79200005 set1 mark_loopback ,mark 
+4619 793f8407 set0 smap_rxl2cap ,temp 
+461a 793f8001 set0 mark_rxbuf_inuse ,mark 
+461b 6042004c storet 1 ,mem_state_map 
+
+ack_payload:
+461c 44b1400c bpatch patch0c_2 ,mem_patch0c 
+461d 6842015c fetcht 1 ,mem_temp_arq 
+461e 6fe20047 fetch 1 ,mem_arq 
+461f 79207e05 set1 arqnx ,pdata 
+4620 284ffe02 isolate1 seqn ,temp 
+4621 7920fe02 setflag true ,seqn ,pdata 
+4622 280ffe0a isolate1 mark_am_addr_broadcast ,mark 
+4623 7920fe07 setflag true ,bcast1 ,pdata 
+4624 67e20047 store 1 ,mem_arq 
+4625 6fe4015d fetch 2 ,mem_len 
+4626 243a4649 nbranch end_of_packet ,blank 
+4627 6fe2004c fetch 1 ,mem_state_map 
+4628 793ffe07 set0 smap_rxl2cap ,pdata 
+4629 67e2004c store 1 ,mem_state_map 
+462a 6fe2017e fetch 1 ,mem_lch_code 
+462b 2fe00e01 compare 0x01 ,pdata ,0x07 
+462c 20204649 branch end_of_packet 
+
+error_header:
+462d 44b1c00c bpatch patch0c_3 ,mem_patch0c 
+462e 7856fc00 disable match 
+462f 6fe4001a fetch 2 ,mem_rx_hec_err 
+4630 1fe0fe01 increase 1 ,pdata 
+4631 67e4001a store 2 ,mem_rx_hec_err 
+4632 20204649 branch end_of_packet 
+
+error_payload_crc:
+4633 6fe4001c fetch 2 ,mem_rx_crc_err 
+4634 1fe0fe01 increase 1 ,pdata 
+4635 67e4001c store 2 ,mem_rx_crc_err 
+4636 2040463a call discard_pkt 
+4637 c588c639 bmark0 mark_testmode ,error_payload 
+4638 79200005 set1 mark_loopback ,mark 
+
+error_payload:
+4639 20204649 branch end_of_packet 
+
+discard_pkt:
+463a 44b2400c bpatch patch0c_4 ,mem_patch0c 
+463b 6fe2017e fetch 1 ,mem_lch_code 
+463c 2fe00603 compare 3 ,pdata ,0x03 
+463d 2420c642 nbranch discard_pkt_l2cap ,true 
+
+discard_pkt_lmp:
+463e 6842004c fetcht 1 ,mem_state_map 
+463f 793f8406 set0 smap_rxlmp ,temp 
+4640 6042004c storet 1 ,mem_state_map 
+4641 20600000 rtn 
+
+discard_pkt_l2cap:
+4642 6842004c fetcht 1 ,mem_state_map 
+4643 793f8407 set0 smap_rxl2cap ,temp 
+4644 6042004c storet 1 ,mem_state_map 
+4645 20600000 rtn 
+
+redundant_payload:
+4646 6fe20047 fetch 1 ,mem_arq 
+4647 79207e05 set1 arqnx ,pdata 
+4648 67e20047 store 1 ,mem_arq 
+
+end_of_packet:
+4649 44b2c00c bpatch patch0c_5 ,mem_patch0c 
+464a 784efc00 disable encode_fec0 
+464b 784e7c00 disable encode_fec2 
+464c 7846fc00 disable decode_fec0 
+464d 78467c00 disable decode_fec2 
+464e 7844fc00 disable enable_crc 
+464f 78477c00 disable encrypt 
+4650 7843fc00 disable enable_white 
+4651 2030c8f5 branch shutdown_radio ,is_rx 
+4652 37d38200 until null ,tx_clear 
+4653 20000064 nop 100 
+4654 202048f5 branch shutdown_radio 
+
+process_fhs:
+4655 44b3400c bpatch patch0c_6 ,mem_patch0c 
+4656 7824fc00 enable enable_crc 
+4657 78267c00 enable decode_fec2 
+4658 09800048 parse demod ,bucket ,72 
+4659 2feffe3a isolate1 58 ,pdata 
+465a 79208000 setflag true ,mark_fhs_eir ,mark 
+465b 1c020400 copy bt_adr ,temp 
+465c 57e04000 ialigned bt_adr 
+465d 57e03c00 ialigned fhs0 
+465e 782afc00 pulse recalc 
+465f 380bffff setsect 2 ,0xfffff 
+4660 380cffff setsect 3 ,0x0ffff 
+4661 20000020 nop 32 
+4662 29a80000 iverify fhs_parity 
+4663 1d827e00 deposit lap 
+4664 67e60176 store 3 ,extm_lap 
+4665 1da27e00 deposit uap 
+4666 67e20179 store 1 ,extm_uap 
+4667 18424000 copy temp ,bt_adr 
+4668 2020c66a branch fhs_parity_ok ,true 
+4669 20204639 branch error_payload 
+
+fhs_parity_ok:
+466a 44b3c00c bpatch patch0c_7 ,mem_patch0c 
+466b 09800048 parse demod ,bucket ,72 
+466c 57e03e00 ialigned fhs1 
+466d 57e00800 ialigned am_addr 
+466e 57e05c00 ialigned nap 
+466f 57e02400 ialigned regb 
+4670 18007e00 force 0 ,pdata 
+4671 09800010 parse demod ,bucket ,16 
+4672 20234639 branch error_payload ,crc_failed 
+4673 5ffffffc setarg 0x0ffffffc 
+4674 9a417e00 iand regb ,pdata 
+4675 67e80163 store 4 ,mem_clke_bt 
+4676 1ba27e00 deposit fhs_class 
+4677 67e60173 store 3 ,extm_class 
+4678 1b827e00 deposit fhs_misc 
+4679 67e20171 store 1 ,extm_fhs_misc 
+467a 18827e00 deposit am_addr 
+467b 67e20172 store 1 ,extm_newconn_am_addr 
+467c 1dc27e00 deposit nap 
+467d 67e4017a store 2 ,extm_nap 
+467e 1c227e00 deposit bt_clk 
+467f 08008220 inject rxf ,32 
+4680 28201e02 compare type_fhs ,type ,0x0f 
+4681 7920800b setflag true ,mark_fhs_already_good ,mark 
+4682 20204649 branch end_of_packet 
+
+clear_got_tx:
+4683 44b4400d bpatch patch0d_0 ,mem_patch0d 
+4684 6fe20047 fetch 1 ,mem_arq 
+4685 c4018000 rtnbit0 wack 
+4686 793ffe03 set0 wack ,pdata 
+4687 79407e06 setflip seqnx ,pdata 
+4688 67e20047 store 1 ,mem_arq 
+4689 6fe240c5 fetch 1 ,mem_last_type 
+468a c009c698 beq type_lmp ,clear_got_txlmp 
+468b c1038000 rtneq type_hv3 
+468c 6fe2004b fetch 1 ,mem_op 
+468d c4030000 rtnbit0 op_txl2cap ,pdata 
+468e 793ffe06 set0 op_txl2cap ,pdata 
+468f 79207e07 set1 op_pkt_comp ,pdata 
+4690 67e2004b store 1 ,mem_op 
+4691 793f8002 set0 mark_tx_l2cap ,mark 
+4692 6fe44218 fetch 2 ,mem_l2cap_tx_multi_offset 
+4693 247a0000 nrtn blank 
+4694 6fe2004b fetch 1 ,mem_op 
+4695 793ffe07 set0 op_pkt_comp ,pdata 
+4696 67e2004b store 1 ,mem_op 
+4697 20205637 branch l2cap_malloc_free 
+
+clear_got_txlmp:
+4698 44b4c00d bpatch patch0d_1 ,mem_patch0d 
+4699 6fe204b3 fetch 1 ,mem_lmo_header_opcode 
+469a 1fe37e00 rshift pdata ,pdata 
+469b c008c6b4 beq lmp_start_encryption_req ,start_encryption 
+469c c00946bc beq lmp_stop_encryption_req ,stop_encryption 
+469d c00c46e5 beq lmp_unsniff_req ,sniff_exit 
+469e c03fc6a4 beq lmp_escape ,clear_lmp_escape 
+469f c1818000 rtnne lmp_accepted 
+46a0 6fe204b4 fetch 1 ,mem_lmo_payload 
+46a1 c015c6ac beq lmp_sco_link_req ,sco_link_req_by_slave 
+46a2 c008c6a7 beq lmp_start_encryption_req ,clear_send_setup_complete 
+46a3 20600000 rtn 
+
+clear_lmp_escape:
+46a4 6fe204b4 fetch 1 ,mem_lmo_payload 
+46a5 79207e07 set1 7 ,pdata 
+46a6 20600000 rtn 
+
+clear_send_setup_complete:
+46a7 20748000 rtn master 
+46a8 6fe20030 fetch 1 ,mem_state 
+46a9 c3820000 rtnbit1 state_conn_comp 
+46aa 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+46ab 20600000 rtn 
+
+sco_link_req_by_slave:
+46ac 20748000 rtn master 
+46ad 6fe20031 fetch 1 ,mem_mode 
+46ae 2feffe04 isolate1 send_sco_when_slave ,pdata 
+46af 2020c6b1 branch clean_mem_mode ,true 
+46b0 20600000 rtn 
+
+clean_mem_mode:
+46b1 793ffe04 set0 send_sco_when_slave ,pdata 
+46b2 67e20031 store 1 ,mem_mode 
+46b3 20600000 rtn 
+
+start_encryption:
+46b4 44b5400d bpatch patch0d_2 ,mem_patch0d 
+46b5 6fe2004c fetch 1 ,mem_state_map 
+46b6 79207e02 set1 smap_encryption ,pdata 
+46b7 67e2004c store 1 ,mem_state_map 
+46b8 70801101 hjam 1 ,core_encrypt 
+46b9 6fe20030 fetch 1 ,mem_state 
+46ba 2feffe04 isolate1 state_conn_comp ,pdata 
+46bb 20600000 rtn 
+
+stop_encryption:
+46bc 44b5c00d bpatch patch0d_3 ,mem_patch0d 
+46bd 6fe2004c fetch 1 ,mem_state_map 
+46be 793ffe02 set0 smap_encryption ,pdata 
+46bf 67e2004c store 1 ,mem_state_map 
+46c0 70801100 hjam 0 ,core_encrypt 
+46c1 20600000 rtn 
+
+sniff_init:
+46c2 44b6400d bpatch patch0d_4 ,mem_patch0d 
+46c3 1c427e00 copy clkn_bt ,pdata 
+46c4 67e8420b store 4 ,mem_lpm_delay_after_sniff 
+46c5 1c40a203 add clkn_bt ,3 ,rega 
+46c6 2034c6c8 branch sniff_init_master ,master 
+46c7 1d00a203 add clke_bt ,3 ,rega 
+
+sniff_init_master:
+46c8 68440032 fetcht 2 ,mem_tsniff 
+46c9 1a227e00 deposit rega 
+46ca 793ffe1b set0 27 ,pdata 
+46cb 9846fc00 idiv temp 
+46cc 6fe40075 fetch 2 ,mem_dsniff 
+46cd 20407d61 call wait_div_end 
+46ce 18072600 remainder regc 
+46cf 9a667e00 isub regc ,pdata 
+46d0 202146d2 branch sniff_init_nowrap ,positive 
+46d1 9840fe00 iadd temp ,pdata 
+
+sniff_init_nowrap:
+46d2 9a20fe00 iadd rega ,pdata 
+46d3 67e80034 store 4 ,mem_sniff_anchor 
+46d4 70452d00 jam switch_flag_init ,mem_switch_flag 
+46d5 6fe20030 fetch 1 ,mem_state 
+46d6 79207e01 set1 state_insniff ,pdata 
+46d7 67e20030 store 1 ,mem_state 
+46d8 6fe20073 fetch 1 ,mem_sniff_attempt 
+46d9 67e2008a store 1 ,mem_current_sniff_attempt 
+46da 58000000 setarg 0 
+46db 67e6416a store 3 ,mem_sniff_rcv 
+46dc 67e6416d store 3 ,mem_sniff_lost 
+46dd 67e2415a store 1 ,mem_sniff_unint_lost 
+46de 700a950b jam bt_evt_enter_sniff ,mem_fifo_temp 
+46df 20407bab call ui_ipc_send_event 
+46e0 6fe440c1 fetch 2 ,mem_rx_window_sniff 
+46e1 67e4003e store 2 ,mem_rx_window 
+46e2 24748000 nrtn master 
+46e3 18808fff add am_addr ,-1 ,queue 
+46e4 20600000 rtn 
+
+sniff_exit:
+46e5 44b6c00d bpatch patch0d_5 ,mem_patch0d 
+46e6 6fe20030 fetch 1 ,mem_state 
+46e7 c4008000 rtnbit0 state_insniff 
+46e8 793ffe01 set0 state_insniff ,pdata 
+46e9 67e20030 store 1 ,mem_state 
+46ea 6fe440bf fetch 2 ,mem_rx_window_init 
+46eb 67e4003e store 2 ,mem_rx_window 
+46ec 7855fc00 disable wake 
+46ed 700a950c jam bt_evt_exit_sniff ,mem_fifo_temp 
+46ee 20207bab branch ui_ipc_send_event 
+
+check_attempt:
+46ef 44b7400d bpatch patch0d_6 ,mem_patch0d 
+46f0 78377c00 enable attempt 
+46f1 6fe20030 fetch 1 ,mem_state 
+46f2 c280c6fc bbit1 state_insniff ,check_attempt_sniff 
+46f3 c6088000 rtnmark1 mark_testmode 
+46f4 6fe20047 fetch 1 ,mem_arq 
+46f5 c3818000 rtnbit1 wack 
+46f6 6fe20048 fetch 1 ,mem_lmp_to_send 
+46f7 247a0000 nrtn blank 
+46f8 6fe2004b fetch 1 ,mem_op 
+46f9 c3830000 rtnbit1 op_txl2cap 
+
+check_attempt_nomore:
+46fa 18007e00 force 0 ,pdata 
+46fb 20600000 rtn 
+
+check_attempt_sniff:
+46fc c301470b bbit0 state_insco ,check_attempt_not_sco 
+46fd 6fe2008a fetch 1 ,mem_current_sniff_attempt 
+46fe c0014702 beq 2 ,check_attempt_sniff_restore_sco 
+46ff 6fe20047 fetch 1 ,mem_arq 
+4700 c281c714 bbit1 wack ,check_attempt_notimeout 
+4701 c5844714 bmark0 mark_esco_rxok ,check_attempt_notimeout 
+
+check_attempt_sniff_restore_sco:
+4702 2434c714 nbranch check_attempt_notimeout ,master 
+4703 6fe20048 fetch 1 ,mem_lmp_to_send 
+4704 243a4714 nbranch check_attempt_notimeout ,blank 
+
+check_attempt_sco_master:
+4705 6fe200ed fetch 1 ,mem_sco_poll 
+4706 1fe0ffff increase -1 ,pdata 
+4707 67e200ed store 1 ,mem_sco_poll 
+4708 243a46fa nbranch check_attempt_nomore ,blank 
+4709 7000ed10 jam param_sco_poll ,mem_sco_poll 
+470a 20204714 branch check_attempt_notimeout 
+
+check_attempt_not_sco:
+470b 6fe2008a fetch 1 ,mem_current_sniff_attempt 
+470c c080c714 bne 1 ,check_attempt_notimeout 
+470d 6fe2008b fetch 1 ,mem_current_sniff_timeout 
+470e 203a4714 branch check_attempt_notimeout ,blank 
+470f 1fe0ffff increase -1 ,pdata 
+4710 67e2008b store 1 ,mem_current_sniff_timeout 
+4711 6fe20047 fetch 1 ,mem_arq 
+4712 c3818000 rtnbit1 wack 
+4713 24768000 nrtn match 
+
+check_attempt_notimeout:
+4714 6fe2008a fetch 1 ,mem_current_sniff_attempt 
+4715 1fe0ffff increase -1 ,pdata 
+4716 67e2008a store 1 ,mem_current_sniff_attempt 
+4717 20600000 rtn 
+
+sniff_check_window:
+4718 44b7c00d bpatch patch0d_7 ,mem_patch0d 
+4719 78487c00 disable swfine 
+471a 18423600 copy temp ,stop_watch 
+471b 2040425c call context_search_sniff_window 
+471c 78547c00 disable user 
+471d 24628000 nrtn zero 
+471e 18003600 force 0 ,stop_watch 
+471f 78347c00 enable user 
+4720 20600000 rtn 
+
+check_esco_amaddr:
+4721 6fe24159 fetch 1 ,mem_esco_addr 
+4722 a881fe00 icompare 0xff ,am_addr 
+4723 20600000 rtn 
+
+parse_l2cap:
+4724 44b8400e bpatch patch0e_0 ,mem_patch0e 
+4725 793f8001 set0 mark_rxbuf_inuse ,mark 
+
+parse_l2cap_cont:
+4726 70026600 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+4727 6fe2025f fetch 1 ,mem_l2cap_rxbuff_inuse 
+4728 207a0000 rtn blank 
+4729 2feffe00 isolate1 l2cap_inuse_buff1 ,pdata 
+472a d8c01000 arg mem_l2cap_rxbuff1 ,contr 
+472b 2040d153 call process_rx_l2cap_pkt ,true 
+472c 44b8c00e bpatch patch0e_1 ,mem_patch0e 
+472d 6fe20266 fetch 1 ,mem_l2cap_rx_done 
+472e c000c737 beq l2cap_rx_done ,parse_l2cap_release_buff1 
+472f 70026600 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+4730 6fe2025f fetch 1 ,mem_l2cap_rxbuff_inuse 
+4731 c4008000 rtnbit0 l2cap_inuse_buff2 
+4732 d8c01400 arg mem_l2cap_rxbuff2 ,contr 
+4733 20405153 call process_rx_l2cap_pkt 
+4734 6fe20266 fetch 1 ,mem_l2cap_rx_done 
+4735 c000c73d beq l2cap_rx_done ,parse_l2cap_release_buff2 
+4736 20600000 rtn 
+
+parse_l2cap_release_buff1:
+4737 6fe2025f fetch 1 ,mem_l2cap_rxbuff_inuse 
+4738 793ffe00 set0 l2cap_inuse_buff1 ,pdata 
+4739 67e2025f store 1 ,mem_l2cap_rxbuff_inuse 
+473a 58000000 setarg 0 
+473b 67e40259 store 2 ,mem_l2cap_rxbuff1_len 
+473c 20600000 rtn 
+
+parse_l2cap_release_buff2:
+473d 6fe2025f fetch 1 ,mem_l2cap_rxbuff_inuse 
+473e 793ffe01 set0 l2cap_inuse_buff2 ,pdata 
+473f 67e2025f store 1 ,mem_l2cap_rxbuff_inuse 
+4740 58000000 setarg 0 
+4741 67e4025b store 2 ,mem_l2cap_rxbuff2_len 
+4742 20600000 rtn 
+
+l2cap_buff1_inuse:
+4743 6fe2025f fetch 1 ,mem_l2cap_rxbuff_inuse 
+4744 79207e00 set1 l2cap_inuse_buff1 ,pdata 
+4745 67e2025f store 1 ,mem_l2cap_rxbuff_inuse 
+4746 20600000 rtn 
+
+l2cap_buff2_inuse:
+4747 6fe2025f fetch 1 ,mem_l2cap_rxbuff_inuse 
+4748 79207e01 set1 l2cap_inuse_buff2 ,pdata 
+4749 67e2025f store 1 ,mem_l2cap_rxbuff_inuse 
+474a 20600000 rtn 
+
+slave_send_access:
+474b 44b9400e bpatch patch0e_2 ,mem_patch0e 
+474c 1d00c201 add clke_bt ,1 ,bt_clk 
+474d 204048e6 call fetch_extm_bt_adr 
+474e 18004803 force 0x03 ,freq_mode 
+474f 204048ce call tx_radio_freq 
+4750 20404a50 call start_transmitter 
+4751 20404a5e call start_tx_external 
+4752 20204a63 branch send_access_word 
+
+slave_conn_send_packet:
+4753 44b9c00e bpatch patch0e_3 ,mem_patch0e 
+4754 20404a4c call rf_setup_time_slave_slot 
+4755 1d027e00 deposit clke_bt 
+4756 684840ca fetcht 4 ,mem_next_btclk 
+4757 98467e00 isub temp ,pdata 
+4758 c1808000 rtnne 1 
+4759 28203e00 compare type_null ,type ,0x1f 
+475a 2420c75d nbranch slave_conn_send_access ,true 
+475b 6fe20019 fetch 1 ,mem_rx_type 
+475c 207a0000 rtn blank 
+
+slave_conn_send_access:
+475d 2040474b call slave_send_access 
+
+transmit_packet:
+475e 28203e10 compare type_id ,type ,0x1f 
+475f 2020c649 branch end_of_packet ,true 
+4760 1c230400 rshift bt_clk ,temp 
+4761 18419c40 or temp ,0x40 ,white_init 
+
+transmit_packet_whitened:
+4762 44ba400e bpatch patch0e_4 ,mem_patch0e 
+4763 7823fc00 enable enable_white 
+4764 78257c00 enable enable_hec 
+4765 782dfc00 enable encode_fec1 
+4766 793f8010 set0 mark_longpacket ,mark 
+4767 18827e00 deposit am_addr 
+4768 08008603 inject mod ,3 
+4769 18227e00 deposit type 
+476a 08008604 inject mod ,4 
+476b 6fe20047 fetch 1 ,mem_arq 
+476c 08008004 inject bucket ,4 
+476d 08008603 inject mod ,3 
+476e 78247c00 enable enable_parity 
+476f 08008608 inject mod ,8 
+4770 784dfc00 disable encode_fec1 
+4771 78447c00 disable enable_parity 
+4772 78457c00 disable enable_hec 
+4773 793faa02 set0 psk3m ,radio_ctrl 
+4774 d8400000 arg 0 ,temp 
+4775 20404a1b call reserve_slot 
+4776 44bac00e bpatch patch0e_5 ,mem_patch0e 
+4777 18217e1f and type ,0x1f ,pdata 
+4778 c009c7b0 beq type_lmp ,transmit_lmp 
+4779 c0004649 beq type_null ,end_of_packet 
+477a c000c649 beq type_poll ,end_of_packet 
+477b c0014793 beq type_fhs ,transmit_fhs 
+477c c001c7c1 beq type_dm1 ,transmit_dm1 
+477d c00247c7 beq type_dh1 ,transmit_dh1 
+477e c003c788 beq type_hv3 ,transmit_hev 
+477f c00447c6 beq type_3dh1 ,transmit_3dh1 
+4780 d8400004 arg 4 ,temp 
+4781 20404a1b call reserve_slot 
+4782 c00547c3 beq type_dm3 ,transmit_dm3 
+4783 c005c7c9 beq type_dh3 ,transmit_dh3 
+4784 d8400008 arg 8 ,temp 
+4785 20404a1b call reserve_slot 
+4786 c007c7c9 beq type_dh5 ,transmit_dh5 
+4787 202047c3 branch transmit_dm5 
+
+transmit_hev:
+4788 44bb400e bpatch patch0e_6 ,mem_patch0e 
+4789 782efc00 enable encode_fec0 
+478a 7824fc00 enable enable_crc 
+478b 78277c00 enable encrypt 
+478c 1800721e force 30 ,loopcnt 
+478d d8c000b1 arg mem_sco_obuf ,contr 
+
+transmit_ev_loop:
+478e efe20006 ifetch 1 ,contr 
+478f 08008608 inject mod ,8 
+4790 c200478e loop transmit_ev_loop 
+4791 c503c7f3 bmark1 mark_esco ,transmit_end 
+4792 20204649 branch end_of_packet 
+
+transmit_fhs:
+4793 44bbc00e bpatch patch0e_7 ,mem_patch0e 
+4794 6fe2017f fetch 1 ,mem_fhs_am_addr 
+4795 1fe20800 icopy am_addr 
+4796 6fe20090 fetch 1 ,mem_fhs_misc 
+4797 1fe23800 icopy fhs_misc 
+4798 6fe640aa fetch 3 ,mem_class 
+4799 1fe23a00 icopy fhs_class 
+479a 6fe440a4 fetch 2 ,mem_nap 
+479b 1fe25c00 icopy nap 
+479c 7824fc00 enable enable_crc 
+479d 782e7c00 enable encode_fec2 
+479e 1c022200 copy bt_adr ,rega 
+479f 204048de call fetch_self_bt_adr 
+47a0 782afc00 pulse recalc 
+47a1 20000020 nop 32 
+47a2 1c221600 copy bt_clk ,timeup 
+47a3 6fe8015f fetch 4 ,mem_clkn_bt 
+47a4 1fe24200 icopy bt_clk 
+47a5 53c07e00 preload fhs0 
+47a6 79207e3a set1 58 ,pdata 
+47a7 08008648 inject mod ,72 
+47a8 53e07e00 preload fhs1 
+47a9 08008648 inject mod ,72 
+47aa 19624200 copy timeup ,bt_clk 
+47ab 1a224000 copy rega ,bt_adr 
+47ac 78247c00 enable enable_parity 
+47ad 08008610 inject mod ,16 
+47ae 78447c00 disable enable_parity 
+47af 20204649 branch end_of_packet 
+
+transmit_lmp:
+47b0 44bc400f bpatch patch0f_0 ,mem_patch0f 
+47b1 78277c00 enable encrypt 
+47b2 7824fc00 enable enable_crc 
+47b3 782e7c00 enable encode_fec2 
+47b4 6fe204b2 fetch 1 ,mem_lmo_header_length 
+47b5 1fe105f8 and pdata ,0x1f8 ,temp 
+47b6 d8c004b2 arg mem_lmo_header_length ,contr 
+47b7 18408408 increase 8 ,temp 
+
+transmit_lmp_loop:
+47b8 1840a7b8 add temp ,-72 ,regc 
+47b9 242147be nbranch transmit_lmp_finish ,positive 
+47ba eff20006 ifetch 9 ,contr 
+47bb 08008648 inject mod ,72 
+47bc 1a620400 copy regc ,temp 
+47bd 202047b8 branch transmit_lmp_loop 
+
+transmit_lmp_finish:
+47be eff20006 ifetch 9 ,contr 
+47bf 08418600 iinject mod ,temp 
+47c0 202047f3 branch transmit_end 
+
+transmit_dm1:
+47c1 782e7c00 enable encode_fec2 
+47c2 202047cc branch transmit_dmh 
+
+transmit_dm3:
+
+transmit_dm5:
+47c3 782e7c00 enable encode_fec2 
+47c4 79200010 set1 mark_longpacket ,mark 
+47c5 202047cc branch transmit_dmh 
+
+transmit_3dh1:
+47c6 79202a02 set1 psk3m ,radio_ctrl 
+
+transmit_dh1:
+47c7 782efc00 enable encode_fec0 
+47c8 202047cc branch transmit_dmh 
+
+transmit_dh3:
+
+transmit_dh5:
+47c9 79202a02 set1 psk3m ,radio_ctrl 
+47ca 782efc00 enable encode_fec0 
+47cb 79200010 set1 mark_longpacket ,mark 
+
+transmit_dmh:
+47cc 44bcc00f bpatch patch0f_1 ,mem_patch0f 
+47cd 6fe2004c fetch 1 ,mem_state_map 
+47ce c302c7e1 bbit0 smap_edr ,transmit_noedr 
+47cf 18267c03 sub type ,3 ,null 
+47d0 202147e1 branch transmit_noedr ,positive 
+47d1 78477c00 disable encrypt 
+47d2 784e7c00 disable encode_fec2 
+47d3 782efc00 enable encode_fec0 
+47d4 7843fc00 disable enable_white 
+47d5 79202a01 set1 psk ,radio_ctrl 
+47d6 2aaffe02 isolate1 psk3m ,radio_ctrl 
+47d7 2020c7db branch transmit_edr3m ,true 
+47d8 580abeee setarg 0xabeee 
+47d9 08008614 inject mod ,20 
+47da 202047df branch transmit_edr_sync_end 
+
+transmit_edr3m:
+47db 585faeba setarg 0x5faeba 
+47dc 08008618 inject mod ,24 
+47dd 58000012 setarg 0x12 
+47de 08008606 inject mod ,6 
+
+transmit_edr_sync_end:
+47df 7823fc00 enable enable_white 
+47e0 79200010 set1 mark_longpacket ,mark 
+
+transmit_noedr:
+47e1 78277c00 enable encrypt 
+47e2 7824fc00 enable enable_crc 
+47e3 c502c7fc bmark1 mark_loopback ,transmit_loopback 
+47e4 6fe241dc fetch 1 ,mem_tx_lch 
+47e5 08008603 inject mod ,3 
+47e6 6fe441dd fetch 2 ,mem_tx_len 
+47e7 98007200 iforce loopcnt 
+47e8 c50847eb bmark1 mark_longpacket ,transmit_long 
+47e9 08008605 inject mod ,5 
+47ea 202047ec branch transmit_stuff 
+
+transmit_long:
+47eb 0800860d inject mod ,13 
+
+transmit_stuff:
+47ec 1f227e00 deposit loopcnt 
+47ed 203a47f3 branch transmit_end ,blank 
+47ee 6fe4016d fetch 2 ,mem_txptr 
+47ef 98000c00 iforce contr 
+
+transmit_stuff_loop:
+47f0 efe20006 ifetch 1 ,contr 
+47f1 08008608 inject mod ,8 
+47f2 c20047f0 loop transmit_stuff_loop 
+
+transmit_end:
+47f3 78247c00 enable enable_parity 
+47f4 08008610 inject mod ,16 
+47f5 78447c00 disable enable_parity 
+47f6 204044bd call set_wait_ack 
+47f7 6fe2004c fetch 1 ,mem_state_map 
+47f8 c302c649 bbit0 smap_edr ,end_of_packet 
+47f9 18007e00 force 0 ,pdata 
+47fa 08008606 inject mod ,6 
+47fb 20204649 branch end_of_packet 
+
+transmit_loopback:
+47fc 44bd400f bpatch patch0f_2 ,mem_patch0f 
+47fd c5084804 bmark1 mark_longpacket ,transmit_loopback_long 
+
+transmit_loopback_short:
+47fe 6fe2017e fetch 1 ,mem_lch_code 
+47ff 08008603 inject mod ,3 
+4800 6fe2015d fetch 1 ,mem_len 
+4801 98002600 iforce regc 
+4802 08008605 inject mod ,5 
+4803 20204809 branch transmit_loopback_cont 
+
+transmit_loopback_long:
+4804 6fe2017e fetch 1 ,mem_lch_code 
+4805 08008603 inject mod ,3 
+4806 6fe4015d fetch 2 ,mem_len 
+4807 98002600 iforce regc 
+4808 0800860d inject mod ,13 
+
+transmit_loopback_cont:
+4809 d8c0054d arg mem_rxbuf ,contr 
+
+transmit_loopback_loop:
+480a 1a627c00 copy regc ,null 
+480b 2022c810 branch transmit_loopback_end ,zero 
+480c efe20006 ifetch 1 ,contr 
+480d 08008608 inject mod ,8 
+480e 1a60a7ff increase -1 ,regc 
+480f 2020480a branch transmit_loopback_loop 
+
+transmit_loopback_end:
+4810 6fe400fa fetch 2 ,mem_tst_pktcnt_dmh 
+4811 1fe0fe01 increase 1 ,pdata 
+4812 67e400fa store 2 ,mem_tst_pktcnt_dmh 
+4813 202047f3 branch transmit_end 
+
+apply_switch_clke:
+4814 6fe80163 fetch 4 ,mem_clke_bt 
+4815 1fe0a207 add pdata ,7 ,rega 
+4816 6fe4016f fetch 2 ,mem_slot_offset 
+4817 243a481a nbranch apply_switch_nozero ,blank 
+4818 1a20a3fd increase -3 ,rega 
+4819 20204822 branch apply_switch_wait_loop 
+
+apply_switch_nozero:
+481a 1feffe0c mul32 pdata ,12 ,pdata 
+481b 68448040 fetcht 2 ,core_rthalfslot 
+481c 18408401 increase 1 ,temp 
+
+apply_switch_loop:
+481d 98467e00 isub temp ,pdata 
+481e 24214821 nbranch apply_switch_bt ,positive 
+481f 1a20a3ff increase -1 ,rega 
+4820 2020481d branch apply_switch_loop 
+
+apply_switch_bt:
+4821 1fe67e00 sub pdata ,0 ,pdata 
+
+apply_switch_wait_loop:
+4822 37d18200 until null ,oneslot 
+4823 2c400600 compare 0 ,clkn_bt ,3 
+4824 2420c822 nbranch apply_switch_wait_loop ,true 
+4825 98005200 iforce clke_rt 
+4826 1a225000 copy rega ,clke_bt 
+4827 98005200 iforce clke_rt 
+4828 20600000 rtn 
+
+calc_slot_offset:
+4829 44bdc00f bpatch patch0f_3 ,mem_patch0f 
+482a 37d10200 until null ,halfslot 
+482b 1b427e00 deposit clke 
+482c 98000c00 iforce contr 
+482d 1ff17e00 rshift16 ,pdata ,pdata 
+482e 9c467200 isub clkn_bt ,loopcnt 
+482f 1f217203 and_into 3 ,loopcnt 
+4830 2422c833 nbranch calc_bt_portion ,zero 
+4831 18007e00 force 0 ,pdata 
+4832 20204837 branch calc_skip_bt 
+
+calc_bt_portion:
+4833 d8400ea6 arg 3750 ,temp 
+4834 18007e00 force 0 ,pdata 
+
+calc_slot_offset_loop:
+4835 9840fe00 iadd temp ,pdata 
+4836 c2004835 loop calc_slot_offset_loop 
+
+calc_skip_bt:
+4837 98c0fe00 iadd contr ,pdata 
+4838 1fe6fc0c div pdata ,12 
+4839 20407d61 call wait_div_end 
+483a 1807fe00 quotient pdata 
+483b 67e4016f store 2 ,mem_slot_offset 
+483c 20600000 rtn 
+
+calc_clke_offset:
+483d 44be400f bpatch patch0f_4 ,mem_patch0f 
+483e 1b427e00 deposit clke 
+483f 1b220400 copy clkn ,temp 
+4840 98467c00 isub temp ,null 
+4841 7d217e2c nsetflag positive ,44 ,pdata 
+4842 98460400 isub temp ,temp 
+4843 58000ea6 setarg 3750 
+4844 284c000f isolate0 15 ,temp 
+4845 2020c848 branch calc_clke_pos ,true 
+4846 5fff0ea6 setarg -61786 
+4847 98408400 iadd temp ,temp 
+
+calc_clke_pos:
+4848 604c0443 storet 6 ,mem_le_clk_offset 
+4849 207b0000 rtn le 
+484a 604c0038 storet 6 ,mem_clk_offset 
+484b 20600000 rtn 
+
+calc_clke:
+484c 78587c00 disable clknt 
+484d 6fec0443 fetch 6 ,mem_le_clk_offset 
+484e 203b4850 branch calc_clke2 ,le 
+484f 6fec0038 fetch 6 ,mem_clk_offset 
+
+calc_clke2:
+4850 9b20e000 iadd clkn ,alarm 
+4851 1e00e00a increase 10 ,alarm 
+4852 58000ea6 setarg 3750 
+4853 9e067e00 isub alarm ,pdata 
+4854 2fec000f isolate0 15 ,pdata 
+4855 2020c85a branch calc_clke_pos_adj ,true 
+4856 5800f15a setarg 0xf15a 
+4857 9e00e000 iadd alarm ,alarm 
+
+calc_clke_pos2:
+4858 1e023400 copy alarm ,clke 
+4859 20600000 rtn 
+
+calc_clke_pos_adj:
+485a 18007c00 force 0 ,null 
+485b 20204858 branch calc_clke_pos2 
+
+calc_radio_freq:
+485c 44bec00f bpatch patch0f_5 ,mem_patch0f 
+485d 20404915 call set_sync_on 
+485e 1c227e00 copy bt_clk ,pdata 
+485f 1fe17f80 and_into 0x180 ,pdata 
+4860 2c800e03 compare 3 ,freq_mode ,0x07 
+4861 2420c865 nbranch freq_not_connection ,true 
+4862 1fe97e00 rshift3 pdata ,pdata 
+4863 9ae0fe00 iadd freq_index ,pdata 
+4864 20204866 branch do_hop_mod_now 
+
+freq_not_connection:
+4865 1ae27e00 copy freq_index ,pdata 
+
+do_hop_mod_now:
+4866 1fe6fc4f div pdata ,79 
+4867 782afc00 pulse recalc 
+4868 20407d61 call wait_div_end 
+4869 18072200 remainder rega 
+486a 1a2085d8 add rega ,-40 ,temp 
+486b 2021486e branch odd_half ,positive 
+486c 1a238400 lshift rega ,temp 
+486d 20204870 branch freq_result 
+
+odd_half:
+486e 18438400 lshift temp ,temp 
+486f 18408401 increase 1 ,temp 
+
+freq_result:
+4870 44bf400f bpatch patch0f_6 ,mem_patch0f 
+4871 6fe20031 fetch 1 ,mem_mode 
+4872 c301c881 bbit0 afh_change ,afh_process_con 
+
+afh_process_0:
+4873 6fe840d2 fetch 4 ,mem_afh_instant 
+4874 9c267c00 isub bt_clk ,null 
+4875 20214881 branch afh_process_con ,positive 
+4876 204048a0 call afh_clear 
+4877 6fe240d9 fetch 1 ,mem_afh_new_mod 
+4878 207a0000 rtn blank 
+4879 6fe20031 fetch 1 ,mem_mode 
+487a 79207e02 set1 afh_enable ,pdata 
+487b 67e20031 store 1 ,mem_mode 
+487c 6fea40e7 fetch 5 ,mem_afh_map_new 
+487d 67ea40da store 5 ,mem_afh_map_lo 
+487e efea0006 ifetch 5 ,contr 
+487f 67ea40df store 5 ,mem_afh_map_hi 
+4880 204048a5 call afh_process_freq_map 
+
+afh_process_con:
+4881 6fe20031 fetch 1 ,mem_mode 
+4882 c4010000 rtnbit0 afh_enable 
+4883 2c2ffe01 isolate1 1 ,bt_clk 
+4884 2020c89d branch afh_same_channel ,true 
+4885 18492200 rshift3 temp ,rega 
+4886 18410e07 and temp ,7 ,queue 
+4887 580040da setarg mem_afh_map_lo 
+4888 9a20a200 iadd rega ,rega 
+4889 efe20011 ifetch 1 ,rega 
+488a afec0000 qisolate0 pdata 
+488b 2020c88e branch afh_process_1 ,true 
+488c 18427e00 deposit temp 
+488d 2020489a branch afh_process_end 
+
+afh_process_1:
+488e 6fe240e4 fetch 1 ,mem_afh_used 
+488f 98002400 iforce regb 
+4890 1c227e00 deposit bt_clk 
+4891 1fe17f80 and_into 0x180 ,pdata 
+4892 1fe97e00 rshift3 pdata ,pdata 
+4893 9ae0fe00 iadd freq_index ,pdata 
+4894 9a46fc00 idiv regb 
+4895 580040f2 setarg mem_afh_map 
+4896 20407d61 call wait_div_end 
+4897 18072200 remainder rega 
+4898 9a208c00 iadd rega ,contr 
+4899 efe20006 ifetch 1 ,contr 
+
+afh_process_end:
+489a 67e240e5 store 1 ,mem_afh_index 
+489b 98000400 iforce temp 
+489c 20600000 rtn 
+
+afh_same_channel:
+489d 6fe240e5 fetch 1 ,mem_afh_index 
+489e 98000400 iforce temp 
+489f 20600000 rtn 
+
+afh_clear:
+48a0 6fe20031 fetch 1 ,mem_mode 
+48a1 793ffe02 set0 afh_enable ,pdata 
+48a2 793ffe03 set0 afh_change ,pdata 
+48a3 67e20031 store 1 ,mem_mode 
+48a4 20600000 rtn 
+
+afh_process_freq_map:
+48a5 44bfc00f bpatch patch0f_7 ,mem_patch0f 
+48a6 d8a040f2 arg mem_afh_map ,contw 
+48a7 1800720a force 10 ,loopcnt 
+48a8 20407ca1 call memset0 
+48a9 d8a040f2 arg mem_afh_map ,contw 
+48aa 18002600 force 0 ,regc 
+48ab 18000e02 force 2 ,queue 
+
+process_freq_3:
+48ac 6fea40da fetch 5 ,mem_afh_map_lo 
+48ad 98000400 iforce temp 
+48ae 28e1fe02 compare 2 ,queue ,0xff 
+48af 2020c8b1 branch process_freq_1 ,true 
+48b0 18430400 rshift temp ,temp 
+
+process_freq_1:
+48b1 284c0000 isolate0 0 ,temp 
+48b2 2020c8b5 branch process_freq_0 ,true 
+48b3 1a627e00 deposit regc 
+48b4 e7e20005 istore 1 ,contw 
+
+process_freq_0:
+48b5 184b0400 rshift2 temp ,temp 
+48b6 1a60a602 increase 2 ,regc 
+48b7 2a61fc28 compare 40 ,regc ,0xfe 
+48b8 2420c8be nbranch process_freq_2 ,true 
+48b9 6fea40df fetch 5 ,mem_afh_map_hi 
+48ba 98000400 iforce temp 
+48bb 28e1fe02 compare 2 ,queue ,0xff 
+48bc 2020c8be branch process_freq_2 ,true 
+48bd 18430400 rshift temp ,temp 
+
+process_freq_2:
+48be 1a667c4e sub regc ,78 ,null 
+48bf 202148b1 branch process_freq_1 ,positive 
+48c0 18002601 force 1 ,regc 
+48c1 18e08fff increase -1 ,queue 
+48c2 2422c8ac nbranch process_freq_3 ,zero 
+48c3 da2040f2 arg mem_afh_map ,rega 
+48c4 18a27e00 deposit contw 
+48c5 9a267e00 isub rega ,pdata 
+48c6 67e240e4 store 1 ,mem_afh_used 
+48c7 20600000 rtn 
+
+rx_radio_freq:
+48c8 44c04010 bpatch patch10_0 ,mem_patch10 
+48c9 2040485c call calc_radio_freq 
+48ca 6fe2017d fetch 1 ,mem_debug_config 
+48cb c302c8cd bbit0 debug_rx_fixed_freq ,rx_radio_freq_now 
+48cc 684204c8 fetcht 1 ,mem_rx_fixed_freq 
+
+rx_radio_freq_now:
+48cd 2020491c branch set_freq_rx 
+
+tx_radio_freq:
+48ce 44c0c010 bpatch patch10_1 ,mem_patch10 
+48cf 2040485c call calc_radio_freq 
+48d0 6fe2017d fetch 1 ,mem_debug_config 
+48d1 c30248d3 bbit0 debug_tx_fixed_freq ,tx_radio_freq_now 
+48d2 684204c7 fetcht 1 ,mem_tx_fixed_freq 
+
+tx_radio_freq_now:
+48d3 20204930 branch set_freq_tx 
+
+fetch_giac:
+48d4 18005a00 force 0 ,uap 
+48d5 6fe640a7 fetch 3 ,mem_glap 
+48d6 98005800 iforce lap 
+48d7 20600000 rtn 
+
+fetch_page_bt_adr:
+48d8 44c14010 bpatch patch10_2 ,mem_patch10 
+48d9 6fe241d4 fetch 1 ,mem_hci_puap 
+48da 1fe25a00 icopy uap 
+48db 6fe641d1 fetch 3 ,mem_hci_plap 
+48dc 1fe25800 icopy lap 
+48dd 20600000 rtn 
+
+fetch_self_bt_adr:
+48de 44c1c010 bpatch patch10_3 ,mem_patch10 
+48df 6fe440a4 fetch 2 ,mem_nap 
+48e0 1fe25c00 icopy nap 
+48e1 6fe240a3 fetch 1 ,mem_uap 
+48e2 1fe25a00 icopy uap 
+48e3 6fe640a0 fetch 3 ,mem_lap 
+48e4 1fe25800 icopy lap 
+48e5 20600000 rtn 
+
+fetch_extm_bt_adr:
+48e6 44c24010 bpatch patch10_4 ,mem_patch10 
+48e7 6fe40044 fetch 2 ,mem_pnap 
+48e8 1fe25c00 icopy nap 
+48e9 6fe20043 fetch 1 ,mem_puap 
+48ea 1fe25a00 icopy uap 
+48eb 6fe60040 fetch 3 ,mem_plap 
+48ec 1fe25800 icopy lap 
+48ed 20600000 rtn 
+
+fetch_diac:
+48ee c51048f1 bmark1 mark_all_diac ,fetch_diac_do 
+48ef c68e8000 rtnmark0 mark_inquiry_state 
+48f0 c68f8000 rtnmark0 mark_periodical_diac 
+
+fetch_diac_do:
+48f1 1d815900 and_into -256 ,lap 
+48f2 782afc00 pulse recalc 
+48f3 20000020 nop 32 
+48f4 20600000 rtn 
+
+shutdown_radio:
+48f5 44c2c010 bpatch patch10_5 ,mem_patch10 
+48f6 2030c906 branch shutdown_radio0 ,is_rx 
+48f7 708955d4 hjam 0xd4 ,0x955 
+48f8 20000004 nop 4 
+48f9 708955d2 hjam 0xd2 ,0x955 
+48fa 20000004 nop 4 
+48fb 708955d1 hjam 0xd1 ,0x955 
+48fc 20000004 nop 4 
+48fd 6fe241df fetch 1 ,mem_tx_power 
+48fe c0004904 beq tx_power_0db ,shutdown_radio_0db 
+48ff c000c912 beq tx_power_3db ,shutdown_radio_3db 
+4900 c0014904 beq tx_power_5db ,shutdown_radio_5db 
+4901 c001c912 beq tx_power_f3db ,shutdown_radio_f3db 
+4902 c0024912 beq tx_power_f5db ,shutdown_radio_f5db 
+4903 c0104912 beq tx_power_pair ,shutdown_radio_pair 
+
+shutdown_radio_5db:
+
+shutdown_radio_0db:
+4904 708955d0 hjam 0xd0 ,0x955 
+4905 708956e0 hjam 0xe0 ,0x956 
+
+shutdown_radio0:
+4906 18002a08 force 0x08 ,radio_ctrl 
+4907 18002a00 force 0 ,radio_ctrl 
+4908 7850fc00 disable is_rx 
+4909 78507c00 disable is_tx 
+490a 782f7c00 pulse packet_end 
+490b 70890200 hjam 0x0 ,rfen_mdm 
+490c 70890100 hjam 0x0 ,rfen_tx 
+490d 70890000 hjam 0x0 ,rfen_rx 
+490e 70890300 hjam 0 ,rfen_sn 
+490f 70890470 hjam 0x70 ,rfen_msc 
+4910 70890600 hjam 0x0 ,rfen_adc 
+4911 20600000 rtn 
+
+shutdown_radio_pair:
+
+shutdown_radio_f5db:
+
+shutdown_radio_f3db:
+
+shutdown_radio_3db:
+4912 708955d0 hjam 0xd0 ,0x955 
+4913 708956c0 hjam 0xc0 ,0x956 
+4914 20204906 branch shutdown_radio0 
+
+set_sync_on:
+4915 44c34010 bpatch patch10_6 ,mem_patch10 
+4916 70890200 hjam 0x0 ,rfen_mdm 
+4917 70890100 hjam 0x0 ,rfen_tx 
+4918 70890018 hjam 0x18 ,rfen_rx 
+4919 708903a7 hjam 0xa7 ,rfen_sn 
+491a 7089047f hjam 0x7f ,rfen_msc 
+491b 20600000 rtn 
+
+set_freq_rx:
+491c 44c3c010 bpatch patch10_7 ,mem_patch10 
+491d 60420017 storet 1 ,mem_last_freq 
+491e 1840a204 add temp ,rx_freq_offset ,rega 
+491f 70896d07 hjam 0x07 ,0x96d 
+4920 20204980 branch rf_write_freq 
+
+rf_rx_enable:
+4921 44c44011 bpatch patch11_0 ,mem_patch11 
+4922 708901cf hjam 0xcf ,rfen_tx 
+4923 2000000a nop 10 
+4924 708900ff hjam 0xff ,rfen_rx 
+4925 708903af hjam 0xaf ,rfen_sn 
+4926 708904ff hjam 0xff ,rfen_msc 
+4927 2000000a nop 10 
+4928 708902a0 hjam 0xa0 ,rfen_mdm 
+4929 20600000 rtn 
+
+set_freq_tx_offset:
+492a 6fe241e1 fetch 1 ,mem_250k_freq_enable 
+492b 203a492e branch set_freq_tx_2m_offset ,blank 
+
+set_freq_tx_0m_offset:
+492c 1840a202 add temp ,2 ,rega 
+492d 20600000 rtn 
+
+set_freq_tx_2m_offset:
+492e 1840a200 add temp ,0 ,rega 
+492f 20600000 rtn 
+
+set_freq_tx:
+4930 44c4c011 bpatch patch11_1 ,mem_patch11 
+4931 60420017 storet 1 ,mem_last_freq 
+4932 2040492a call set_freq_tx_offset 
+4933 20404980 call rf_write_freq 
+4934 58000500 setarg param_pll_setup 
+4935 20404a8e call sleep 
+
+txon:
+4936 70890601 hjam 0x1 ,rfen_adc 
+4937 7089003c hjam 0x3c ,rfen_rx 
+4938 708901e0 hjam 0xe0 ,rfen_tx 
+4939 70896d12 hjam 0x12 ,0x96d 
+493a 2000000a nop 10 
+493b 70890201 hjam 0x01 ,rfen_mdm 
+493c 7089023d hjam 0x3d ,rfen_mdm 
+493d 2000000a nop 10 
+493e 708903b7 hjam 0xb7 ,rfen_sn 
+493f 2000000a nop 10 
+4940 7089027f hjam 0x7f ,rfen_mdm 
+4941 6fe241df fetch 1 ,mem_tx_power 
+4942 c0004948 beq tx_power_0db ,set_tx_power_0db 
+4943 c000c94c beq tx_power_3db ,set_tx_power_3db 
+4944 c0014950 beq tx_power_5db ,set_tx_power_5db 
+4945 c001c954 beq tx_power_f3db ,set_tx_power_f3db 
+4946 c0024958 beq tx_power_f5db ,set_tx_power_f5db 
+4947 c010495c beq tx_power_pair ,set_tx_power_pair 
+
+set_tx_power_0db:
+4948 708956f0 hjam 0xf0 ,0x956 
+4949 20404962 call txon_common 
+494a 708955d8 hjam 0xd8 ,0x955 
+494b 20600000 rtn 
+
+set_tx_power_3db:
+494c 708956df hjam 0xdf ,0x956 
+494d 20404962 call txon_common 
+494e 708955df hjam 0xdf ,0x955 
+494f 20600000 rtn 
+
+set_tx_power_5db:
+4950 708956ff hjam 0xff ,0x956 
+4951 20404962 call txon_common 
+4952 708955df hjam 0xdf ,0x955 
+4953 20600000 rtn 
+
+set_tx_power_f3db:
+4954 708956ce hjam 0xce ,0x956 
+4955 20404962 call txon_common 
+4956 708955d8 hjam 0xd8 ,0x955 
+4957 20600000 rtn 
+
+set_tx_power_f5db:
+4958 708956cb hjam 0xcb ,0x956 
+4959 20404962 call txon_common 
+495a 708955d8 hjam 0xd8 ,0x955 
+495b 20600000 rtn 
+
+set_tx_power_pair:
+495c 708955d0 hjam 0xd0 ,0x955 
+495d 708956c0 hjam 0xc0 ,0x956 
+495e 7089574c hjam 0x4c ,0x957 
+495f 7089586c hjam 0x6c ,0x958 
+4960 70895950 hjam 0x50 ,0x959 
+4961 20600000 rtn 
+
+txon_common:
+4962 20000004 nop 4 
+4963 708955d1 hjam 0xd1 ,0x955 
+4964 20000004 nop 4 
+4965 708955d2 hjam 0xd2 ,0x955 
+4966 20000004 nop 4 
+4967 708955d4 hjam 0xd4 ,0x955 
+4968 20000004 nop 4 
+4969 20600000 rtn 
+
+initialize_radio:
+496a 70804206 hjam clksel_rc ,core_clksel 
+496b 2455e7bc ncall wake_up_m0 ,wake 
+
+initialize_radio_wait:
+496c 6fe440c3 fetch 2 ,mem_rf_init_ptr 
+496d c307496c bbit0 14 ,initialize_radio_wait 
+496e 98000c00 iforce contr 
+496f d8408900 arg 0x8900 ,temp 
+
+initialize_radio_loop:
+4970 efe20006 ifetch 1 ,contr 
+4971 c07fc976 beq 0xff ,initialize_radio_cont 
+4972 98418a00 ior temp ,contw 
+4973 efe20006 ifetch 1 ,contr 
+4974 e7e20005 istore 1 ,contw 
+4975 20204970 branch initialize_radio_loop 
+
+initialize_radio_cont:
+4976 44c54011 bpatch patch11_2 ,mem_patch11 
+4977 20404bba call lpm_cal_xtal_startup 
+4978 204049c8 call switchto_dpllclk 
+4979 580007d0 setarg param_dpll_start_delay 
+497a 9c40fe00 iadd clkn_bt ,pdata 
+497b 67e80167 store 4 ,mem_dpll_clkn 
+497c 79202a03 set1 reset ,radio_ctrl 
+497d 18002a00 force 0 ,radio_ctrl 
+497e 2455c997 ncall do_rccal ,wake 
+497f 202049aa branch set_rccal 
+
+rf_write_freq:
+4980 44c5c011 bpatch patch11_3 ,mem_patch11 
+4981 58000960 setarg 2400 
+4982 9a208400 iadd rega ,temp 
+4983 6fe240bd fetch 1 ,mem_fcomp_mul 
+4984 70895f04 hjam 0x04 ,rf_pll_rstn 
+4985 984ffe00 imul32 temp ,pdata 
+4986 684240be fetcht 1 ,mem_fcomp_div 
+4987 9846fc00 idiv temp 
+4988 20407d61 call wait_div_end 
+4989 1807a200 quotient rega 
+498a 18077e00 remainder pdata 
+498b 1ff07e00 lshift16 pdata ,pdata 
+498c 1ff27e00 lshift4 pdata ,pdata 
+498d 9846fc00 idiv temp 
+498e 20407d61 call wait_div_end 
+498f 1807fe00 quotient pdata 
+4990 1fed7e00 lshift8 pdata ,pdata 
+4991 1fe3fe00 lshift pdata ,pdata 
+4992 9a21fe00 ior rega ,pdata 
+4993 67e88960 hstore 4 ,rf_pll_intg 
+4994 70895f44 hjam 0x44 ,rf_pll_rstn 
+4995 70895fc4 hjam 0xc4 ,rf_pll_rstn 
+4996 20600000 rtn 
+
+do_rccal:
+4997 44c64011 bpatch patch11_4 ,mem_patch11 
+4998 70890602 hjam 0x02 ,rfen_adc 
+4999 5803d090 setarg 250000 
+499a 20404a8e call sleep 
+499b 7089007f hjam 0x7f ,rfen_rx 
+499c 20000082 nop 130 
+499d 70895230 hjam 0x30 ,rf_rccal_ctrl 
+499e 708901d0 hjam 0xd0 ,rfen_tx 
+499f 70895270 hjam 0x70 ,rf_rccal_ctrl 
+49a0 708952f0 hjam 0xf0 ,rf_rccal_ctrl 
+49a1 18007232 force 50 ,loopcnt 
+
+do_rccal_loop:
+49a2 6fe28990 hfetch 1 ,rf_rccal_result 
+49a3 c282c9a5 bbit1 5 ,do_rccal_end 
+49a4 c20049a2 loop do_rccal_loop 
+
+do_rccal_end:
+49a5 67e240ce store 1 ,mem_rf_rccal 
+49a6 70890100 hjam 0 ,rfen_tx 
+49a7 70890000 hjam 0 ,rfen_rx 
+49a8 70890600 hjam 0x00 ,rfen_adc 
+49a9 20600000 rtn 
+
+set_rccal:
+49aa 44c6c011 bpatch patch11_5 ,mem_patch11 
+49ab 6fe240ce fetch 1 ,mem_rf_rccal 
+49ac 79207e05 set1 5 ,pdata 
+49ad 67e28952 hstore 1 ,rf_rccal_ctrl 
+49ae 68428950 hfetcht 1 ,rf_bpf_ctrim 
+49af 18410407 and_into 7 ,temp 
+49b0 1fe9fe00 lshift3 pdata ,pdata 
+49b1 9841fe00 ior temp ,pdata 
+49b2 67e28950 hstore 1 ,rf_bpf_ctrim 
+49b3 6fe28951 hfetch 1 ,rf_bpf_ib 
+49b4 793ffe00 set0 bpf_rccal ,pdata 
+49b5 67e28951 hstore 1 ,rf_bpf_ib 
+49b6 6fe28952 hfetch 1 ,rf_adc_rccal 
+49b7 793ffe05 set0 adc_rccal ,pdata 
+49b8 67e28952 hstore 1 ,rf_adc_rccal 
+49b9 20600000 rtn 
+
+save_rssi:
+49ba 44c74011 bpatch patch11_6 ,mem_patch11 
+49bb 6fe48991 hfetch 2 ,rf_afc_d2a 
+49bc 1ff1fe00 rshift4 pdata ,pdata 
+49bd 1fe97e00 rshift3 pdata ,pdata 
+49be 1fe67e00 sub pdata ,0 ,pdata 
+49bf 1fe17eff and_into 0xff ,pdata 
+49c0 1fe6fc0a div pdata ,10 
+49c1 20407d61 call wait_div_end 
+49c2 1807fe00 quotient pdata 
+49c3 1ff27e00 lshift4 pdata ,pdata 
+49c4 18070400 remainder temp 
+49c5 9841fe00 ior temp ,pdata 
+49c6 67e20018 store 1 ,mem_rssi 
+49c7 20600000 rtn 
+
+switchto_dpllclk:
+49c8 70804206 hjam clksel_rc ,core_clksel 
+49c9 6fe2896b hfetch 1 ,rf_clkpll_frac + 2 
+49ca 793ffe04 set0 4 ,pdata 
+49cb 793ffe05 set0 5 ,pdata 
+49cc 67e2896b hstore 1 ,rf_clkpll_frac + 2 
+49cd 70890500 hjam 0x00 ,rfen_ck 
+49ce 70890400 hjam 0x00 ,rfen_msc 
+49cf 70890470 hjam 0x70 ,rfen_msc 
+49d0 708905ff hjam 0xff ,rfen_ck 
+49d1 6fe2896b hfetch 1 ,rf_clkpll_frac + 2 
+49d2 79207e04 set1 4 ,pdata 
+49d3 79207e05 set1 5 ,pdata 
+49d4 67e2896b hstore 1 ,rf_clkpll_frac + 2 
+49d5 204049e8 call init_lpm_ctrl 
+49d6 6fe28968 hfetch 1 ,rf_clkpll_int 
+49d7 79207e07 set1 7 ,pdata 
+49d8 67e28968 hstore 1 ,rf_clkpll_int 
+49d9 793ffe07 set0 7 ,pdata 
+49da 67e28968 hstore 1 ,rf_clkpll_int 
+49db 79207e07 set1 7 ,pdata 
+49dc 67e28968 hstore 1 ,rf_clkpll_int 
+49dd 70804205 hjam clksel_dpll ,core_clksel 
+49de 20000001 nop 1 
+49df 70804204 hjam clksel_xtal ,core_clksel 
+49e0 6fe2896b hfetch 1 ,rf_clkpll_frac + 2 
+49e1 1fe17ecf and_into 0xcf ,pdata 
+49e2 67e2896b hstore 1 ,rf_clkpll_frac + 2 
+49e3 1fe1fe30 or_into 0x30 ,pdata 
+49e4 67e2896b hstore 1 ,rf_clkpll_frac + 2 
+49e5 20600000 rtn 
+
+xtal_fast_wake:
+49e6 58000f0f setarg 0xf0f 
+49e7 20204bd2 branch lpm_write_config 
+
+init_lpm_ctrl:
+49e8 5800080f setarg 0x80f 
+49e9 20204bd2 branch lpm_write_config 
+
+start_receiver:
+49ea 44c7c011 bpatch patch11_7 ,mem_patch11 
+49eb 20404921 call rf_rx_enable 
+49ec 78507c00 disable is_tx 
+49ed 7830fc00 enable is_rx 
+49ee 782b7c00 pulse init_encrypt 
+49ef 20600000 rtn 
+
+prep_crypt:
+49f0 44c84012 bpatch patch12_0 ,mem_patch12 
+49f1 6fe2004c fetch 1 ,mem_state_map 
+49f2 2feffe02 isolate1 smap_encryption ,pdata 
+49f3 7920fe00 setflag true ,0 ,pdata 
+49f4 67e28011 hstore 1 ,core_encrypt 
+49f5 d8c00062 arg mem_kc ,contr 
+49f6 eff20006 ifetch 9 ,contr 
+49f7 98006400 iforce kc_ls 
+49f8 efee0006 ifetch 7 ,contr 
+49f9 98006600 iforce kc_ms 
+49fa 6fe20054 fetch 1 ,mem_key_size 
+49fb 1fe0e9ff add pdata ,-1 ,g1l 
+49fc 782d7c00 pulse kc_p_activate 
+49fd 20600000 rtn 
+
+wait_access_end:
+49fe 1b427e00 deposit clke 
+49ff 67ec009a store 6 ,mem_sync_clke 
+4a00 7846fc00 disable decode_fec0 
+4a01 242c48f5 nbranch shutdown_radio ,sync 
+4a02 dd2003bb arg param_clke_cal ,clke_rt 
+4a03 1d00d001 increase 1 ,clke_bt 
+4a04 1d0151fc and_into 0x1fc ,clke_bt 
+4a05 20600000 rtn 
+
+wait_access_mhalfbnd:
+4a06 7826fc00 enable decode_fec0 
+
+wait_access_mhalfbnd_correlate:
+4a07 37cb8400 correlate null ,mhalfbnd 
+4a08 202c49fe branch wait_access_end ,sync 
+4a09 2d000402 compare 0x02 ,clke_bt ,0x02 
+4a0a 2420ca07 nbranch wait_access_mhalfbnd_correlate ,true 
+4a0b 202049fe branch wait_access_end 
+
+wait_access_clkn_rt:
+4a0c 44c8c012 bpatch patch12_1 ,mem_patch12 
+4a0d d9600600 arg param_conn_access ,timeup 
+4a0e 7826fc00 enable decode_fec0 
+4a0f 34730400 correlate clkn_rt ,meet 
+4a10 7846fc00 disable decode_fec0 
+4a11 242c48f5 nbranch shutdown_radio ,sync 
+4a12 20600000 rtn 
+
+wait_access_forever:
+4a13 44c94012 bpatch patch12_2 ,mem_patch12 
+4a14 7826fc00 enable decode_fec0 
+4a15 37c18400 correlate null ,timeout 
+4a16 7846fc00 disable decode_fec0 
+4a17 242c48f5 nbranch shutdown_radio ,sync 
+4a18 dd2003bb arg param_clke_cal ,clke_rt 
+4a19 1d0151fc and_into 0x1fc ,clke_bt 
+4a1a 20600000 rtn 
+
+reserve_slot:
+4a1b 44c9c012 bpatch patch12_3 ,mem_patch12 
+4a1c 98002200 iforce rega 
+4a1d 1c227e00 deposit bt_clk 
+4a1e 98409600 iadd temp ,timeup 
+4a1f 19627e00 copy timeup ,pdata 
+4a20 67e840ca store 4 ,mem_next_btclk 
+4a21 1a227e00 deposit rega 
+4a22 20600000 rtn 
+
+ahead_window:
+4a23 1fe20400 copy pdata ,temp 
+4a24 44ca4012 bpatch patch12_4 ,mem_patch12 
+4a25 18427e00 copy temp ,pdata 
+4a26 20407d2b call clk2bt 
+4a27 1c307e00 lshift16 bt_clk ,pdata 
+4a28 79207e2c set1 44 ,pdata 
+4a29 20407d14 call clk_diff 
+4a2a 793ffe2c set0 44 ,pdata 
+4a2b 20404a76 call get_clk 
+4a2c 20407d14 call clk_diff 
+4a2d 20740000 rtn user 
+4a2e 20407d1e call clk2rt 
+4a2f 98003600 iforce stop_watch 
+4a30 37c18200 until null ,timeout 
+4a31 20600000 rtn 
+
+setup_clk:
+4a32 44cac012 bpatch patch12_5 ,mem_patch12 
+4a33 20384a37 branch setup_clkn ,clknt 
+4a34 35330200 until clke_rt ,meet 
+
+skip_setup_clke:
+4a35 1d020400 copy clke_bt ,temp 
+4a36 20204a3a branch setup_clknbt 
+
+setup_clkn:
+4a37 20374a39 branch skip_setup_clkn ,attempt 
+4a38 34730200 until clkn_rt ,meet 
+
+skip_setup_clkn:
+4a39 1c420400 copy clkn_bt ,temp 
+
+setup_clknbt:
+4a3a 20344a46 branch setup_clk11 ,user 
+4a3b 28400601 compare 1 ,temp ,3 
+4a3c 2420ca32 nbranch setup_clk ,true 
+
+setup_complete:
+4a3d 44cb4012 bpatch patch12_6 ,mem_patch12 
+4a3e 6fe20030 fetch 1 ,mem_state 
+4a3f c4000000 rtnbit0 state_inconn 
+4a40 6fe840ca fetch 4 ,mem_next_btclk 
+4a41 98467e00 isub temp ,pdata 
+4a42 24610000 nrtn positive 
+4a43 1fe67cff sub pdata ,0xff ,null 
+4a44 20214a32 branch setup_clk ,positive 
+4a45 20600000 rtn 
+
+setup_clk11:
+4a46 28400603 compare 3 ,temp ,3 
+4a47 2420ca32 nbranch setup_clk ,true 
+4a48 20204a3d branch setup_complete 
+
+rf_setup_time:
+4a49 44cbc012 bpatch patch12_7 ,mem_patch12 
+4a4a d9600600 arg param_rf_setup ,timeup 
+4a4b 20204a32 branch setup_clk 
+
+rf_setup_time_slave_slot:
+4a4c 78547c00 disable user 
+4a4d 20204a49 branch rf_setup_time 
+
+rf_setup_time_master_slot:
+4a4e 78347c00 enable user 
+4a4f 20204a49 branch rf_setup_time 
+
+start_transmitter:
+4a50 44cc4013 bpatch patch13_0 ,mem_patch13 
+4a51 204049f0 call prep_crypt 
+4a52 7850fc00 disable is_rx 
+4a53 78307c00 enable is_tx 
+4a54 20600000 rtn 
+
+start_tx_native:
+4a55 44ccc013 bpatch patch13_1 ,mem_patch13 
+4a56 d9600e43 arg param_tx_setup ,timeup 
+4a57 34730200 until clkn_rt ,meet 
+4a58 782b7c00 pulse init_encrypt 
+4a59 20600000 rtn 
+
+start_rx_native:
+4a5a 44cd4013 bpatch patch13_2 ,mem_patch13 
+4a5b d9600d00 arg param_rx_setup ,timeup 
+4a5c 34730200 until clkn_rt ,meet 
+4a5d 20600000 rtn 
+
+start_tx_external:
+4a5e 44cdc013 bpatch patch13_3 ,mem_patch13 
+4a5f d9600e43 arg param_tx_setup ,timeup 
+4a60 35330200 until clke_rt ,meet 
+4a61 782b7c00 pulse init_encrypt 
+4a62 20600000 rtn 
+
+send_access_word:
+4a63 44ce4013 bpatch patch13_4 ,mem_patch13 
+4a64 51207e00 preload access 
+4a65 782efc00 enable encode_fec0 
+4a66 79202a00 set1 txgfsk ,radio_ctrl 
+4a67 08008648 inject mod ,72 
+4a68 784efc00 disable encode_fec0 
+4a69 20600000 rtn 
+
+scan_mode_whiten:
+4a6a 1ca20400 copy xin ,temp 
+4a6b 18418460 or_into 0x60 ,temp 
+4a6c 18421c00 copy temp ,white_init 
+4a6d 20600000 rtn 
+
+get_free_amaddr:
+4a6e 44cec013 bpatch patch13_5 ,mem_patch13 
+4a6f 6fe24090 fetch 1 ,mem_current_amaddr 
+4a70 1fe0fe01 increase 1 ,pdata 
+4a71 c083ca73 bne param_esco_addr ,get_free_amaddr_cont 
+4a72 18007e01 force 1 ,pdata 
+
+get_free_amaddr_cont:
+4a73 67e24090 store 1 ,mem_current_amaddr 
+4a74 98000800 iforce am_addr 
+4a75 20600000 rtn 
+
+get_clk:
+4a76 1b220400 copy clkn ,temp 
+4a77 20748000 rtn master 
+4a78 1b420400 copy clke ,temp 
+4a79 20600000 rtn 
+
+get_clkbt:
+4a7a 1c427e00 deposit clkn_bt 
+4a7b 20748000 rtn master 
+4a7c 1d027e00 deposit clke_bt 
+4a7d 20600000 rtn 
+
+supervision_update:
+4a7e 44cf4013 bpatch patch13_6 ,mem_patch13 
+4a7f 6848004d fetcht 4 ,mem_supervision_timer 
+4a80 20404a7a call get_clkbt 
+4a81 98461600 isub temp ,timeup 
+4a82 19627e00 deposit timeup 
+4a83 68440051 fetcht 2 ,mem_supervision_to 
+4a84 18438400 lshift temp ,temp 
+4a85 98467e00 isub temp ,pdata 
+4a86 20600000 rtn 
+
+supervision_flush:
+4a87 44cfc013 bpatch patch13_7 ,mem_patch13 
+4a88 20404a7a call get_clkbt 
+4a89 67e8004d store 4 ,mem_supervision_timer 
+4a8a 20600000 rtn 
+
+assert:
+4a8b 44d04014 bpatch patch14_0 ,mem_patch14 
+4a8c 20204a8b branch assert 
+
+loop:
+4a8d 20204a8d branch loop 
+
+sleep:
+4a8e 207a0000 rtn blank 
+4a8f 1fe37e00 rshift pdata ,pdata 
+4a90 1fe0fffd increase -3 ,pdata 
+
+sleep_loop:
+4a91 1fe0ffff increase -1 ,pdata 
+4a92 2422ca91 nbranch sleep_loop ,zero 
+4a93 18007e00 force 0 ,pdata 
+4a94 20600000 rtn 
+
+init_param:
+4a95 df200010 arg 0x10 ,loopcnt 
+4a96 d8a00000 arg 0 ,contw 
+4a97 20407ca1 call memset0 
+4a98 d8a0043b arg mem_le_state ,contw 
+4a99 df20000a arg 10 ,loopcnt 
+4a9a 20407ca1 call memset0 
+4a9b 7009ae00 jam 0 ,mem_sp_calc 
+4a9c 700a9500 jam 0 ,mem_fifo_temp 
+4a9d 70048800 jam 0 ,mem_le_testtype 
+4a9e 70017d00 jam 0 ,mem_debug_config 
+4a9f 7004cd00 jam 0 ,mem_lmp_conn_state 
+4aa0 44d0c014 bpatch patch14_1 ,mem_patch14 
+4aa1 70016b00 jam 0 ,mem_connection_options 
+4aa2 70014f00 jam 0 ,mem_tester_emulate 
+4aa3 70015a00 jam 0 ,mem_tester_cnt 
+4aa4 589e8b33 setarg param_glap 
+4aa5 67e640a7 store 3 ,mem_glap 
+4aa6 58000153 setarg param_acl_pktlen 
+4aa7 67e40083 store 2 ,mem_acl_pktlen 
+4aa8 7000851e jam param_sco_pktlen ,mem_sco_pktlen 
+4aa9 70008601 jam param_acl_pktcnt ,mem_acl_pktcnt 
+4aaa 70008807 jam param_sco_pktcnt ,mem_sco_pktcnt 
+4aab 5812e904 setarg param_hci_version 
+4aac 67e60080 store 3 ,mem_hci_version 
+4aad 70009060 jam 0x60 ,mem_fhs_misc 
+4aae 7040d005 jam param_max_slot ,mem_max_slot 
+4aaf 70001402 jam 0x02 ,mem_fw_ver 
+4ab0 6fe2462c fetch 1 ,mem_ssp_enable 
+4ab1 245a7376 ncall init_memp ,blank 
+4ab2 6fe24490 fetch 1 ,mem_le_secure_connect_enable 
+4ab3 245a73cd ncall init_memp_256 ,blank 
+4ab4 44d14014 bpatch patch14_2 ,mem_patch14 
+4ab5 20758000 rtn wake 
+4ab6 58000000 setarg 0 
+4ab7 67e441dd store 2 ,mem_tx_len 
+4ab8 1c437e00 rshift clkn_bt ,pdata 
+4ab9 67e84094 store 4 ,mem_last_clkn 
+4aba 20600000 rtn 
+
+lpmstate:
+4abb 6fe88124 fetch 4 ,core_lpm_xtalcnt 
+4abc 2feffe13 isolate1 hibernate ,pdata 
+4abd c30bcac2 bbit0 isogate ,lpm_open_isogate 
+4abe 2420fd74 nbranch clean_mem ,true 
+4abf d85fffff arg param_hibernate_clks ,temp 
+4ac0 1ce27e00 deposit auxcnt 
+4ac1 203a4b18 branch lpm_enter_sleep ,blank 
+
+lpm_open_isogate:
+4ac2 79207e17 set1 isogate ,pdata 
+4ac3 79207e14 set1 xram_switch ,pdata 
+4ac4 79207e15 set1 pram_switch ,pdata 
+4ac5 67e8804c store 4 ,core_lpm_reg 
+4ac6 37d98200 until null ,lpo_edge 
+4ac7 37d98200 until null ,lpo_edge 
+4ac8 20404bdd call lpm_write_ctrl2 
+4ac9 6fe2804e fetch 1 ,core_lpm_isogate 
+4aca 79207e06 set1 enable_retmem ,pdata 
+4acb 67e2804e store 1 ,core_lpm_isogate 
+4acc 20404bdd call lpm_write_ctrl2 
+4acd 2020fd74 branch clean_mem ,true 
+4ace 7835fc00 enable wake 
+
+lpm_load_context:
+4acf 70804301 jam 0x1 ,core_config 
+4ad0 6ff04191 fetch 8 ,mem_saved_mark 
+4ad1 98000000 iforce mark 
+4ad2 6fec8130 fetch 6 ,core_gpio_wakeup 
+4ad3 67ec00a1 store 6 ,mem_gpio_wakeup 
+4ad4 20600000 rtn 
+
+lpm_save_context:
+4ad5 18027e00 deposit mark 
+4ad6 67f04191 store 8 ,mem_saved_mark 
+4ad7 20204be3 branch lpm_write_gpio_wakeup 
+
+lpo_calibration:
+4ad8 68428042 fetcht 1 ,core_clksel 
+4ad9 18417ef0 and temp ,0xf0 ,pdata 
+4ada 243a4ae1 nbranch lpo_cal_inited ,blank 
+4adb 6fe64170 fetch 3 ,mem_clks_per_lpo 
+4adc 247a0000 nrtn blank 
+4add 18417e0f and temp ,0xf ,pdata 
+4ade 1fe1fec0 or_into 0xc0 ,pdata 
+4adf 67e28042 store 1 ,core_clksel 
+4ae0 70800a80 jam ccnt_start ,core_dma_start 
+
+lpo_cal_inited:
+4ae1 6fe28108 fetch 1 ,core_misc_status 
+4ae2 c4000000 rtnbit0 ccnt_done 
+4ae3 6fe6810a fetch 3 ,core_ccnt_counter 
+4ae4 67e64170 store 3 ,mem_clks_per_lpo 
+4ae5 20600000 rtn 
+
+lpm_adjust_clk:
+4ae6 44d1c014 bpatch patch14_3 ,mem_patch14 
+4ae7 1b427e00 deposit clke 
+4ae8 20407d12 call clk_diff_rt 
+4ae9 68484160 fetcht 4 ,mem_sleep_counter_all 
+4aea 18467cff sub temp ,0xff ,null 
+4aeb 20610000 rtn positive 
+4aec 1fed7e00 lshift8 pdata ,pdata 
+4aed 1ff27e00 lshift4 pdata ,pdata 
+4aee 9846fc00 idiv temp 
+4aef 20407d61 call wait_div_end 
+4af0 1807fe00 quotient pdata 
+4af1 d84000c8 arg param_lpm_adjmax ,temp 
+4af2 20407d6c call ceiling 
+4af3 67e20099 store 1 ,mem_lpm_adjust 
+4af4 24344af6 nbranch lpm_adjust_positive ,user 
+4af5 1fe67e00 sub pdata ,0 ,pdata 
+
+lpm_adjust_positive:
+4af6 68464170 fetcht 3 ,mem_clks_per_lpo 
+4af7 9840fe00 iadd temp ,pdata 
+4af8 67e64170 store 3 ,mem_clks_per_lpo 
+
+lpm_clear_counter:
+4af9 58000000 setarg 0 
+4afa 67e84160 store 4 ,mem_sleep_counter_all 
+4afb 20600000 rtn 
+
+lpm_doze:
+4afc 6fe24158 fetch 1 ,mem_lpm_doze_switch 
+4afd 20204aff branch lpm_hibernate_normal 
+
+lpm_hibernate:
+4afe 6fe24157 fetch 1 ,mem_lpm_hibernate_switch 
+
+lpm_hibernate_normal:
+4aff 67e2417c store 1 ,mem_lpm_xtalcnt + 3 
+4b00 44d24014 bpatch patch14_4 ,mem_patch14 
+4b01 20404be3 call lpm_write_gpio_wakeup 
+4b02 d85fffff arg param_hibernate_clks ,temp 
+4b03 6fe24177 fetch 1 ,mem_lpm_config + 1 
+4b04 793ffe07 set0 7 ,pdata 
+4b05 67e24177 store 1 ,mem_lpm_config + 1 
+
+lpm_sleep:
+4b06 44d2c014 bpatch patch14_5 ,mem_patch14 
+4b07 204049e6 call xtal_fast_wake 
+4b08 6fe84160 fetch 4 ,mem_sleep_counter_all 
+4b09 9840fe00 iadd temp ,pdata 
+4b0a 67e84160 store 4 ,mem_sleep_counter_all 
+4b0b 20404ad5 call lpm_save_context 
+4b0c 6fe64179 fetch 3 ,mem_lpm_xtalcnt 
+4b0d 67e6804c store 3 ,core_lpm_reg 
+4b0e ea220006 ifetchr rega ,1 ,contr 
+4b0f 6fe28127 fetch 1 ,core_lpm_buckcfg 
+4b10 e7e20005 istore 1 ,contw 
+4b11 37d98200 until null ,lpo_edge 
+4b12 632c4164 storer clkn ,6 ,mem_sleep_clkn 
+4b13 70800502 hjam lpmreg_sel_ctrl2 ,core_lpm_wr 
+4b14 37d98200 until null ,lpo_edge 
+4b15 37d98200 until null ,lpo_edge 
+4b16 6222804e storer rega ,1 ,core_lpm_isogate 
+4b17 70800502 hjam lpmreg_sel_ctrl2 ,core_lpm_wr 
+
+lpm_enter_sleep:
+4b18 37d98200 until null ,lpo_edge 
+4b19 37d98200 until null ,lpo_edge 
+4b1a 6048804c hstoret 4 ,core_lpm_reg 
+4b1b 70800510 hjam lpmreg_sel_counter ,core_lpm_wr 
+4b1c 37df8200 until null ,never 
+
+lpm_recover_clk:
+4b1d 44d34014 bpatch patch14_6 ,mem_patch14 
+4b1e 58000000 setarg 0 
+4b1f 1ce27c00 copy auxcnt ,null 
+4b20 2022cb28 branch lpm_recover_timeout ,zero 
+4b21 6fe28124 hfetch 1 ,core_lpm_xtalcnt 
+4b22 68428125 hfetcht 1 ,core_lpm_buckcnt 
+4b23 98467c00 isub temp ,null 
+4b24 20214b26 branch lpm_recover_xtal ,positive 
+4b25 18427e00 deposit temp 
+
+lpm_recover_xtal:
+4b26 9ce67e00 isub auxcnt ,pdata 
+4b27 1fe0fe01 increase 1 ,pdata 
+
+lpm_recover_timeout:
+4b28 1fe0fe08 increase 8 ,pdata 
+4b29 37d98200 until null ,lpo_edge 
+4b2a 9e20fe00 iadd lpo_time ,pdata 
+4b2b 6848415c fetcht 4 ,mem_sleep_counter 
+4b2c 9840fe00 iadd temp ,pdata 
+4b2d 68464170 fetcht 3 ,mem_clks_per_lpo 
+4b2e 984ffe00 imul32 temp ,pdata 
+4b2f 1fecfe00 rshift8 pdata ,pdata 
+4b30 1ff1fe00 rshift4 pdata ,pdata 
+4b31 1fe0fe6e increase param_lpm_fix ,pdata 
+4b32 d8400ea6 arg 3750 ,temp 
+4b33 9846fc00 idiv temp 
+4b34 20407d61 call wait_div_end 
+4b35 1807fe00 quotient pdata 
+4b36 1ff07e00 lshift16 pdata ,pdata 
+4b37 18070400 remainder temp 
+4b38 9841fe00 ior temp ,pdata 
+4b39 684c4164 fetcht 6 ,mem_sleep_clkn 
+4b3a 20407d07 call clk_add 
+4b3b 18423200 copy temp ,clkn 
+4b3c 6fec4048 fetch 6 ,mem_context + coffset_clk_offset 
+4b3d 20404850 call calc_clke2 
+4b3e 20600000 rtn 
+
+lpm_dispatch:
+4b3f 44d3c014 bpatch patch14_7 ,mem_patch14 
+4b40 20404ad8 call lpo_calibration 
+4b41 6fe64170 fetch 3 ,mem_clks_per_lpo 
+4b42 207a0000 rtn blank 
+4b43 6fe24091 fetch 1 ,mem_lpm_mode 
+4b44 207a0000 rtn blank 
+4b45 6fe2462c fetch 1 ,mem_ssp_enable 
+4b46 203a4b49 branch lpm_dispatch_next ,blank 
+4b47 6fe24583 fetch 1 ,mem_sp_local_key_invalid 
+4b48 207a0000 rtn blank 
+
+lpm_dispatch_next:
+4b49 6fe24492 fetch 1 ,mem_le_sc_calc 
+4b4a 247a0000 nrtn blank 
+4b4b 20404bf4 call lpm_check_wake_lock 
+4b4c 247a0000 nrtn blank 
+4b4d 6fe24040 fetch 1 ,mem_context 
+4b4e 2fe00e03 compare 3 ,pdata ,0x7 
+4b4f 2420cb72 nbranch lpm_dispatch_unconn ,true 
+4b50 6fe44042 fetch 2 ,mem_context + coffset_tsniff 
+4b51 207a0000 rtn blank 
+4b52 20758000 rtn wake 
+4b53 44d44015 bpatch patch15_0 ,mem_patch15 
+4b54 684200a0 fetcht 1 ,mem_lpm_current_mult 
+4b55 6fe44042 fetch 2 ,mem_context + coffset_tsniff 
+4b56 984ffe00 imul32 temp ,pdata 
+4b57 18518400 rshift4 temp ,temp 
+4b58 184b0400 rshift2 temp ,temp 
+4b59 98467e00 isub temp ,pdata 
+4b5a 68484044 fetcht 4 ,mem_context + coffset_sniff_anchor 
+4b5b 9840fe00 iadd temp ,pdata 
+4b5c 68424156 fetcht 1 ,mem_lpm_overhead 
+4b5d 98467e00 isub temp ,pdata 
+4b5e 1ff06000 lshift16 pdata ,alarm 
+4b5f 44d4c015 bpatch patch15_1 ,mem_patch15 
+4b60 6fe4404e fetch 2 ,mem_context + coffset_rx_window 
+4b61 1fe37e00 rshift pdata ,pdata 
+4b62 20407d2b call clk2bt 
+4b63 1e027e00 deposit alarm 
+4b64 20407d14 call clk_diff 
+4b65 1b420400 copy clke ,temp 
+4b66 20407d12 call clk_diff_rt 
+4b67 20740000 rtn user 
+
+lpm_dispatch_sleep:
+4b68 20407d24 call clk2lpo 
+
+lpm_dispatch_lpo:
+4b69 44d54015 bpatch patch15_2 ,mem_patch15 
+4b6a 6fe24179 fetch 1 ,mem_lpm_xtalcnt 
+4b6b 98467c00 isub temp ,null 
+4b6c 20214af9 branch lpm_clear_counter ,positive 
+4b6d 6048415c storet 4 ,mem_sleep_counter 
+4b6e 20404cc1 call app_will_enter_lpm 
+4b6f 204056d5 call l2cap_lpm_save_txbuf 
+4b70 6848415c fetcht 4 ,mem_sleep_counter 
+4b71 20204b06 branch lpm_sleep 
+
+lpm_dispatch_unconn:
+4b72 44d5c015 bpatch patch15_3 ,mem_patch15 
+4b73 6fe24040 fetch 1 ,mem_context 
+4b74 c3800000 rtnbit1 state_inconn 
+4b75 c3818000 rtnbit1 state_inpage 
+4b76 6fe2462c fetch 1 ,mem_ssp_enable 
+4b77 203a4b7a branch lpm_unconn_nossp ,blank 
+4b78 6fe24583 fetch 1 ,mem_sp_local_key_invalid 
+4b79 207a0000 rtn blank 
+
+lpm_unconn_nossp:
+4b7a 44d64015 bpatch patch15_4 ,mem_patch15 
+4b7b 6fe24340 fetch 1 ,mem_le_adv_enable 
+4b7c 243a4b7f nbranch lpm_unconn_cont ,blank 
+4b7d 6fe24093 fetch 1 ,mem_scan_mode 
+4b7e 207a0000 rtn blank 
+
+lpm_unconn_cont:
+4b7f 6fe44154 fetch 2 ,mem_lpm_interval 
+4b80 207a0000 rtn blank 
+
+lpm_sleep_btclk:
+4b81 68424156 fetcht 1 ,mem_lpm_overhead 
+4b82 98467e00 isub temp ,pdata 
+4b83 d8401d4c arg 7500 ,temp 
+4b84 984ffe00 imul32 temp ,pdata 
+4b85 20204b68 branch lpm_dispatch_sleep 
+
+lpm_set_mult:
+4b86 44d6c015 bpatch patch15_5 ,mem_patch15 
+4b87 7855fc00 disable wake 
+4b88 6fe20030 fetch 1 ,mem_state 
+4b89 c4008000 rtnbit0 state_insniff 
+4b8a 2436cba5 nbranch lpm_not_match ,match 
+4b8b 20404ba0 call lpm_match 
+4b8c 6fe440c1 fetch 2 ,mem_rx_window_sniff 
+4b8d 67e4003e store 2 ,mem_rx_window 
+4b8e 6fe20047 fetch 1 ,mem_arq 
+4b8f c281cbb3 bbit1 wack ,lpm_mult_short 
+4b90 c586cbb3 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+4b91 2040564e call l2cap_malloc_is_fifo_empty 
+4b92 243a4bb3 nbranch lpm_mult_short ,blank 
+4b93 6fe2452e fetch 1 ,mem_classic_bt_flag 
+4b94 c280cbb3 bbit1 short_mult_flag ,lpm_mult_short 
+
+lpm_mult_wait_timeout:
+4b95 7000a000 jam 0 ,mem_lpm_current_mult 
+4b96 c586cbb3 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+4b97 6fe24175 fetch 1 ,mem_lpm_mult_cnt 
+4b98 203a4bb7 branch lpm_mult_long ,blank 
+4b99 1fe0ffff increase -1 ,pdata 
+4b9a 67e24175 store 1 ,mem_lpm_mult_cnt 
+4b9b 20600000 rtn 
+
+classic_bt_set_mult_short_flag:
+4b9c d8e00001 arg short_mult_flag ,queue 
+4b9d 202064af branch classic_bluetooth_set_flag 
+
+classic_bt_clr_mult_short_flag:
+4b9e d8e00001 arg short_mult_flag ,queue 
+4b9f 202064b3 branch classic_bluetooth_clr_flag 
+
+lpm_match:
+4ba0 70415a00 jam 0 ,mem_sniff_unint_lost 
+4ba1 6fe6416a fetch 3 ,mem_sniff_rcv 
+4ba2 1fe0fe01 increase 1 ,pdata 
+4ba3 67e6416a store 3 ,mem_sniff_rcv 
+4ba4 20600000 rtn 
+
+lpm_not_match:
+4ba5 44d74015 bpatch patch15_6 ,mem_patch15 
+4ba6 684440c1 fetcht 2 ,mem_rx_window_sniff 
+4ba7 18430400 rshift temp ,temp 
+4ba8 6fe4003e fetch 2 ,mem_rx_window 
+4ba9 9840fe00 iadd temp ,pdata 
+4baa 67e4003e store 2 ,mem_rx_window 
+
+lpm_lost:
+4bab 7000a000 jam 0 ,mem_lpm_current_mult 
+4bac 6fe6416d fetch 3 ,mem_sniff_lost 
+4bad 1fe0fe01 increase 1 ,pdata 
+4bae 67e6416d store 3 ,mem_sniff_lost 
+4baf 6fe2415a fetch 1 ,mem_sniff_unint_lost 
+4bb0 1fe0fe01 increase 1 ,pdata 
+4bb1 67e2415a store 1 ,mem_sniff_unint_lost 
+4bb2 20600000 rtn 
+
+lpm_mult_short:
+4bb3 7000a000 jam 0 ,mem_lpm_current_mult 
+4bb4 6fe24174 fetch 1 ,mem_lpm_mult_timeout 
+4bb5 67e24175 store 1 ,mem_lpm_mult_cnt 
+4bb6 20600000 rtn 
+
+lpm_mult_long:
+4bb7 68424173 fetcht 1 ,mem_lpm_mult 
+4bb8 604200a0 storet 1 ,mem_lpm_current_mult 
+4bb9 20600000 rtn 
+
+lpm_cal_xtal_startup:
+4bba 44d7c015 bpatch patch15_7 ,mem_patch15 
+4bbb 6fe24179 fetch 1 ,mem_lpm_xtalcnt 
+4bbc 247a0000 nrtn blank 
+4bbd 70804206 hjam clksel_rc ,core_clksel 
+4bbe 58000f0c setarg 0xf0c 
+4bbf 20404bd2 call lpm_write_config 
+4bc0 58030d40 setarg 200000 
+4bc1 20404a8e call sleep 
+4bc2 37d98200 until null ,lpo_edge 
+4bc3 1e226000 copy lpo_time ,alarm 
+4bc4 204049e6 call xtal_fast_wake 
+4bc5 70804204 hjam clksel_xtal ,core_clksel 
+4bc6 2000000a nop 10 
+4bc7 37d98200 until null ,lpo_edge 
+4bc8 1e227e00 deposit lpo_time 
+4bc9 9e067e00 isub alarm ,pdata 
+4bca 1fe0fe30 increase 0x30 ,pdata 
+4bcb d84000ff arg 0xff ,temp 
+4bcc 20407d6c call ceiling 
+4bcd 67e24179 store 1 ,mem_lpm_xtalcnt 
+4bce 20007530 nop 30000 
+4bcf 20007530 nop 30000 
+4bd0 20007530 nop 30000 
+4bd1 20600000 rtn 
+
+lpm_write_config:
+4bd2 d8a00fff arg 0xfff ,contw 
+4bd3 98a10a00 iand contw ,contw 
+4bd4 6fe24176 fetch 1 ,mem_lpm_config 
+4bd5 1fe17ef0 and_into 0xf0 ,pdata 
+4bd6 1fed7e00 lshift8 pdata ,pdata 
+4bd7 98a1fe00 ior contw ,pdata 
+4bd8 67e4804c hstore 2 ,core_lpm_reg 
+4bd9 efe40006 ifetch 2 ,contr 
+4bda e7e40005 istore 2 ,contw 
+
+lpm_write_ctrl:
+4bdb 58000001 setarg lpmreg_sel_ctrl 
+4bdc 20204bde branch lpm_write 
+
+lpm_write_ctrl2:
+4bdd 58000002 setarg lpmreg_sel_ctrl2 
+
+lpm_write:
+4bde 67e28005 hstore 1 ,core_lpm_wr 
+4bdf 37d98200 until null ,lpo_edge 
+4be0 37d98200 until null ,lpo_edge 
+4be1 37d98200 until null ,lpo_edge 
+4be2 20600000 rtn 
+
+lpm_write_gpio_wakeup:
+4be3 44d84016 bpatch patch16_0 ,mem_patch16 
+4be4 6fe800a1 fetch 4 ,mem_gpio_wakeup 
+4be5 67e8804c store 4 ,core_lpm_reg 
+4be6 58000004 setarg lpmreg_sel_gpiolow 
+4be7 20404bde call lpm_write 
+4be8 efe40006 ifetch 2 ,contr 
+4be9 67e8804c store 4 ,core_lpm_reg 
+4bea 58000008 setarg lpmreg_sel_gpiohigh 
+4beb 20204bde branch lpm_write 
+
+lpm_get_wake_lock:
+4bec 6fe44152 fetch 2 ,mem_lpm_wake_lock 
+4bed f9207e00 qset1 pdata 
+4bee 67e44152 store 2 ,mem_lpm_wake_lock 
+4bef 20600000 rtn 
+
+lpm_put_wake_lock:
+4bf0 6fe44152 fetch 2 ,mem_lpm_wake_lock 
+4bf1 f93ffe00 qset0 pdata 
+4bf2 67e44152 store 2 ,mem_lpm_wake_lock 
+4bf3 20600000 rtn 
+
+lpm_check_wake_lock:
+4bf4 44d8c016 bpatch patch16_1 ,mem_patch16 
+4bf5 20404cbf call app_check_wake_lock 
+4bf6 6fe44152 fetch 2 ,mem_lpm_wake_lock 
+4bf7 1fe22200 copy pdata ,rega 
+4bf8 6fe2004c fetch 1 ,mem_state_map 
+4bf9 2feffe06 isolate1 smap_rxlmp ,pdata 
+4bfa 7920a20b setflag true ,wake_lock_lmp_rx ,rega 
+4bfb 6fe20078 fetch 1 ,mem_lmo_opcode1 
+4bfc 6842007c fetcht 1 ,mem_lmo_opcode2 
+4bfd 9840fe00 iadd temp ,pdata 
+4bfe 68420048 fetcht 1 ,mem_lmp_to_send 
+4bff 9840fe00 iadd temp ,pdata 
+4c00 7d3a220a nsetflag blank ,wake_lock_lmp_tx ,rega 
+4c01 6fe244d1 fetch 1 ,mem_le_tx_buff_used 
+4c02 7d3a2201 nsetflag blank ,wake_lock_ble_tx ,rega 
+4c03 6fe40259 fetch 2 ,mem_l2cap_rxbuff1_len 
+4c04 6844025b fetcht 2 ,mem_l2cap_rxbuff2_len 
+4c05 9840fe00 iadd temp ,pdata 
+4c06 7d3a220d nsetflag blank ,wake_lock_l2cap_rx ,rega 
+4c07 6ff0463a fetch util_fifo_len ,mem_ipc_fifo_bt2c51 
+4c08 7d3a220f nsetflag blank ,wake_lock_ipc_bt2c51 ,rega 
+4c09 6ff04642 fetch util_fifo_len ,mem_ipc_fifo_c512bt 
+4c0a 7d3a220e nsetflag blank ,wake_lock_ipc_c512bt ,rega 
+4c0b 6fe44ff4 fetch 2 ,ipc_bt2m0_read_ptr 
+4c0c 68444ff6 fetcht 2 ,ipc_bt2m0_write_ptr 
+4c0d 98467c00 isub temp ,null 
+4c0e 7d22a205 nsetflag zero ,wake_lock_ipc_bt2m0 ,rega 
+4c0f 6fe44ffc fetch 2 ,ipc_m02bt_read_ptr 
+4c10 68444ffe fetcht 2 ,ipc_m02bt_write_ptr 
+4c11 98467c00 isub temp ,null 
+4c12 7d22a206 nsetflag zero ,wake_lock_ipc_m02bt ,rega 
+4c13 6fe28043 fetch 1 ,core_config 
+4c14 2feffe07 isolate1 7 ,pdata 
+4c15 7920a202 setflag true ,wake_lock_m0_single ,rega 
+4c16 6fe241cf fetch 1 ,mem_hci_cmd 
+4c17 7d3a2208 nsetflag blank ,wake_lock_cmd ,rega 
+4c18 1a227e00 copy rega ,pdata 
+4c19 67e44152 store 2 ,mem_lpm_wake_lock 
+4c1a 20600000 rtn 
+
+lpm_shut_down:
+4c1b 6fe8811c hfetch 4 ,core_lpm_ctrl 
+4c1c 793ffe1b set0 27 ,pdata 
+4c1d 67e8804c hstore 4 ,core_lpm_reg 
+4c1e 20404bdb call lpm_write_ctrl 
+4c1f 20204a8b branch assert 
+
+lpm_disable_exen_output:
+4c20 6fe88124 hfetch 4 ,core_lpm_xtalcnt 
+4c21 793ffe14 set0 20 ,pdata 
+4c22 67e8804c hstore 4 ,core_lpm_reg 
+4c23 20204bdd branch lpm_write_ctrl2 
+
+check_bt_disabled:
+4c24 6fe44150 fetch 2 ,mem_chip_functions 
+4c25 c2804a8b bbit1 bt_disabled ,assert 
+4c26 20600000 rtn 
+
+check_ble_disabled:
+4c27 6fe44150 fetch 2 ,mem_chip_functions 
+4c28 c280ca8b bbit1 ble_disabled ,assert 
+4c29 20600000 rtn 
+
+check_module_disabled:
+4c2a 6fe44150 fetch 2 ,mem_chip_functions 
+4c2b c2814a8b bbit1 module_disable ,assert 
+4c2c 20600000 rtn 
+
+test_init:
+4c2d 58004c35 setarg test_proc 
+4c2e 67e441f2 store 2 ,mem_cb_bt_process 
+4c2f 58004c64 setarg test_sleep 
+4c30 67e441f6 store 2 ,mem_cb_bb_event_process 
+4c31 58004c35 setarg test_proc 
+4c32 67e441f4 store 2 ,mem_cb_idle_process 
+4c33 20758000 rtn wake 
+4c34 20600000 rtn 
+
+test_proc:
+4c35 6fe20030 fetch 1 ,mem_state 
+4c36 c300cc3b bbit0 state_insniff ,check_test_cond 
+4c37 7920000d set1 mark_lpm_mult_enable ,mark 
+4c38 6fec416a fetch 6 ,mem_sniff_rcv 
+4c39 67ec44e8 store 6 ,mem_local_name 
+4c3a 20600000 rtn 
+
+check_test_cond:
+4c3b 6fe2014f fetch 1 ,mem_tester_emulate 
+4c3c c4010000 rtnbit0 tester_change 
+4c3d 6fe2015a fetch 1 ,mem_tester_cnt 
+4c3e 1fe0fe01 increase 1 ,pdata 
+4c3f 67e2015a store 1 ,mem_tester_cnt 
+4c40 c1828000 rtnne 5 
+4c41 70015a00 jam 0 ,mem_tester_cnt 
+4c42 6fe2014f fetch 1 ,mem_tester_emulate 
+4c43 793ffe02 set0 tester_change ,pdata 
+4c44 67e2014f store 1 ,mem_tester_emulate 
+4c45 c281cc5c bbit1 tester_exit ,check_test_exit 
+4c46 2feffe07 isolate1 tester_no_whitening ,pdata 
+4c47 2040fd88 call test_no_white ,true 
+4c48 2440fd8c ncall test_enable_white ,true 
+4c49 6fe20156 fetch 1 ,test_mode_packet_type 
+4c4a 2fe06020 compare 0x20 ,pdata ,0x30 
+4c4b 6fe2004c fetch 1 ,mem_state_map 
+4c4c 7920fe05 setflag true ,smap_edr ,pdata 
+4c4d 67e2004c store 1 ,mem_state_map 
+4c4e 6fe2014f fetch 1 ,mem_tester_emulate 
+4c4f 6842017d fetcht 1 ,mem_debug_config 
+4c50 2feffe04 isolate1 tester_pattern_test ,pdata 
+4c51 79208406 setflag true ,debug_tx_pattern ,temp 
+4c52 2feffe06 isolate1 tester_fixed_freq ,pdata 
+4c53 79208404 setflag true ,debug_tx_fixed_freq ,temp 
+4c54 79208405 setflag true ,debug_rx_fixed_freq ,temp 
+4c55 6042017d storet 1 ,mem_debug_config 
+4c56 6fe20152 fetch 1 ,test_mode_tx_freq 
+4c57 67e204c7 store 1 ,mem_tx_fixed_freq 
+4c58 6fe20153 fetch 1 ,test_mode_rx_freq 
+4c59 67e204c8 store 1 ,mem_rx_fixed_freq 
+4c5a 79200011 set1 mark_testmode ,mark 
+4c5b 20600000 rtn 
+
+check_test_exit:
+4c5c 793f8011 set0 mark_testmode ,mark 
+4c5d 70014f00 jam 0 ,mem_tester_emulate 
+4c5e 6fe20159 fetch 1 ,mem_test_mode_old_debug_config 
+4c5f 67e2017d store 1 ,mem_debug_config 
+4c60 6fe28043 hfetch 1 ,core_config 
+4c61 1fe17efb and_into 0xfb ,pdata 
+4c62 67e28043 hstore 1 ,core_config 
+4c63 20600000 rtn 
+
+test_sleep:
+4c64 1a627e00 deposit regc 
+4c65 c1880000 rtnne bt_evt_button_long_pressed 
+
+test_sleep_loop:
+4c66 20600000 rtn 
+4c67 c000cc66 beq 1 ,test_sleep_loop 
+4c68 20204afe branch lpm_hibernate 
+
+test_tx:
+4c69 18000402 force 2 ,temp 
+4c6a 184085fe increase -2 ,temp 
+4c6b 20404915 call set_sync_on 
+4c6c 20404930 call set_freq_tx 
+4c6d 7843fc00 disable enable_white 
+4c6e 782efc00 enable encode_fec0 
+4c6f 79202a00 set1 txgfsk ,radio_ctrl 
+4c70 20404a50 call start_transmitter 
+
+test_tx_loop:
+4c71 6fe20000 fetch 1 ,0 
+4c72 08008608 inject mod ,8 
+4c73 20204c71 branch test_tx_loop 
+
+wait_sec_powerup:
+4c74 6fe28108 fetch 1 ,core_misc_status 
+4c75 c3014c74 bbit0 sec_pwrup ,wait_sec_powerup 
+4c76 20600000 rtn 
+
+app_init:
+4c77 44d94016 bpatch patch16_2 ,mem_patch16 
+4c78 6fe24092 fetch 1 ,mem_device_option 
+4c79 203a4c77 branch app_init ,blank 
+4c7a c0054d95 beq dvc_op_module ,module_init 
+4c7b 20600000 rtn 
+
+app_lpm_init:
+4c7c 44d9c016 bpatch patch16_3 ,mem_patch16 
+4c7d 70014f00 jam 0 ,mem_tester_emulate 
+4c7e 70017d00 jam 0 ,mem_debug_config 
+4c7f 70017e00 jam 0 ,mem_lch_code 
+4c80 58000000 setarg 0 
+4c81 67ea09aa store 5 ,mem_sp_state_start 
+4c82 6fe24092 fetch 1 ,mem_device_option 
+4c83 203a4c7c branch app_lpm_init ,blank 
+4c84 c0054dba beq dvc_op_module ,module_lpm_init 
+
+app_lpm_init0:
+4c85 20600000 rtn 
+
+app_process_idle:
+4c86 20407b84 call ui_dispatch 
+4c87 20407bc1 call check_51cmd 
+4c88 20404c8f call app_process_bb_event 
+4c89 6fe441f4 fetch 2 ,mem_cb_idle_process 
+4c8a 20207d77 branch callback_func 
+
+app_process_bt:
+4c8b 6fe441f2 fetch 2 ,mem_cb_bt_process 
+4c8c 20207d77 branch callback_func 
+
+app_process_ble:
+4c8d 6fe441f0 fetch 2 ,mem_cb_le_process 
+4c8e 20207d77 branch callback_func 
+
+app_process_bb_event:
+4c8f 44da4016 bpatch patch16_4 ,mem_patch16 
+4c90 da20463a arg mem_ipc_fifo_bt2c51 ,rega 
+4c91 20407d9c call fifo_out 
+4c92 207a0000 rtn blank 
+4c93 1fe22600 copy pdata ,regc 
+4c94 20404c98 call app_event_normal_process 
+4c95 20204cbd branch app_process_bb_event_priority 
+
+app_discard_event:
+4c96 da600000 arg 0 ,regc 
+4c97 20600000 rtn 
+
+app_event_normal_process:
+4c98 c000ccaa beq bt_evt_bb_connected ,app_evt_bt_conn 
+4c99 c0084cf0 beq bt_evt_button_long_pressed ,app_evt_button_long_pressed 
+4c9a c002ccce beq bt_evt_setup_complete ,app_evt_setup_complete 
+4c9b c0094cd5 beq bt_evt_hid_handshake ,app_evt_hid_handshake 
+4c9c c0034cec beq bt_evt_hid_connected ,app_bb_event_hid_connected 
+4c9d c0024d1f beq bt_evt_reconn_failed ,app_bb_event_reconn_failed 
+4c9e c0014d24 beq bt_evt_bb_disconnected ,app_bb_event_bb_disconn 
+4c9f c009cd1f beq bt_evt_reconn_page_timeout ,app_bb_event_reconn_failed 
+4ca0 c00a4ce4 beq bt_evt_le_connected ,app_le_event_bb_connected 
+4ca1 c00acce8 beq bt_evt_le_disconnected ,app_le_event_bb_disconn 
+4ca2 c001ccc7 beq bt_evt_reconn_started ,app_event_reconn_start 
+4ca3 c005ccd9 beq bt_evt_enter_sniff ,app_event_enter_sniff 
+4ca4 c0064ce0 beq bt_evt_exit_sniff ,app_event_exit_sniff 
+4ca5 c00b4cf4 beq bt_evt_ml2cap_conn_refused ,app_event_ml2cap_conn_refused 
+4ca6 c00c4cc3 beq bt_evt_linkkey_generate ,app_event_linkkey_generate 
+4ca7 c0154cb3 beq bt_evt_switch_fail_master ,app_event_switch_fail_master 
+4ca8 c015ccb1 beq bt_evt_switch_success_master ,app_event_switch_success 
+4ca9 20600000 rtn 
+
+app_evt_bt_conn:
+4caa 6fe44652 fetch 2 ,mem_ui_state_map 
+4cab 79207e00 set1 ui_state_bt_connected ,pdata 
+4cac 67e44652 store 2 ,mem_ui_state_map 
+4cad 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cae 793ffe00 set0 app_disc_by_button ,pdata 
+4caf 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cb0 20600000 rtn 
+
+app_event_switch_success:
+4cb1 70022700 jam 0 ,mem_switch_fail_master_count 
+4cb2 20600000 rtn 
+
+app_event_switch_fail_master:
+4cb3 6fe20227 fetch 1 ,mem_switch_fail_master_count 
+4cb4 1fe0fe01 increase 1 ,pdata 
+4cb5 67e20227 store 1 ,mem_switch_fail_master_count 
+4cb6 1fe67c01 sub pdata ,1 ,null 
+4cb7 20214d5a branch app_bt_role_switch ,positive 
+4cb8 70022700 jam 0 ,mem_switch_fail_master_count 
+4cb9 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cba 79207e09 set1 app_disc_switch_fail ,pdata 
+4cbb 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cbc 20204d64 branch app_bt_disconnect 
+
+app_process_bb_event_priority:
+4cbd 6fe441f6 fetch 2 ,mem_cb_bb_event_process 
+4cbe 20207d77 branch callback_func 
+
+app_check_wake_lock:
+4cbf 6fe441ea fetch 2 ,mem_cb_check_wakelock 
+4cc0 20207d77 branch callback_func 
+
+app_will_enter_lpm:
+4cc1 6fe441ee fetch 2 ,mem_cb_before_lpm 
+4cc2 20207d77 branch callback_func 
+
+app_event_linkkey_generate:
+4cc3 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cc4 79207e01 set1 app_disc_after_pairing ,pdata 
+4cc5 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cc6 20204d8d branch app_bt_store_reconn_info 
+
+app_event_reconn_start:
+4cc7 6fe44652 fetch 2 ,mem_ui_state_map 
+4cc8 79207e07 set1 ui_state_bt_reconnect ,pdata 
+4cc9 67e44652 store 2 ,mem_ui_state_map 
+4cca 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4ccb 79207e02 set1 app_disc_after_reconn ,pdata 
+4ccc 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4ccd 20600000 rtn 
+
+app_evt_setup_complete:
+4cce 6fe44652 fetch 2 ,mem_ui_state_map 
+4ccf 79207e01 set1 ui_state_bt_setup_complete ,pdata 
+4cd0 67e44652 store 2 ,mem_ui_state_map 
+4cd1 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cd2 79207e04 set1 app_disc_after_setup_done ,pdata 
+4cd3 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cd4 20600000 rtn 
+
+app_evt_hid_handshake:
+4cd5 6fe44652 fetch 2 ,mem_ui_state_map 
+4cd6 79207e03 set1 ui_state_bt_hid_handshake ,pdata 
+4cd7 67e44652 store 2 ,mem_ui_state_map 
+4cd8 20600000 rtn 
+
+app_event_enter_sniff:
+4cd9 6fe44652 fetch 2 ,mem_ui_state_map 
+4cda 79207e05 set1 ui_state_bt_sniff ,pdata 
+4cdb 67e44652 store 2 ,mem_ui_state_map 
+4cdc 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cdd 79207e03 set1 app_disc_after_sniff ,pdata 
+4cde 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cdf 20600000 rtn 
+
+app_event_exit_sniff:
+4ce0 6fe44652 fetch 2 ,mem_ui_state_map 
+4ce1 793ffe05 set0 ui_state_bt_sniff ,pdata 
+4ce2 67e44652 store 2 ,mem_ui_state_map 
+4ce3 20600000 rtn 
+
+app_le_event_bb_connected:
+4ce4 6fe44652 fetch 2 ,mem_ui_state_map 
+4ce5 79207e09 set1 ui_state_ble_connected ,pdata 
+4ce6 67e44652 store 2 ,mem_ui_state_map 
+4ce7 20600000 rtn 
+
+app_le_event_bb_disconn:
+4ce8 6fe44652 fetch 2 ,mem_ui_state_map 
+4ce9 793ffe09 set0 ui_state_ble_connected ,pdata 
+4cea 67e44652 store 2 ,mem_ui_state_map 
+4ceb 20204d93 branch app_lpm_mult_disable 
+
+app_bb_event_hid_connected:
+4cec 6fe44652 fetch 2 ,mem_ui_state_map 
+4ced 79207e02 set1 ui_state_bt_hid_conn ,pdata 
+4cee 67e44652 store 2 ,mem_ui_state_map 
+4cef 20600000 rtn 
+
+app_evt_button_long_pressed:
+4cf0 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cf1 79207e00 set1 app_disc_by_button ,pdata 
+4cf2 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cf3 20600000 rtn 
+
+app_event_ml2cap_conn_refused:
+4cf4 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cf5 79207e08 set1 app_disc_l2cap_refused ,pdata 
+4cf6 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4cf7 20204d64 branch app_bt_disconnect 
+
+app_evt_timer:
+4cf8 44dac016 bpatch patch16_5 ,mem_patch16 
+4cf9 67e20228 store 1 ,mem_app_evt_timer_count 
+
+app_evt_100ms_loop:
+4cfa 6fe20228 fetch 1 ,mem_app_evt_timer_count 
+4cfb 207a0000 rtn blank 
+4cfc 1fe0ffff increase -1 ,pdata 
+4cfd 67e20228 store 1 ,mem_app_evt_timer_count 
+4cfe 20404d51 call app_lpm_wake_auto_lock_timer 
+4cff 20404d12 call app_unsniff_delay_timer 
+4d00 20404d18 call app_discovery_timer 
+4d01 6fe441fe fetch 2 ,mem_cb_event_timer 
+4d02 20407d77 call callback_func 
+4d03 20204cfa branch app_evt_100ms_loop 
+
+timer_single_step:
+4d04 efe20013 ifetch 1 ,regc 
+4d05 207a0000 rtn blank 
+4d06 1fe0ffff pincrease -1 
+4d07 e7e20013 istore 1 ,regc 
+4d08 247a0000 nrtn blank 
+4d09 1a427e00 copy regb ,pdata 
+4d0a 20207d77 branch callback_func 
+
+timer_single_step_2b:
+4d0b efe40013 ifetch 2 ,regc 
+4d0c 207a0000 rtn blank 
+4d0d 1fe0ffff pincrease -1 
+4d0e e7e40013 istore 2 ,regc 
+4d0f 247a0000 nrtn blank 
+4d10 1a427e00 copy regb ,pdata 
+4d11 20207d77 branch callback_func 
+
+app_unsniff_delay_timer:
+4d12 da604204 arg mem_unsniff2sniff_timer_count ,regc 
+4d13 da404d15 arg app_unsniff_delay_timeout ,regb 
+4d14 20204d04 branch timer_single_step 
+
+app_unsniff_delay_timeout:
+4d15 2040424e call context_check_idle 
+4d16 2022cd89 branch app_bt_enter_sniff ,zero 
+4d17 20600000 rtn 
+
+app_discovery_timer:
+4d18 da60464e arg mem_discovery_timeout_timer_count ,regc 
+4d19 da404d1b arg app_discovery_timeout ,regb 
+4d1a 20204d0b branch timer_single_step_2b 
+
+app_discovery_timeout:
+4d1b 20404d6b call app_bt_stop_discovery 
+4d1c 20404d83 call app_led_off 
+4d1d 6fe441f8 fetch 2 ,mem_cb_discovry_timeout 
+4d1e 20207d77 branch callback_func 
+
+app_bb_event_reconn_failed:
+4d1f 20404d37 call app_disconn_reason_flag_clear 
+
+app_clear_reconnect_flag:
+4d20 6fe44652 fetch 2 ,mem_ui_state_map 
+4d21 793ffe07 set0 ui_state_bt_reconnect ,pdata 
+4d22 67e44652 store 2 ,mem_ui_state_map 
+4d23 20600000 rtn 
+
+app_bb_event_bb_disconn:
+4d24 70420400 jam 0 ,mem_unsniff2sniff_timer_count 
+4d25 6fe44652 fetch 2 ,mem_ui_state_map 
+4d26 c283cd29 bbit1 ui_state_bt_reconnect ,app_bb_event_bb_reconn_disconn 
+4d27 2fec0001 isolate0 ui_state_bt_setup_complete ,pdata 
+4d28 2040cc96 call app_discard_event ,true 
+
+app_bb_event_bb_reconn_disconn:
+4d29 44db4016 bpatch patch16_6 ,mem_patch16 
+4d2a 6fe44652 fetch 2 ,mem_ui_state_map 
+4d2b 793ffe00 set0 ui_state_bt_connected ,pdata 
+4d2c 793ffe01 set0 ui_state_bt_setup_complete ,pdata 
+4d2d 793ffe02 set0 ui_state_bt_hid_conn ,pdata 
+4d2e 793ffe03 set0 ui_state_bt_hid_handshake ,pdata 
+4d2f 793ffe07 set0 ui_state_bt_reconnect ,pdata 
+4d30 67e44652 store 2 ,mem_ui_state_map 
+4d31 20204d93 branch app_lpm_mult_disable 
+
+app_bb_hibernate:
+4d32 20404d34 call app_disconn_reason_clear 
+4d33 20204d85 branch app_enter_hibernate 
+
+app_disconn_reason_clear:
+4d34 58000000 setarg 0 
+4d35 67e44207 store app_disc_rsn_size ,mem_app_disconn_reason 
+4d36 20600000 rtn 
+
+app_disconn_reason_flag_clear:
+4d37 58000000 setarg 0 
+4d38 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4d39 20600000 rtn 
+
+app_disconn_reason_collect_bt:
+4d3a 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4d3b 67e44207 store app_disc_rsn_size ,mem_app_disconn_reason 
+4d3c 58000000 setarg 0 
+4d3d 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4d3e 20600000 rtn 
+
+app_disconn_reason_collect_ble:
+4d3f 6fe44209 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4d40 79207e07 set1 app_disc_ble ,pdata 
+4d41 67e44207 store app_disc_rsn_size ,mem_app_disconn_reason 
+4d42 58000000 setarg 0 
+4d43 67e44209 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+4d44 20600000 rtn 
+
+app_check_sniff:
+4d45 6fe24652 fetch 1 ,mem_ui_state_map 
+4d46 2feffe05 isolate1 ui_state_bt_sniff ,pdata 
+4d47 20600000 rtn 
+
+app_start_auto_sniff:
+4d48 6fe2452c fetch 1 ,mem_unsniff2sniff_timer 
+4d49 67e24204 store 1 ,mem_unsniff2sniff_timer_count 
+4d4a 20600000 rtn 
+
+app_get_lpm_wake_lock:
+4d4b d8e00009 arg wake_lock_app ,queue 
+4d4c 20204bec branch lpm_get_wake_lock 
+
+app_put_lpm_wake_lock:
+4d4d d8e00009 arg wake_lock_app ,queue 
+4d4e 20204bf0 branch lpm_put_wake_lock 
+
+app_lpm_wake_auto_lock:
+4d4f 70420505 jam lpm_wake_up_delay_timer ,mem_wake_up_delay_timer 
+4d50 20204d4b branch app_get_lpm_wake_lock 
+
+app_lpm_wake_auto_lock_timer:
+4d51 da604205 arg mem_wake_up_delay_timer ,regc 
+4d52 da404d4d arg app_put_lpm_wake_lock ,regb 
+4d53 20204d04 branch timer_single_step 
+
+app_l2cap_flow_control_enable:
+4d54 70433501 jam l2cap_flow_ctrl_enable ,mem_l2cap_flow_ctrl_flag 
+4d55 20600000 rtn 
+
+app_l2cap_flow_control_disable:
+4d56 70433500 jam l2cap_flow_ctrl_disable ,mem_l2cap_flow_ctrl_flag 
+4d57 20600000 rtn 
+
+app_bt_set_pincode:
+4d58 700a950a jam bt_cmd_set_pin_code ,mem_fifo_temp 
+4d59 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_role_switch:
+4d5a 700a951d jam bt_cmd_role_switch ,mem_fifo_temp 
+4d5b 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_start_reconnect:
+4d5c 44dbc016 bpatch patch16_7 ,mem_patch16 
+4d5d 6fe24206 fetch 1 ,mem_app_connection_options 
+4d5e 67e2016b store 1 ,mem_connection_options 
+4d5f 70022601 jam app_flag_reconnect ,mem_reconnect_flag 
+4d60 700a9503 jam bt_cmd_reconnect ,mem_fifo_temp 
+4d61 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_reconnect_cancel:
+4d62 700a951e jam bt_cmd_bb_reconn_cancel ,mem_fifo_temp 
+4d63 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_disconnect:
+4d64 700a9504 jam bt_cmd_disconnect ,mem_fifo_temp 
+4d65 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_start_discovery_short:
+4d66 6fe44655 fetch 2 ,mem_discovery_timeout 
+4d67 67e4464e store 2 ,mem_discovery_timeout_timer_count 
+
+app_bt_start_discovery_led_blink:
+4d68 20404d7f call app_led_start_blink 
+
+app_bt_start_discovery:
+4d69 700a9501 jam bt_cmd_start_discovery ,mem_fifo_temp 
+4d6a 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_stop_discovery:
+4d6b 58000000 setarg 0 
+4d6c 67e4464e store 2 ,mem_discovery_timeout_timer_count 
+4d6d 700a9502 jam bt_cmd_stop_discovery ,mem_fifo_temp 
+4d6e 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_start_direct_adv:
+4d6f 700a950f jam bt_cmd_start_direct_adv ,mem_fifo_temp 
+4d70 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_stop_direct_adv:
+4d71 700a9510 jam bt_cmd_stop_direct_adv ,mem_fifo_temp 
+4d72 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_stop_adv:
+4d73 700a950e jam bt_cmd_stop_adv ,mem_fifo_temp 
+4d74 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_start_adv:
+4d75 700a950d jam bt_cmd_start_adv ,mem_fifo_temp 
+4d76 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_start_scan:
+4d77 700a9517 jam bt_cmd_le_start_scan ,mem_fifo_temp 
+4d78 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_stop_scan:
+4d79 700a9518 jam bt_cmd_le_stop_scan ,mem_fifo_temp 
+4d7a 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_start_conn:
+4d7b 700a9516 jam bt_cmd_le_start_conn ,mem_fifo_temp 
+4d7c 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_disconnect:
+4d7d 700a9511 jam bt_cmd_le_disconnect ,mem_fifo_temp 
+4d7e 20207bb4 branch ui_ipc_send_cmd 
+
+app_led_start_blink:
+4d7f 700a9515 jam bt_cmd_led_blink ,mem_fifo_temp 
+4d80 20207bb4 branch ui_ipc_send_cmd 
+
+app_led_on:
+4d81 700a9514 jam bt_cmd_led_on ,mem_fifo_temp 
+4d82 20207bb4 branch ui_ipc_send_cmd 
+
+app_led_stop_blink:
+
+app_led_off:
+4d83 700a9513 jam bt_cmd_led_off ,mem_fifo_temp 
+4d84 20207bb4 branch ui_ipc_send_cmd 
+
+app_enter_hibernate:
+4d85 700a9519 jam bt_cmd_enter_hibernate ,mem_fifo_temp 
+4d86 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_sniff_exit:
+4d87 700a9506 jam bt_cmd_exit_sniff ,mem_fifo_temp 
+4d88 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_enter_sniff:
+4d89 700a9505 jam bt_cmd_enter_sniff ,mem_fifo_temp 
+4d8a 20207bb4 branch ui_ipc_send_cmd 
+
+app_ble_store_reconn_info:
+4d8b 700a951f jam bt_cmd_store_reconn_info_le ,mem_fifo_temp 
+4d8c 20207bb4 branch ui_ipc_send_cmd 
+
+app_bt_store_reconn_info:
+4d8d 700a9520 jam bt_cmd_store_reconn_info_bt ,mem_fifo_temp 
+4d8e 20207bb4 branch ui_ipc_send_cmd 
+
+app_store_reconn_info:
+4d8f 700a9525 jam bt_cmd_store_reconn_info ,mem_fifo_temp 
+4d90 20207bb4 branch ui_ipc_send_cmd 
+
+app_lpm_mult_enable:
+4d91 7920000d set1 mark_lpm_mult_enable ,mark 
+4d92 20600000 rtn 
+
+app_lpm_mult_disable:
+4d93 793f800d set0 mark_lpm_mult_enable ,mark 
+4d94 20600000 rtn 
+
+module_init:
+4d95 20758000 rtn wake 
+4d96 20405b83 call le_modified_name 
+4d97 58004dda setarg module_process_idle 
+4d98 67e441f4 store 2 ,mem_cb_idle_process 
+4d99 58004dc5 setarg module_bt_conn_process 
+4d9a 67e441f2 store 2 ,mem_cb_bt_process 
+4d9b 58004dde setarg module_process_bb_event 
+4d9c 67e441f6 store 2 ,mem_cb_bb_event_process 
+4d9d 58004dc4 setarg module_le_conn_process 
+4d9e 67e441f0 store 2 ,mem_cb_le_process 
+4d9f 58004dbd setarg module_lpm_lock 
+4da0 67e441ea store 2 ,mem_cb_check_wakelock 
+4da1 58004ef4 setarg module_hci_cmd_transmit_le_notify 
+4da2 67e441fc store 2 ,mem_cb_ble_transmit 
+4da3 58005037 setarg module_hci_event_receive_spp_data 
+4da4 67e44541 store 2 ,mem_cb_receive_spp_data 
+4da5 580050ae setarg module_le_receive_data 
+4da6 67e441fa store 2 ,mem_cb_att_write 
+4da7 580050c3 setarg module_bb_event_timer 
+4da8 67e441fe store 2 ,mem_cb_event_timer 
+4da9 20404dd7 call module_spp_clear_last_transmite_clock 
+4daa 44dc4017 bpatch patch17_0 ,mem_patch17 
+4dab 20404daf call module_lpm_uart_init 
+4dac 20404dbc call module_gpio_init 
+4dad 20404c2a call check_module_disabled 
+4dae 2020504d branch module_hci_event_enter_standby_mode 
+
+module_lpm_uart_init:
+4daf 6fe44ffa fetch 2 ,ipc_m02bt_end_addr 
+4db0 67e48046 store 2 ,core_sec_readdr 
+4db1 6fe44ff8 fetch 2 ,ipc_m02bt_start_addr 
+4db2 67e48044 store 2 ,core_sec_rsaddr 
+4db3 1fe20600 copy pdata ,contru 
+4db4 6fe44ff2 fetch 2 ,ipc_bt2m0_end_addr 
+4db5 67e4804a store 2 ,core_sec_teaddr 
+4db6 6fe44ff0 fetch 2 ,ipc_bt2m0_start_addr 
+4db7 67e48048 store 2 ,core_sec_tsaddr 
+4db8 1fe21400 copy pdata ,contwu 
+4db9 20600000 rtn 
+
+module_lpm_init:
+4dba 20404daf call module_lpm_uart_init 
+4dbb 20204dd7 branch module_spp_clear_last_transmite_clock 
+
+module_gpio_init:
+4dbc 20600000 rtn 
+
+module_lpm_lock:
+4dbd 6fe24fef fetch 1 ,ipc_hold_bt 
+4dbe c000cd4b beq 1 ,app_get_lpm_wake_lock 
+4dbf 6fe24496 fetch 1 ,mem_le_pairing_state 
+4dc0 c0804dc2 bne flag_le_pairing_null ,module_lpm_lock_check_pairing 
+4dc1 20204d4d branch app_put_lpm_wake_lock 
+
+module_lpm_lock_check_pairing:
+4dc2 c07fcd4d beq flag_le_pairing_end ,app_put_lpm_wake_lock 
+4dc3 20204d4b branch app_get_lpm_wake_lock 
+
+module_le_conn_process:
+4dc4 20600000 rtn 
+
+module_bt_conn_process:
+4dc5 20404dc7 call module_spp_enter_sniff 
+4dc6 202050d3 branch module_control_air_flow 
+
+module_spp_enter_sniff:
+4dc7 20600000 rtn 
+4dc8 6fe24652 fetch 1 ,mem_ui_state_map 
+4dc9 c3024dd7 bbit0 ui_state_bt_spp_conn ,module_spp_clear_last_transmite_clock 
+4dca 44dcc017 bpatch patch17_1 ,mem_patch17 
+4dcb 58003eff setarg 0x3eff 
+4dcc 6848467f fetcht 4 ,mem_last_transmite_clock 
+4dcd 98408400 iadd temp ,temp 
+4dce 1c427e00 copy clkn_bt ,pdata 
+4dcf 98467c00 isub temp ,null 
+4dd0 24610000 nrtn positive 
+4dd1 6fe44652 fetch 2 ,mem_ui_state_map 
+4dd2 c282cdd7 bbit1 ui_state_bt_sniff ,module_spp_clear_last_transmite_clock 
+4dd3 6fe24679 fetch 1 ,mem_module_flag 
+4dd4 c3830000 rtnbit1 moudle_task_sniff 
+4dd5 204050d6 call module_set_sniff_task_flag 
+4dd6 20404d89 call app_bt_enter_sniff 
+
+module_spp_clear_last_transmite_clock:
+4dd7 1c427e00 copy clkn_bt ,pdata 
+4dd8 67e8467f store 4 ,mem_last_transmite_clock 
+4dd9 20600000 rtn 
+
+module_process_idle:
+4dda 204050d3 call module_control_air_flow 
+4ddb 20405648 call l2cap_malloc_is_fifo_full 
+4ddc 247a0000 nrtn blank 
+4ddd 20204e3d branch module_process 
+
+module_process_bb_event:
+4dde 1a627e00 copy regc ,pdata 
+4ddf c000ce2c beq bt_evt_bb_connected ,module_process_bb_conn 
+4de0 c0014dfb beq bt_evt_bb_disconnected ,module_process_bb_event_disconned 
+4de1 c0024e2f beq bt_evt_reconn_failed ,module_process_reconn_fail 
+4de2 c002ce1d beq bt_evt_setup_complete ,module_process_setup_complete 
+4de3 c0044e02 beq bt_evt_spp_connected ,module_process_spp_connected 
+4de4 c004ce08 beq bt_evt_spp_disconnected ,module_process_spp_disconnected 
+4de5 c0054e22 beq bt_evt_pincode_req ,module_process_evt_pincode_req 
+4de6 c005ce0d beq bt_evt_enter_sniff ,module_process_enter_sniff 
+4de7 c0064e1b beq bt_evt_exit_sniff ,module_process_exit_sniff 
+4de8 c009ce2f beq bt_evt_reconn_page_timeout ,module_process_page_time_out 
+4de9 c00a4e28 beq bt_evt_le_connected ,module_process_le_conn 
+4dea c00ace1f beq bt_evt_le_disconnected ,module_process_bb_even_le_disconn 
+4deb c010ce23 beq bt_evt_sniff_not_accept ,module_process_sniff_not_accept 
+4dec c011ce24 beq bt_evt_unsniff_accept ,module_process_unsniff_accept 
+4ded c0124e27 beq bt_evt_unsniff_not_accept ,module_process_unsniff_not_accept 
+4dee c0185088 beq bt_evt_le_pairing_fail ,module_hci_event_le_pairing_fail 
+4def c018d08a beq bt_evt_le_pairing_success ,module_hci_event_le_pairing_success 
+4df0 c0195098 beq bt_evt_le_start_enc ,module_hci_event_start_enc 
+4df1 c019d096 beq bt_evt_le_pause_enc ,module_hci_event_pause_enc 
+4df2 c01a5082 beq bt_evt_le_tk_generate ,module_hci_event_le_tk 
+4df3 c01ad078 beq bt_evt_bt_gkey_generate ,module_hci_event_gkey_generate 
+4df4 c01b5080 beq bt_evt_bt_get_passkey ,module_hci_event_passkey_entry_mode 
+4df5 c01bd08c beq bt_evt_bt_pairing_fail ,module_hci_event_bt_pairing_fail 
+4df6 c01c508e beq bt_evt_bt_pairing_success ,module_hci_event_bt_pairing_success 
+4df7 c01dd09f beq bt_evt_le_gkey_generate ,module_hci_event_le_gkey 
+4df8 c01ed06f beq bt_evt_store_nvram ,module_hci_event_store_device 
+4df9 c020ce30 beq bt_evt_le_ltk_lost ,module_process_ble_ltk_lost 
+4dfa 20600000 rtn 
+
+module_process_bb_event_disconned:
+4dfb 20404dd7 call module_spp_clear_last_transmite_clock 
+4dfc 6fe24637 fetch 1 ,mem_flag_pairing_state 
+4dfd 245a508c ncall module_hci_event_bt_pairing_fail ,blank 
+4dfe 20404e2f call module_disconn_start 
+4dff 6fe44652 fetch 2 ,mem_ui_state_map 
+4e00 c4020000 rtnbit0 ui_state_bt_spp_conn 
+4e01 20204e08 branch module_spp_disconnected 
+
+module_process_spp_connected:
+4e02 6fe44652 fetch 2 ,mem_ui_state_map 
+4e03 79207e04 set1 ui_state_bt_spp_conn ,pdata 
+4e04 67e44652 store 2 ,mem_ui_state_map 
+4e05 6fe2466d fetch 1 ,mem_module_spp_lpm_mult 
+4e06 67e24173 store 1 ,mem_lpm_mult 
+4e07 20205022 branch module_hci_event_spp_connect 
+
+module_process_spp_disconnected:
+
+module_spp_disconnected:
+4e08 6fe44652 fetch 2 ,mem_ui_state_map 
+4e09 c4020000 rtnbit0 ui_state_bt_spp_conn 
+4e0a 793ffe04 set0 ui_state_bt_spp_conn ,pdata 
+4e0b 67e44652 store 2 ,mem_ui_state_map 
+4e0c 20205026 branch module_hci_event_spp_disconnect 
+
+module_process_enter_sniff:
+
+module_sniff_param_check:
+4e0d 20404dd7 call module_spp_clear_last_transmite_clock 
+4e0e 6fe44042 fetch 2 ,mem_context + coffset_tsniff 
+4e0f 1fe37e00 rshift pdata ,pdata 
+4e10 684441e4 fetcht 2 ,mem_sniff_param_interval 
+4e11 98467c00 isub temp ,null 
+4e12 2422ce14 nbranch module_sniff_param_check_unsniff ,zero 
+4e13 20204d91 branch app_lpm_mult_enable 
+
+module_sniff_param_check_unsniff:
+4e14 6fe24679 fetch 1 ,mem_module_flag 
+4e15 c3828000 rtnbit1 moudle_task_unsniff 
+4e16 6fe44ffc fetch 2 ,ipc_m02bt_read_ptr 
+4e17 68444ffe fetcht 2 ,ipc_m02bt_write_ptr 
+4e18 98467c00 isub temp ,null 
+4e19 2442d0da ncall module_set_unsniff_task_flag ,zero 
+4e1a 20204d87 branch app_bt_sniff_exit 
+
+module_process_exit_sniff:
+4e1b 204050d8 call module_clear_sniff_task_flag 
+4e1c 20204d93 branch app_lpm_mult_disable 
+
+module_process_setup_complete:
+4e1d 20404dd7 call module_spp_clear_last_transmite_clock 
+4e1e 20204e32 branch module_conn_start 
+
+module_process_bb_even_le_disconn:
+4e1f 20405bf6 call le_clr_config_more_data 
+4e20 20404e2f call module_disconn_start 
+4e21 20205028 branch module_hci_event_le_disconnect 
+
+module_process_evt_pincode_req:
+4e22 20204d58 branch app_bt_set_pincode 
+
+module_process_sniff_not_accept:
+4e23 202050d8 branch module_clear_sniff_task_flag 
+
+module_process_unsniff_accept:
+4e24 6fe24679 fetch 1 ,mem_module_flag 
+4e25 c302cd89 bbit0 moudle_task_unsniff ,app_bt_enter_sniff 
+4e26 202050dc branch module_clear_unsniff_task_flag 
+
+module_process_unsniff_not_accept:
+4e27 202050dc branch module_clear_unsniff_task_flag 
+
+module_process_le_conn:
+4e28 20404e32 call module_conn_start 
+4e29 6fe2466e fetch 1 ,mem_module_le_lpm_mult 
+4e2a 67e24173 store 1 ,mem_lpm_mult 
+4e2b 20205024 branch module_hci_event_le_connect 
+
+module_process_bb_conn:
+4e2c 70463300 jam 0 ,mem_flag_mode_ssp_pin 
+4e2d 204050d8 call module_clear_sniff_task_flag 
+4e2e 202050dc branch module_clear_unsniff_task_flag 
+
+module_process_page_time_out:
+
+module_process_reconn_fail:
+
+module_disconn_start:
+4e2f 20204e8f branch module_start_adv_discovery_by_command 
+
+module_process_ble_ltk_lost:
+4e30 204060aa call le_send_reject_ind 
+4e31 20205ee2 branch le_send_smp_security_request 
+
+module_conn_start:
+4e32 20204e33 branch module_stop_adv_discovery 
+
+module_stop_adv_discovery:
+4e33 6fe2466c fetch 1 ,mem_module_state 
+4e34 2feffe00 isolate1 moudle_state_bt_bit ,pdata 
+4e35 2040cd6b call app_bt_stop_discovery ,true 
+4e36 6fe2466c fetch 1 ,mem_module_state 
+4e37 2feffe01 isolate1 moudle_state_ble_bit ,pdata 
+4e38 2040cd73 call app_ble_stop_adv ,true 
+4e39 20600000 rtn 
+
+module_process_with_credit:
+4e3a 6fe2453d fetch 1 ,mem_credit_flag 
+4e3b c1000000 rtneq credit_disable 
+4e3c 20206ae9 branch rfcomm_send_uih_without_payload 
+
+module_process:
+4e3d 6fe44ffc fetch 2 ,ipc_m02bt_read_ptr 
+4e3e 68444ffe fetcht 2 ,ipc_m02bt_write_ptr 
+4e3f 98467c00 isub temp ,null 
+4e40 2022ce3a branch module_process_with_credit ,zero 
+4e41 204067f7 call uartd_prepare_rx 
+4e42 efe20003 ifetch 1 ,contru 
+4e43 c080ce4e bne 0x01 ,module_hci_in_excp 
+4e44 efe20003 ifetch 1 ,contru 
+4e45 67e20aff store 1 ,mem_module_uart_opcode 
+4e46 e8420003 ifetcht 1 ,contru 
+4e47 18622200 copy contru ,rega 
+4e48 60420b00 storet 1 ,mem_module_uart_len 
+4e49 700b0101 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+4e4a 20404e5a call module_hci_cmd_control 
+4e4b 6fe20b01 fetch 1 ,mem_module_temp_nl_discard_packet 
+4e4c c1000000 rtneq hci_not_discard_packet 
+4e4d 20204e55 branch module_hci_dicard_packet 
+
+module_hci_in_excp:
+4e4e 20407c9c call delay_10ms 
+4e4f 2040507e call module_hci_event_invalid_packet 
+4e50 20204e51 branch module_hci_release_except 
+
+module_hci_release_except:
+4e51 44dd4017 bpatch patch17_2 ,mem_patch17 
+4e52 6fe44ffe fetch 2 ,ipc_m02bt_write_ptr 
+4e53 67e44ffc store 2 ,ipc_m02bt_read_ptr 
+4e54 20600000 rtn 
+
+module_hci_dicard_packet:
+4e55 204067f7 call uartd_prepare_rx 
+4e56 18608602 increase 2 ,contru 
+4e57 efe20003 ifetch 1 ,contru 
+4e58 98608600 iadd contru ,contru 
+
+module_hci_dicard_bytes:
+4e59 202067f3 branch uartd_rxdone 
+
+module_hci_cmd_control:
+4e5a 44ddc017 bpatch patch17_3 ,mem_patch17 
+4e5b 6fe20aff fetch 1 ,mem_module_uart_opcode 
+4e5c c0004e7c beq hci_cmd_set_bt_addr_req ,module_hci_cmd_set_bt_addr 
+4e5d c000ce81 beq hci_cmd_set_le_addr_req ,module_hci_cmd_set_le_addr 
+4e5e c0014e86 beq hci_cmd_set_visibility_req ,module_hci_cmd_set_visibility 
+4e5f c001ce9c beq hci_cmd_set_bt_name_req ,module_hci_cmd_set_bt_name 
+4e60 c0024ea8 beq hci_cmd_set_le_name_req ,module_hci_cmd_set_le_name 
+4e61 c002ceb2 beq hci_cmd_spp_data_req ,module_hci_cmd_receive_spp_data 
+4e62 c004ced7 beq hci_cmd_le_data_req ,module_hci_cmd_receive_le_data 
+4e63 c005cf14 beq hci_cmd_status_irq ,module_hci_cmd_inquire_status 
+4e64 c0064f15 beq hci_cmd_set_pairing_req ,module_hci_cmd_set_pairing_mode 
+4e65 c006cf29 beq hci_cmd_set_pincode_req ,module_hci_cmd_set_pincode 
+4e66 c0084f31 beq hci_cmd_version_req ,module_hci_cmd_version_request 
+4e67 c008cf39 beq hci_cmd_bt_disconnect ,module_hci_cmd_bt_disconnect 
+4e68 c0094f3d beq hci_cmd_ble_disconnect ,module_hci_cmd_ble_disconnect 
+4e69 c0134f41 beq hci_cmd_set_nvram_req ,module_hci_cmd_set_nvram 
+4e6a c0144f48 beq hci_cmd_confirm_gkey ,module_hci_cmd_confirm_gkey 
+4e6b c014cf58 beq hci_cmd_set_credit_given ,module_hci_cmd_set_credit_given 
+4e6c c0154f61 beq hci_cmd_auto_adv_scan ,module_hci_cmd_auto_adv 
+4e6d c0184f94 beq hci_cmd_passkey_entry ,module_hci_cmd_passkey_entry 
+4e6e c019cf9a beq hci_cmd_le_set_pairing ,module_hci_cmd_le_set_pairing_mode 
+4e6f c01a4fbd beq hci_cmd_le_set_adv_data ,module_hci_cmd_le_set_adv_data 
+4e70 c01acfc6 beq hci_cmd_le_set_scan_data ,module_hci_cmd_le_set_scan_data 
+4e71 c01b4fcf beq hci_cmd_le_send_conn_update_req ,module_hci_cmd_le_send_conn_update_req 
+4e72 c01bcfd9 beq hci_cmd_le_set_adv_parm ,module_hci_cmd_set_le_adv_parameter 
+4e73 c01c4fdc beq hci_cmd_le_start_pairing ,module_hci_cmd_le_start_pairing 
+4e74 c0214fe4 beq hci_cmd_set_tx_power ,module_hci_cmd_set_tx_power 
+4e75 c0244fe9 beq hci_cmd_le_confirm_gkey ,module_hci_cmd_le_confirm_gkey 
+4e76 c024cff4 beq hci_cmd_reject_justwork ,module_hci_cmd_set_reject_justwork_flag 
+4e77 c028cffa beq hci_cmd_reset_chip_req ,module_hci_cmd_reset_chip 
+4e78 c030cffd beq hci_cmd_le_set_fixed_passkey ,module_hci_cmd_le_set_fixed_passkey 
+4e79 c07fd00c beq hci_test_cmd_close_lpm ,module_hci_test_cmde_close_lpm 
+4e7a c077500f beq hci_test_cmd_reback ,module_hci_test_cmd_reback 
+4e7b 2020501c branch module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_set_bt_addr:
+4e7c 6fe20b00 fetch 1 ,mem_module_uart_len 
+4e7d c083501c bne 6 ,module_hci_event_receive_invalid_cmd 
+4e7e efec0003 ifetch 6 ,contru 
+4e7f 67ec40a0 store 6 ,mem_lap 
+4e80 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_le_addr:
+4e81 6fe20b00 fetch 1 ,mem_module_uart_len 
+4e82 c083501c bne 6 ,module_hci_event_receive_invalid_cmd 
+4e83 efec0003 ifetch 6 ,contru 
+4e84 67ec4472 store 6 ,mem_le_lap 
+4e85 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_visibility:
+4e86 6fe20b00 fetch 1 ,mem_module_uart_len 
+4e87 c080d01c bne 1 ,module_hci_event_receive_invalid_cmd 
+4e88 1a220600 copy rega ,contru 
+4e89 2040501f call module_hci_event_receive_valid_cmd 
+4e8a e8420003 ifetcht 1 ,contru 
+4e8b 6042466f storet 1 ,mem_module_bluetooth_stauts_by_command 
+4e8c 6fe44652 fetch 2 ,mem_ui_state_map 
+4e8d c3848000 rtnbit1 ui_state_ble_connected 
+4e8e c3800000 rtnbit1 ui_state_bt_connected 
+
+module_start_adv_discovery_by_command:
+4e8f 6fe2466c fetch 1 ,mem_module_state 
+4e90 2feffe00 isolate1 moudle_state_bt_bit ,pdata 
+4e91 2420ce95 nbranch moudle_start_adv_by_command ,true 
+4e92 6842466f fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+4e93 18417e03 and temp ,0x03 ,pdata 
+4e94 67e24093 store 1 ,mem_scan_mode 
+
+moudle_start_adv_by_command:
+4e95 6fe2466c fetch 1 ,mem_module_state 
+4e96 2feffe01 isolate1 moudle_state_ble_bit ,pdata 
+4e97 24608000 nrtn true 
+4e98 6842466f fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+4e99 284ffe02 isolate1 2 ,temp 
+4e9a 2020cd75 branch app_ble_start_adv ,true 
+4e9b 20204d73 branch app_ble_stop_adv 
+
+module_hci_cmd_set_bt_name:
+4e9c 6fe20b00 fetch 1 ,mem_module_uart_len 
+4e9d 1fe67c43 sub pdata ,67 ,null 
+4e9e 2421501c nbranch module_hci_event_receive_invalid_cmd ,positive 
+4e9f 67e244e7 store 1 ,mem_local_name_length 
+4ea0 df200008 arg 8 ,loopcnt 
+4ea1 20407ca1 call memset0 
+4ea2 6fe20b00 fetch 1 ,mem_module_uart_len 
+4ea3 1fe27200 copy pdata ,loopcnt 
+4ea4 1a220600 copy rega ,contru 
+4ea5 d8a044e8 arg mem_local_name ,contw 
+4ea6 204067da call uart_copy_rx_bytes_fast 
+4ea7 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_le_name:
+4ea8 6fe20b00 fetch 1 ,mem_module_uart_len 
+4ea9 1fe67c1d sub pdata ,29 ,null 
+4eaa 2421501c nbranch module_hci_event_receive_invalid_cmd ,positive 
+4eab 67e24381 store 1 ,mem_le_name_len 
+4eac 1fe27200 copy pdata ,loopcnt 
+4ead 1a220600 copy rega ,contru 
+4eae d8a04382 arg mem_le_name ,contw 
+4eaf 204067da call uart_copy_rx_bytes_fast 
+4eb0 20405b83 call le_modified_name 
+4eb1 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_receive_spp_data:
+4eb2 6fe24652 fetch 1 ,mem_ui_state_map 
+4eb3 c302501c bbit0 ui_state_bt_spp_conn ,module_hci_event_receive_invalid_cmd 
+4eb4 20404d45 call app_check_sniff 
+4eb5 2020cec3 branch module_hci_cmd_spp_exit_sniff ,true 
+4eb6 700b0100 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+4eb7 20404dd7 call module_spp_clear_last_transmite_clock 
+4eb8 6fe2453a fetch 1 ,mem_remote_credits 
+4eb9 207a0000 rtn blank 
+4eba 6fe44545 fetch 2 ,mem_nl_rx_len_all 
+4ebb c0804ec1 bne 0 ,module_hci_cmd_pass_init_ng_rx_len_all 
+4ebc 6fe20b00 fetch 1 ,mem_module_uart_len 
+4ebd 67e44545 store 2 ,mem_nl_rx_len_all 
+4ebe 1a220600 copy rega ,contru 
+4ebf 18627e00 copy contru ,pdata 
+4ec0 67e44543 store 2 ,mem_nl_rx_data_src 
+
+module_hci_cmd_pass_init_ng_rx_len_all:
+4ec1 20404ec5 call module_hci_cmd_get_current_packet_len_and_remain_len 
+4ec2 20206b0c branch spp_tx_rfcomm_packet 
+
+module_hci_cmd_spp_exit_sniff:
+4ec3 700b0100 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+4ec4 202050bd branch module_exit_sniff 
+
+module_hci_cmd_get_current_packet_len_and_remain_len:
+4ec5 20404ecb call module_hci_cmd_get_current_patcket_len 
+4ec6 6fe44545 fetch 2 ,mem_nl_rx_len_all 
+4ec7 6844466a fetcht 2 ,mem_current_packet_length 
+4ec8 98467e00 isub temp ,pdata 
+4ec9 67e44545 store 2 ,mem_nl_rx_len_all 
+4eca 20600000 rtn 
+
+module_hci_cmd_get_current_patcket_len:
+4ecb 6fe44545 fetch 2 ,mem_nl_rx_len_all 
+4ecc d84000e6 arg nl_rfcomm_buff_len ,temp 
+4ecd 20407db5 call not_greater_than 
+4ece 6844453e fetcht 2 ,mem_rfcomm_max_frame_size 
+4ecf 20407db5 call not_greater_than 
+4ed0 68444530 fetcht 2 ,mem_pn_max_frame_size 
+4ed1 20407db5 call not_greater_than 
+4ed2 67e4466a store 2 ,mem_current_packet_length 
+4ed3 20600000 rtn 
+
+module_hci_command_tx_spp_tx_complete:
+4ed4 700b0101 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+4ed5 700aff05 jam hci_cmd_spp_data_req ,mem_module_uart_opcode 
+4ed6 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_receive_le_data:
+4ed7 6fe44652 fetch 2 ,mem_ui_state_map 
+4ed8 c304d01c bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+4ed9 20404f11 call module_check_ble_encrypt_state 
+4eda 2034501c branch module_hci_event_receive_invalid_cmd ,user 
+4edb 700b0100 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+4edc 6fe24679 fetch 1 ,mem_module_flag 
+4edd c2824ef1 bbit1 module_flag_ble_data_finish ,module_hci_cmd_receive_le_data_finish 
+4ede 6fe2467a fetch 1 ,mem_module_hci_notify_len 
+4edf 247a0000 nrtn blank 
+4ee0 700b0101 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+4ee1 efe40003 ifetch 2 ,contru 
+4ee2 67e4467b store 2 ,mem_module_hci_notify_handle 
+4ee3 18627e00 copy contru ,pdata 
+4ee4 67e4467d store 2 ,mem_module_hci_nofiy_addr 
+4ee5 6fe20b00 fetch 1 ,mem_module_uart_len 
+4ee6 1fe0fffe pincrease -2 
+4ee7 2421501c nbranch module_hci_event_receive_invalid_cmd ,positive 
+4ee8 2022d01c branch module_hci_event_receive_invalid_cmd ,zero 
+4ee9 67e2467a store 1 ,mem_module_hci_notify_len 
+4eea 700b0100 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+4eeb 20405bf4 call le_set_config_more_data 
+4eec 20404ef4 call module_hci_cmd_transmit_le_notify 
+4eed 20404ef4 call module_hci_cmd_transmit_le_notify 
+4eee 20404ef4 call module_hci_cmd_transmit_le_notify 
+4eef 6fe24679 fetch 1 ,mem_module_flag 
+4ef0 c4020000 rtnbit0 module_flag_ble_data_finish 
+
+module_hci_cmd_receive_le_data_finish:
+4ef1 700b0101 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+4ef2 204050e0 call module_clear_le_tx_data_flag 
+4ef3 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_transmit_le_notify:
+4ef4 6fe2467a fetch 1 ,mem_module_hci_notify_len 
+4ef5 207a0000 rtn blank 
+4ef6 20405c72 call le_fifo_check_nearly_full 
+4ef7 247a0000 nrtn blank 
+4ef8 20404f0c call module_get_le_remote_mtu 
+4ef9 44de4017 bpatch patch17_4 ,mem_patch17 
+4efa 1840fffd add temp ,-3 ,pdata 
+4efb 6842467a fetcht 1 ,mem_module_hci_notify_len 
+4efc 20407db5 call not_greater_than 
+4efd 1fe22200 copy pdata ,rega 
+4efe 18427e00 copy temp ,pdata 
+4eff 9a267e00 isub rega ,pdata 
+4f00 67e2467a store 1 ,mem_module_hci_notify_len 
+4f01 6844467b fetcht 2 ,mem_module_hci_notify_handle 
+4f02 20405e44 call le_att_malloc_tx_notify 
+4f03 6fe4467d fetch 2 ,mem_module_hci_nofiy_addr 
+4f04 1fe20600 copy pdata ,contru 
+4f05 1a227200 copy rega ,loopcnt 
+4f06 204067da call uart_copy_rx_bytes_fast 
+4f07 18627e00 copy contru ,pdata 
+4f08 67e4467d store 2 ,mem_module_hci_nofiy_addr 
+4f09 6fe2467a fetch 1 ,mem_module_hci_notify_len 
+4f0a 247a0000 nrtn blank 
+4f0b 202050de branch module_set_le_tx_data_flag 
+
+module_get_le_remote_mtu:
+4f0c d8400017 arg 0x17 ,temp 
+4f0d 6fe24679 fetch 1 ,mem_module_flag 
+4f0e c3808000 rtnbit1 module_flag_ble_send_mtu23 
+4f0f 6844447a fetcht 2 ,mem_le_remote_mtu 
+4f10 20600000 rtn 
+
+module_check_ble_encrypt_state:
+4f11 6fe24679 fetch 1 ,mem_module_flag 
+4f12 c2815e22 bbit1 module_flag_ble_data_encrypt ,le_check_encrypt_state 
+4f13 20207dc1 branch disable_user 
+
+module_hci_cmd_inquire_status:
+4f14 20205051 branch module_hci_event_status_res 
+
+module_hci_cmd_set_pairing_mode:
+4f15 1a220600 copy rega ,contru 
+4f16 efe20003 ifetch 1 ,contru 
+4f17 c0004f1c beq pairing_pincode ,module_hci_pairing_pincode_mode 
+4f18 c000cf1f beq pairing_justwork ,module_hci_pairing_just_work_mode 
+4f19 c0014f25 beq pairing_passkey ,module_hci_pairing_passkey 
+4f1a c001cf27 beq pairing_confirm ,module_hci_pairing_numeric_comparison 
+4f1b 2020501c branch module_hci_event_receive_invalid_cmd 
+
+module_hci_pairing_pincode_mode:
+4f1c 2040650d call ssp_disable 
+4f1d 70462c00 jam 0 ,mem_ssp_enable 
+4f1e 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_pairing_just_work_mode:
+4f1f 58040003 setarg ssp_mode_just_work_io_cap_data 
+
+module_hci_sspairing_mode:
+4f20 67e6462d store 3 ,mem_sp_iocap_local 
+4f21 67e24634 store 1 ,mem_ssp_mode_flag 
+4f22 20406506 call ssp_enable 
+4f23 70462c01 jam 1 ,mem_ssp_enable 
+4f24 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_pairing_passkey:
+4f25 58040002 setarg ssp_mode_passkey_io_cap_data 
+4f26 20204f20 branch module_hci_sspairing_mode 
+
+module_hci_pairing_numeric_comparison:
+4f27 58040001 setarg ssp_mode_ssp_pin_io_cap_data 
+4f28 20204f20 branch module_hci_sspairing_mode 
+
+module_hci_cmd_set_pincode:
+4f29 6fe20b00 fetch 1 ,mem_module_uart_len 
+4f2a 1fe67c10 sub pdata ,16 ,null 
+4f2b 2421501c nbranch module_hci_event_receive_invalid_cmd ,positive 
+4f2c 67e24657 store 1 ,mem_pin_length 
+4f2d 1fe27200 copy pdata ,loopcnt 
+4f2e d8a04658 arg mem_pin ,contw 
+4f2f 204067ed call uart_copy_rx_bytes 
+4f30 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_version_request:
+4f31 da200002 arg 2 ,rega 
+4f32 da404668 arg mem_soft_version_num ,regb 
+4f33 d8400000 arg 0 ,temp 
+4f34 2020502a branch module_hci_event_set_cmd 
+
+module_hci_event_set_cmd_send_response:
+4f35 67e40abe store 2 ,mem_event_cmd_response_content 
+4f36 da400abe arg mem_event_cmd_response_content ,regb 
+4f37 d8400000 arg 0 ,temp 
+4f38 2020502a branch module_hci_event_set_cmd 
+
+module_hci_cmd_bt_disconnect:
+4f39 6fe44652 fetch 2 ,mem_ui_state_map 
+4f3a c300501c bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_bt_disconnect_doing:
+4f3b 2040501f call module_hci_event_receive_valid_cmd 
+4f3c 20204d64 branch app_bt_disconnect 
+
+module_hci_cmd_ble_disconnect:
+4f3d 6fe44652 fetch 2 ,mem_ui_state_map 
+4f3e c304d01c bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_ble_disconnect_doing:
+4f3f 2040501f call module_hci_event_receive_valid_cmd 
+4f40 20204d7d branch app_ble_disconnect 
+
+module_hci_cmd_set_nvram:
+4f41 6fe20b00 fetch 1 ,mem_module_uart_len 
+4f42 1fe27200 copy pdata ,loopcnt 
+4f43 1a220600 copy rega ,contru 
+4f44 6fe44214 fetch 2 ,mem_nv_data_ptr 
+4f45 1fe20a00 icopy contw 
+4f46 204067da call uart_copy_rx_bytes_fast 
+4f47 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_confirm_gkey:
+4f48 6fe24652 fetch 1 ,mem_ui_state_map 
+4f49 c300501c bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+4f4a efe20003 ifetch 1 ,contru 
+4f4b 68424633 fetcht 1 ,mem_flag_mode_ssp_pin 
+4f4c 793a0400 setflag blank ,flag_mode_ssp_pin_comparison_result_bit ,temp 
+4f4d 79200407 set1 flag_mode_ssp_pin_reviceve_comparison_bit ,temp 
+4f4e 60424633 storet 1 ,mem_flag_mode_ssp_pin 
+4f4f 2040501f call module_hci_event_receive_valid_cmd 
+4f50 6fe24633 fetch 1 ,mem_flag_mode_ssp_pin 
+4f51 c2834f56 bbit1 flag_mode_ssp_pin_recieve_dhkey_bit ,module_hci_cmd_spp_number_comparison_result_is1 
+4f52 20600000 rtn 
+
+dhkey_not_accept:
+4f53 70463300 jam 0 ,mem_flag_mode_ssp_pin 
+4f54 700a9521 jam bt_cmd_dhkey_not_accept ,mem_fifo_temp 
+4f55 20207bb4 branch ui_ipc_send_cmd 
+
+module_hci_cmd_spp_number_comparison_result_is1:
+4f56 c2806377 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+4f57 20204f53 branch dhkey_not_accept 
+
+module_hci_cmd_set_credit_given:
+4f58 6fe24652 fetch 1 ,mem_ui_state_map 
+4f59 c4020000 rtnbit0 ui_state_bt_spp_conn 
+4f5a 6fe2453d fetch 1 ,mem_credit_flag 
+4f5b c1000000 rtneq credit_disable 
+4f5c efe20003 ifetch 1 ,contru 
+4f5d 6842453b fetcht 1 ,mem_credit_given 
+4f5e 98408400 iadd temp ,temp 
+4f5f 6042453b storet 1 ,mem_credit_given 
+4f60 20600000 rtn 
+
+module_hci_cmd_auto_adv:
+4f61 df200040 arg 0x40 ,loopcnt 
+4f62 d8a04341 arg mem_le_adv_data_len ,contw 
+4f63 20407caf call clear_mem 
+4f64 58000000 setarg 0 
+4f65 67e20aae store 1 ,mem_regb 
+4f66 1a220600 copy rega ,contru 
+
+module_hci_cmd_auto_adv_loop:
+4f67 18627e00 copy contru ,pdata 
+4f68 67e40ab2 store 2 ,mem_regc 
+4f69 20404f8f call module_hci_cmd_auto_adv_adv_analys 
+4f6a 6fe20aae fetch 1 ,mem_regb 
+4f6b 68420a9e fetcht 1 ,mem_temp 
+4f6c 18408401 increase 1 ,temp 
+4f6d 9840fe00 iadd temp ,pdata 
+4f6e 67e20aae store 1 ,mem_regb 
+4f6f 1fe67c1f sub pdata ,31 ,null 
+4f70 24214f7b nbranch module_hci_cmd_auto_adv_store_scan ,positive 
+
+module_hci_cmd_auto_adv_store_adv:
+4f71 68424341 fetcht 1 ,mem_le_adv_data_len 
+4f72 58004342 setarg mem_le_adv_data 
+4f73 9840fe00 iadd temp ,pdata 
+4f74 67e40ab7 store 2 ,mem_contw 
+4f75 68420a9e fetcht 1 ,mem_temp 
+4f76 18408401 increase 1 ,temp 
+4f77 6fe24341 fetch 1 ,mem_le_adv_data_len 
+4f78 9840fe00 iadd temp ,pdata 
+4f79 67e24341 store 1 ,mem_le_adv_data_len 
+4f7a 20204f84 branch module_hci_cmd_auto_adv_store_common 
+
+module_hci_cmd_auto_adv_store_scan:
+4f7b 68424361 fetcht 1 ,mem_le_scan_data_len 
+4f7c 58004362 setarg mem_le_scan_data 
+4f7d 9840fe00 iadd temp ,pdata 
+4f7e 67e40ab7 store 2 ,mem_contw 
+4f7f 68420a9e fetcht 1 ,mem_temp 
+4f80 18408401 increase 1 ,temp 
+4f81 6fe24361 fetch 1 ,mem_le_scan_data_len 
+4f82 9840fe00 iadd temp ,pdata 
+4f83 67e24361 store 1 ,mem_le_scan_data_len 
+
+module_hci_cmd_auto_adv_store_common:
+4f84 6fe40ab7 fetch 2 ,mem_contw 
+4f85 1fe20a00 copy pdata ,contw 
+4f86 6fe40ab2 fetch 2 ,mem_regc 
+4f87 1fe20600 copy pdata ,contru 
+4f88 18427200 copy temp ,loopcnt 
+4f89 204067da call uart_copy_rx_bytes_fast 
+4f8a 6fe20b00 fetch 1 ,mem_module_uart_len 
+4f8b 68420aae fetcht 1 ,mem_regb 
+4f8c 98467c00 isub temp ,null 
+4f8d 2422cf67 nbranch module_hci_cmd_auto_adv_loop ,zero 
+4f8e 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_auto_adv_adv_analys:
+4f8f efe20003 ifetch 1 ,contru 
+4f90 67e20a9e store 1 ,mem_temp 
+4f91 efe20003 ifetch 1 ,contru 
+4f92 67e20aaa store 1 ,mem_rega 
+4f93 20600000 rtn 
+
+module_hci_cmd_passkey_entry:
+4f94 efe80003 ifetch 4 ,contru 
+4f95 67e84658 store 4 ,mem_pin 
+4f96 70465704 jam 4 ,mem_pin_length 
+4f97 70463500 jam 0 ,mem_authentication_passkey_times 
+4f98 2040501f call module_hci_event_receive_valid_cmd 
+4f99 20206313 branch authentication_passkey 
+
+module_hci_cmd_le_set_pairing_mode:
+4f9a 1a220600 copy rega ,contru 
+4f9b efe20003 ifetch 1 ,contru 
+4f9c 1fe20400 copy pdata ,temp 
+4f9d c040cfa5 beq le_pairing_mode_secure_connect_justwork ,module_le_set_pairing_mode_secure_justwork 
+4f9e c0414faa beq le_pairing_mode_secure_connect_numeric ,module_le_set_pairing_mode_secure_numeric 
+4f9f c041cfb0 beq le_pairing_mode_secure_connect_passkey ,module_le_set_pairing_mode_secure_passkey 
+4fa0 67e24498 store 1 ,mem_le_pairing_mode 
+4fa1 c0004fb5 beq le_pairing_mode_none ,module_le_set_no_pairing 
+4fa2 c000cfb8 beq le_pairing_mode_lagacy_justwork ,module_le_set_pairing_mode_lagacy_just_work 
+4fa3 c0014fba beq le_pairing_mode_lagacy_passkey ,module_le_set_pairing_mode_lagacy_passkey 
+4fa4 2020501c branch module_hci_event_receive_invalid_cmd 
+
+module_le_set_pairing_mode_secure_justwork:
+4fa5 6fe24490 fetch 1 ,mem_le_secure_connect_enable 
+4fa6 203a501c branch module_hci_event_receive_invalid_cmd ,blank 
+4fa7 60424498 storet 1 ,mem_le_pairing_mode 
+4fa8 7044280d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+4fa9 20204fb6 branch module_le_set_noinputnooutput 
+
+module_le_set_pairing_mode_secure_numeric:
+4faa 6fe24490 fetch 1 ,mem_le_secure_connect_enable 
+4fab 203a501c branch module_hci_event_receive_invalid_cmd ,blank 
+4fac 60424498 storet 1 ,mem_le_pairing_mode 
+4fad 7044280d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+4fae 70442601 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+4faf 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_le_set_pairing_mode_secure_passkey:
+4fb0 6fe24490 fetch 1 ,mem_le_secure_connect_enable 
+4fb1 203a501c branch module_hci_event_receive_invalid_cmd ,blank 
+4fb2 60424498 storet 1 ,mem_le_pairing_mode 
+4fb3 7044280d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+4fb4 20204fbb branch module_le_set_displayonly 
+
+module_le_set_no_pairing:
+4fb5 70442800 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+
+module_le_set_noinputnooutput:
+4fb6 70442603 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+4fb7 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_le_set_pairing_mode_lagacy_just_work:
+4fb8 70442805 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+4fb9 20204fb6 branch module_le_set_noinputnooutput 
+
+module_le_set_pairing_mode_lagacy_passkey:
+4fba 70442805 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+
+module_le_set_displayonly:
+4fbb 70442600 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+4fbc 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_set_adv_data:
+4fbd 6fe20b00 fetch 1 ,mem_module_uart_len 
+4fbe 1fe67c1f sub pdata ,31 ,null 
+4fbf 2421501c nbranch module_hci_event_receive_invalid_cmd ,positive 
+4fc0 67e24341 store 1 ,mem_le_adv_data_len 
+4fc1 1fe27200 copy pdata ,loopcnt 
+4fc2 1a220600 copy rega ,contru 
+4fc3 d8a04342 arg mem_le_adv_data ,contw 
+4fc4 204067da call uart_copy_rx_bytes_fast 
+4fc5 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_set_scan_data:
+4fc6 6fe20b00 fetch 1 ,mem_module_uart_len 
+4fc7 1fe67c1f sub pdata ,31 ,null 
+4fc8 2421501c nbranch module_hci_event_receive_invalid_cmd ,positive 
+4fc9 67e24361 store 1 ,mem_le_scan_data_len 
+4fca 1fe27200 copy pdata ,loopcnt 
+4fcb 1a220600 copy rega ,contru 
+4fcc d8a04362 arg mem_le_scan_data ,contw 
+4fcd 204067da call uart_copy_rx_bytes_fast 
+4fce 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_send_conn_update_req:
+4fcf 6fe44652 fetch 2 ,mem_ui_state_map 
+4fd0 c304d01c bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+4fd1 6fe20b00 fetch 1 ,mem_module_uart_len 
+4fd2 c084501c bne 0x08 ,module_hci_event_receive_invalid_cmd 
+4fd3 1a220600 copy rega ,contru 
+4fd4 eff00003 ifetch 8 ,contru 
+4fd5 67f04468 store 8 ,mem_le_interval_min 
+4fd6 700a9512 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+4fd7 20407bb4 call ui_ipc_send_cmd 
+4fd8 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_le_adv_parameter:
+4fd9 efe40003 ifetch 2 ,contru 
+4fda 67e44454 store 2 ,mem_le_adv_interval 
+4fdb 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_start_pairing:
+4fdc 6fe24498 fetch 1 ,mem_le_pairing_mode 
+4fdd 203a501c branch module_hci_event_receive_invalid_cmd ,blank 
+4fde 6fe24496 fetch 1 ,mem_le_pairing_state 
+4fdf c080501c bne flag_le_pairing_null ,module_hci_event_receive_invalid_cmd 
+4fe0 6fe24497 fetch 1 ,mem_le_enc_state 
+4fe1 c080501c bne flag_le_enc_null ,module_hci_event_receive_invalid_cmd 
+4fe2 20407c3d call check_51cmd_le_smp_sec_req 
+4fe3 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_tx_power:
+4fe4 6fe20b00 fetch 1 ,mem_module_uart_len 
+4fe5 c080d01c bne 0x01 ,module_hci_event_receive_invalid_cmd 
+4fe6 efe20003 ifetch 1 ,contru 
+4fe7 67e241df store 1 ,mem_tx_power 
+4fe8 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_confirm_gkey:
+4fe9 efe20003 ifetch 1 ,contru 
+4fea c000cff2 beq 0x01 ,module_hci_cmd_le_confirm_gkey_fail 
+4feb 6fe24493 fetch 1 ,mem_le_secure_connect_state 
+4fec c001cff0 beq le_sc_stat_send_public_key ,module_hci_cmd_le_confirm_gkey_ok 
+4fed c0034ff0 beq le_sc_stat_receive_dhkey ,module_hci_cmd_le_confirm_gkey_ok 
+4fee c003cff0 beq le_sc_stat_wait_confirm_gkey ,module_hci_cmd_le_confirm_gkey_ok 
+4fef 2020501c branch module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_le_confirm_gkey_ok:
+4ff0 70449401 jam flag_le_sc_confrim_gkey_ok ,mem_le_sc_confirm_gkey_flag 
+4ff1 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_confirm_gkey_fail:
+4ff2 20405f33 call le_send_pairing_confirm_value_failed 
+4ff3 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_reject_justwork_flag:
+4ff4 6fe20b00 fetch 1 ,mem_module_uart_len 
+4ff5 c080d01c bne 0x01 ,module_hci_event_receive_invalid_cmd 
+4ff6 2040501f call module_hci_event_receive_valid_cmd 
+4ff7 efe20003 ifetch 1 ,contru 
+4ff8 203a64ad branch classic_bt_clr_reject_justwork_flag ,blank 
+4ff9 202064ab branch classic_bt_set_reject_justwork_flag 
+
+module_hci_cmd_reset_chip:
+4ffa 2040501f call module_hci_event_receive_valid_cmd 
+4ffb 70801001 hjam 0x01 ,core_reset 
+4ffc 20204a8d branch loop 
+
+module_hci_cmd_le_set_fixed_passkey:
+4ffd 6fe20b00 fetch 1 ,mem_module_uart_len 
+4ffe c000501c beq 0 ,module_hci_event_receive_invalid_cmd 
+4fff efe20003 ifetch 1 ,contru 
+5000 203a500a branch module_hci_cmd_le_set_random_passkey ,blank 
+5001 6fe20b00 fetch 1 ,mem_module_uart_len 
+5002 c082d01c bne 5 ,module_hci_event_receive_invalid_cmd 
+5003 efe80003 ifetch 4 ,contru 
+5004 d84f4240 arg 1000000 ,temp 
+5005 98467c00 isub temp ,null 
+5006 2021501c branch module_hci_event_receive_invalid_cmd ,positive 
+5007 67e84499 store 4 ,mem_le_tk 
+5008 20405bec call le_set_config_fixed_tk 
+5009 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_set_random_passkey:
+500a 20405bee call le_clr_config_fixed_tk 
+500b 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_test_cmde_close_lpm:
+500c efe20003 ifetch 1 ,contru 
+500d 67e24091 store 1 ,mem_lpm_mode 
+500e 2020501f branch module_hci_event_receive_valid_cmd 
+
+module_hci_test_cmd_reback:
+500f 6fe20b00 fetch 1 ,mem_module_uart_len 
+5010 204050a5 call module_hci_prepare_tx 
+5011 6fe20b00 fetch 1 ,mem_module_uart_len 
+5012 1fe27200 copy pdata ,loopcnt 
+5013 1a220600 copy rega ,contru 
+5014 20405016 call copy_tx_bytes 
+5015 202067b9 branch uartd_send 
+
+copy_tx_bytes:
+5016 1f227e00 deposit loopcnt 
+5017 207a0000 rtn blank 
+
+copy_tx_bytes_loop:
+5018 efe20003 ifetch 1 ,contru 
+5019 e7e2000a istore 1 ,contwu 
+501a c2005018 loop copy_tx_bytes_loop 
+501b 20600000 rtn 
+
+module_hci_event_receive_invalid_cmd:
+501c d8400001 arg 1 ,temp 
+501d da200000 arg 0 ,rega 
+501e 2020502a branch module_hci_event_set_cmd 
+
+module_hci_event_receive_valid_cmd:
+501f d8400000 arg 0 ,temp 
+5020 da200000 arg 0 ,rega 
+5021 2020502a branch module_hci_event_set_cmd 
+
+module_hci_event_spp_connect:
+5022 700aff00 jam hci_event_spp_conn_rep ,mem_module_uart_opcode 
+5023 2020504e branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_le_connect:
+5024 700aff02 jam hci_event_le_conn_rep ,mem_module_uart_opcode 
+5025 2020504e branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_spp_disconnect:
+5026 700aff03 jam hci_event_spp_dis_rep ,mem_module_uart_opcode 
+5027 2020504e branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_le_disconnect:
+5028 700aff05 jam hci_event_le_dis_rep ,mem_module_uart_opcode 
+5029 2020504e branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_set_cmd:
+502a 6fe20aff fetch 1 ,mem_module_uart_opcode 
+502b 1fe22600 copy pdata ,regc 
+502c 700aff06 jam hci_event_cmd_res ,mem_module_uart_opcode 
+502d 58000002 setarg 2 
+502e 9a20fe00 iadd rega ,pdata 
+502f 204050a5 call module_hci_prepare_tx 
+5030 1a627e00 copy regc ,pdata 
+5031 e7e2000a istore 1 ,contwu 
+5032 e042000a istoret 1 ,contwu 
+5033 1a227200 copy rega ,loopcnt 
+5034 1a420c00 copy regb ,contr 
+5035 204067d4 call uart_copy_tx_bytes 
+5036 202067b9 branch uartd_send 
+
+module_hci_event_receive_spp_data:
+5037 20404dd7 call module_spp_clear_last_transmite_clock 
+5038 700aff07 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
+5039 6fe204fb fetch 1 ,mem_current_length 
+503a 207a0000 rtn blank 
+503b 204050a5 call module_hci_prepare_tx 
+503c 6fe204fb fetch 1 ,mem_current_length 
+503d 1fe27200 copy pdata ,loopcnt 
+503e 6fe404fd fetch 2 ,mem_rfcomm_uih_payload_ptr 
+503f 1fe20c00 copy pdata ,contr 
+5040 204067c1 call uart_copy_tx_bytes_fast 
+5041 202067b9 branch uartd_send 
+
+module_hci_event_receive_le_data:
+5042 700aff08 jam hci_event_le_data_rep ,mem_module_uart_opcode 
+5043 6fe24670 fetch 1 ,mem_module_le_rx_data_len 
+5044 1fe27200 icopy loopcnt 
+5045 1fe0fe02 increase 2 ,pdata 
+5046 204050a5 call module_hci_prepare_tx 
+5047 6fe44673 fetch 2 ,mem_module_le_rx_data_handle 
+5048 e7e4000a istore 2 ,contwu 
+5049 6fe44671 fetch 2 ,mem_module_le_rx_data_address 
+504a 1fe20c00 icopy contr 
+504b 204067c1 call uart_copy_tx_bytes_fast 
+504c 202067b9 branch uartd_send 
+
+module_hci_event_enter_standby_mode:
+504d 700aff09 jam hci_event_standby_rep ,mem_module_uart_opcode 
+
+module_hci_event_enter_standby_mode_len0:
+504e 58000000 setarg 0 
+504f 204050a5 call module_hci_prepare_tx 
+5050 202067b9 branch uartd_send 
+
+module_hci_event_status_res:
+5051 700aff0a jam hci_event_status_res ,mem_module_uart_opcode 
+5052 58000001 setarg 1 
+5053 204050a5 call module_hci_prepare_tx 
+5054 20405062 call module_hci_read_bt_status 
+5055 6fe44652 fetch 2 ,mem_ui_state_map 
+5056 d8e00002 arg ui_state_bt_hid_conn ,queue 
+5057 afefffff qisolate1 pdata 
+5058 79208403 setflag true ,3 ,temp 
+5059 d8e00009 arg ui_state_ble_connected ,queue 
+505a afefffff qisolate1 pdata 
+505b 79208405 setflag true ,5 ,temp 
+505c 6fe24652 fetch 1 ,mem_ui_state_map 
+505d d8e00004 arg ui_state_bt_spp_conn ,queue 
+505e afefffff qisolate1 pdata 
+505f 79208404 setflag true ,4 ,temp 
+5060 e042000a istoret 1 ,contwu 
+5061 202067b9 branch uartd_send 
+
+module_hci_read_bt_status:
+5062 d8400000 arg 0 ,temp 
+5063 6fe24093 fetch 1 ,mem_scan_mode 
+5064 d8e00000 arg inq_scan_mode ,queue 
+5065 afefffff qisolate1 pdata 
+5066 79208400 setflag true ,0 ,temp 
+5067 d8e00001 arg page_scan_mode ,queue 
+5068 afefffff qisolate1 pdata 
+5069 79208401 setflag true ,1 ,temp 
+506a 6fe24340 fetch 1 ,mem_le_adv_enable 
+506b d8e00000 arg 0 ,queue 
+506c afefffff qisolate1 pdata 
+506d 79208402 setflag true ,2 ,temp 
+506e 20600000 rtn 
+
+module_hci_event_store_device:
+506f 700aff0d jam hci_event_nvram_rep ,mem_module_uart_opcode 
+5070 6fe24216 fetch 1 ,mem_nv_data_number 
+5071 1feffe22 mul32 pdata ,34 ,pdata 
+5072 1fe27200 icopy loopcnt 
+5073 204050a5 call module_hci_prepare_tx 
+5074 6fe44214 fetch 2 ,mem_nv_data_ptr 
+5075 1fe20c00 icopy contr 
+5076 204067c1 call uart_copy_tx_bytes_fast 
+5077 202067b9 branch uartd_send 
+
+module_hci_event_gkey_generate:
+5078 700aff0e jam hci_event_gkey ,mem_module_uart_opcode 
+5079 58000004 setarg 4 
+507a 204050a5 call module_hci_prepare_tx 
+507b 6fe809b6 fetch 4 ,mem_gkey 
+507c e7e8000a istore 4 ,contwu 
+507d 202067b9 branch uartd_send 
+
+module_hci_event_invalid_packet:
+507e 700aff0f jam hci_event_invalid_packet ,mem_module_uart_opcode 
+507f 2020504e branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_passkey_entry_mode:
+5080 700aff10 jam hci_event_get_passkey ,mem_module_uart_opcode 
+5081 2020504e branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_le_tk:
+5082 700aff11 jam hci_event_le_tk ,mem_module_uart_opcode 
+5083 58000004 setarg 4 
+5084 204050a5 call module_hci_prepare_tx 
+5085 6fe84499 fetch 4 ,mem_le_tk 
+5086 e7e8000a istore 4 ,contwu 
+5087 202067b9 branch uartd_send 
+
+module_hci_event_le_pairing_fail:
+5088 da200180 arg flag_ble_pairing_fail ,rega 
+5089 2020508f branch module_hci_event_pairing_completed 
+
+module_hci_event_le_pairing_success:
+508a da200080 arg flag_ble_pairing_success ,rega 
+508b 2020508f branch module_hci_event_pairing_completed 
+
+module_hci_event_bt_pairing_fail:
+508c da200101 arg flag_bt_pairing_fail ,rega 
+508d 2020508f branch module_hci_event_pairing_completed 
+
+module_hci_event_bt_pairing_success:
+508e da200001 arg flag_bt_pairing_success ,rega 
+
+module_hci_event_pairing_completed:
+508f 70463300 jam 0 ,mem_flag_mode_ssp_pin 
+5090 700aff14 jam hci_event_le_pairing_state ,mem_module_uart_opcode 
+5091 58000002 setarg 2 
+5092 204050a5 call module_hci_prepare_tx 
+5093 1a227e00 copy rega ,pdata 
+5094 e7e4000a istore 2 ,contwu 
+5095 202067b9 branch uartd_send 
+
+module_hci_event_pause_enc:
+5096 da600000 arg flag_event_pause_enc ,regc 
+5097 20205099 branch module_hci_event_enc 
+
+module_hci_event_start_enc:
+5098 da600001 arg flag_event_start_enc ,regc 
+
+module_hci_event_enc:
+5099 700aff15 jam hci_event_le_encryption_state ,mem_module_uart_opcode 
+509a 58000001 setarg 1 
+509b 204050a5 call module_hci_prepare_tx 
+509c 1a627e00 copy regc ,pdata 
+509d e7e2000a istore 1 ,contwu 
+509e 202067b9 branch uartd_send 
+
+module_hci_event_le_gkey:
+509f 700aff1d jam hci_event_le_gkey ,mem_module_uart_opcode 
+50a0 58000004 setarg 4 
+50a1 204050a5 call module_hci_prepare_tx 
+50a2 6fe809b6 fetch 4 ,mem_gkey 
+50a3 e7e8000a istore 4 ,contwu 
+50a4 202067b9 branch uartd_send 
+
+module_hci_prepare_tx:
+50a5 700afe02 jam 0x02 ,mem_module_uart_cmd 
+50a6 67e20b00 store 1 ,mem_module_uart_len 
+50a7 60500a9e storet 8 ,mem_temp 
+50a8 44dec017 bpatch patch17_5 ,mem_patch17 
+50a9 68500a9e fetcht 8 ,mem_temp 
+50aa 204067b5 call uartd_prepare_tx 
+50ab 6fe60afe fetch 3 ,mem_module_uart_cmd 
+50ac e7e6000a istore 3 ,contwu 
+50ad 20600000 rtn 
+
+module_le_receive_data:
+50ae 20404f11 call module_check_ble_encrypt_state 
+50af 20740000 rtn user 
+50b0 1a227e00 copy rega ,pdata 
+50b1 67e44671 store 2 ,mem_module_le_rx_data_address 
+50b2 1a427e00 copy regb ,pdata 
+50b3 67e24670 store 1 ,mem_module_le_rx_data_len 
+50b4 6fe40474 fetch 2 ,mem_le_att_handle 
+50b5 68444675 fetcht 2 ,mem_module_data_write_handle 
+50b6 98467c00 isub temp ,null 
+50b7 2022d0bb branch module_le_receive_data_ok ,zero 
+50b8 68444677 fetcht 2 ,mem_module_data_write_handle2 
+50b9 98467c00 isub temp ,null 
+50ba 24628000 nrtn zero 
+
+module_le_receive_data_ok:
+50bb 67e44673 store 2 ,mem_module_le_rx_data_handle 
+50bc 20205042 branch module_hci_event_receive_le_data 
+
+module_exit_sniff:
+50bd 6fe24679 fetch 1 ,mem_module_flag 
+50be c3828000 rtnbit1 moudle_task_unsniff 
+50bf 204050da call module_set_unsniff_task_flag 
+50c0 20204d87 branch app_bt_sniff_exit 
+
+module_set_lpm_mult_2:
+50c1 70417302 jam 2 ,mem_lpm_mult 
+50c2 20600000 rtn 
+
+module_bb_event_timer:
+50c3 20600000 rtn 
+
+check_ipc_tx_buff:
+50c4 204050cb call get_ipc_tx_buff 
+50c5 d8400300 arg uart_air_control_threshold ,temp 
+
+pdata_sub_temp:
+50c6 98467c00 isub temp ,null 
+50c7 20600000 rtn 
+
+calc_ipc_tx_buff_pos:
+50c8 9a267e00 isub rega ,pdata 
+50c9 1fe67e00 sub pdata ,0 ,pdata 
+50ca 20600000 rtn 
+
+get_ipc_tx_buff:
+50cb 68444ff0 fetcht 2 ,ipc_bt2m0_start_addr 
+50cc 6fe44ff2 fetch 2 ,ipc_bt2m0_end_addr 
+50cd 98462200 isub temp ,rega 
+50ce 68444ff4 fetcht 2 ,ipc_bt2m0_read_ptr 
+50cf 6fe44ff6 fetch 2 ,ipc_bt2m0_write_ptr 
+50d0 98467e00 isub temp ,pdata 
+50d1 244150c8 ncall calc_ipc_tx_buff_pos ,positive 
+50d2 20600000 rtn 
+
+module_control_air_flow:
+50d3 204050c4 call check_ipc_tx_buff 
+50d4 20214d54 branch app_l2cap_flow_control_enable ,positive 
+50d5 20204d56 branch app_l2cap_flow_control_disable 
+
+module_set_sniff_task_flag:
+50d6 d8e00006 arg moudle_task_sniff ,queue 
+50d7 202050e6 branch module_set_state 
+
+module_clear_sniff_task_flag:
+50d8 d8e00006 arg moudle_task_sniff ,queue 
+50d9 202050e2 branch module_clr_state 
+
+module_set_unsniff_task_flag:
+50da d8e00005 arg moudle_task_unsniff ,queue 
+50db 202050e6 branch module_set_state 
+
+module_clear_unsniff_task_flag:
+50dc d8e00005 arg moudle_task_unsniff ,queue 
+50dd 202050e2 branch module_clr_state 
+
+module_set_le_tx_data_flag:
+50de d8e00004 arg module_flag_ble_data_finish ,queue 
+50df 202050e6 branch module_set_state 
+
+module_clear_le_tx_data_flag:
+50e0 d8e00004 arg module_flag_ble_data_finish ,queue 
+50e1 202050e2 branch module_clr_state 
+
+module_clr_state:
+50e2 6fe24679 fetch 1 ,mem_module_flag 
+50e3 f93ffe00 qset0 pdata 
+50e4 67e24679 store 1 ,mem_module_flag 
+50e5 20600000 rtn 
+
+module_set_state:
+50e6 6fe24679 fetch 1 ,mem_module_flag 
+50e7 f9207e00 qset1 pdata 
+50e8 67e24679 store 1 ,mem_module_flag 
+50e9 20600000 rtn 
+
+cmd_exit:
+50ea 7041cf00 jam 0 ,mem_hci_cmd 
+50eb 20600000 rtn 
+
+cmd_check_plap:
+50ec 6fec41d1 fetch 6 ,mem_hci_plap 
+50ed 684c0040 fetcht 6 ,mem_plap 
+50ee 98467c00 isub temp ,null 
+50ef 20600000 rtn 
+
+cmd_pair:
+50f0 6fe2004b fetch 1 ,mem_op 
+50f1 c28150f5 bbit1 op_inrand_req ,cmd_pair_passive 
+50f2 204066d1 call tid_initiate 
+50f3 70007c08 jam lmp_in_rand ,mem_lmo_opcode2 
+50f4 202050ea branch cmd_exit 
+
+cmd_pair_passive:
+50f5 793ffe02 set0 op_inrand_req ,pdata 
+50f6 67e2004b store 1 ,mem_op 
+50f7 204063e3 call lmp_accept_inrand 
+50f8 58000000 setarg 0 
+50f9 7934fe01 setflag master ,smap_lmptid ,pdata 
+50fa 67e2007f store 1 ,mem_lmo_tid2 
+50fb 202050ea branch cmd_exit 
+50fc 20600000 rtn 
+
+cmd_in_sniff:
+50fd 70007c17 jam lmp_sniff_req ,mem_lmo_opcode2 
+50fe d8a004d5 arg mem_sniff_payload ,contw 
+50ff 58000000 setarg 0 
+5100 2d0ffe1b isolate1 27 ,clke_bt 
+5101 7920fe01 setflag true ,1 ,pdata 
+5102 e7e20005 istore 1 ,contw 
+5103 58000000 setarg 0 
+5104 e7e40005 istore 2 ,contw 
+5105 6fe441e4 fetch 2 ,mem_sniff_param_interval 
+5106 e7e40005 istore 2 ,contw 
+5107 6fe241e6 fetch 1 ,mem_sniff_param_attempt 
+5108 e7e40005 istore 2 ,contw 
+5109 6fe241e8 fetch 1 ,mem_sniff_param_timeout 
+510a e7e40005 istore 2 ,contw 
+510b 202050ea branch cmd_exit 
+
+cmd_exit_sniff:
+510c 70007c18 jam lmp_unsniff_req ,mem_lmo_opcode2 
+510d 202050ea branch cmd_exit 
+
+hid_rx_process:
+510e 44df4017 bpatch patch17_6 ,mem_patch17 
+510f 6fe40260 fetch 2 ,mem_l2cap_payload_ptr 
+5110 1fe20c00 copy pdata ,contr 
+5111 efe20006 ifetch 1 ,contr 
+5112 1fe1040f and pdata ,0x0f ,temp 
+5113 1ff1fe00 rshift4 pdata ,pdata 
+5114 c004d12d beq hid_type_set_idle ,hid_rx_process_handshake 
+5115 c003d12d beq hid_type_set_protocol ,hid_rx_process_handshake 
+5116 c0055139 beq hid_type_data ,hid_rx_process_data 
+5117 c002d125 beq hid_type_set_report ,hid_rx_process_set_report 
+5118 c000d11a beq hid_type_control ,hid_rx_process_hid_control 
+5119 20600000 rtn 
+
+hid_rx_process_hid_control:
+511a 18427e00 copy temp ,pdata 
+511b c002d11e beq hid_control_p_virtualcableunplug ,hid_rx_process_virtual_cable_unplug 
+511c c001d124 beq hid_control_p_suspend ,hid_rx_process_suspend 
+511d 20600000 rtn 
+
+hid_rx_process_virtual_cable_unplug:
+511e 700a9527 jam bt_evt_virtual_cable_unplug ,mem_fifo_temp 
+511f 20407bab call ui_ipc_send_event 
+5120 6fe24092 fetch 1 ,mem_device_option 
+5121 c4030000 rtnbit0 dvc_op_mouse 
+5122 18427e00 copy temp ,pdata 
+5123 20600000 rtn 
+
+hid_rx_process_suspend:
+5124 20600000 rtn 
+
+hid_rx_process_set_report:
+5125 20405139 call hid_rx_process_data 
+5126 da200001 arg 0x01 ,rega 
+5127 2040513d call hid_malloc_tx_buff 
+5128 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+5129 e7e40005 istore 2 ,contw 
+512a 58000000 setarg 0x00 
+512b e7e20005 istore 1 ,contw 
+512c 20600000 rtn 
+
+hid_rx_process_handshake:
+512d da200001 arg 1 ,rega 
+512e 2040513d call hid_malloc_tx_buff 
+512f 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+5130 e7e40005 istore 2 ,contw 
+5131 58000000 setarg 0 
+5132 e7e20005 istore 1 ,contw 
+5133 700a8a01 jam 1 ,mem_ui_data_txbuff_length 
+5134 6fe24224 fetch 1 ,mem_hid_control_state 
+5135 79207e06 set1 l2cap_channel_hid_handshake_done 
+5136 67e24224 store 1 ,mem_hid_control_state 
+5137 700a9512 jam bt_evt_hid_handshake ,mem_fifo_temp 
+5138 20207bab branch ui_ipc_send_event 
+
+hid_rx_process_data:
+5139 efe20006 ifetch 1 ,contr 
+513a c000d13c beq hid_report_id_kb ,hid_rx_process_data_hid_kb 
+513b 20600000 rtn 
+
+hid_rx_process_data_hid_kb:
+513c 20600000 rtn 
+
+hid_malloc_tx_buff:
+513d 2040561a call l2cap_malloc 
+513e 1a220400 copy rega ,temp 
+513f 60420a8a storet 1 ,mem_ui_data_txbuff_length 
+5140 1fe20a00 copy pdata ,contw 
+5141 1a227e00 copy rega ,pdata 
+5142 e7e40005 istore 2 ,contw 
+5143 20600000 rtn 
+
+l2cap_init:
+5144 2035d149 branch l2cap_init_wake ,wake 
+
+l2cap_init_work:
+5145 58004337 setarg mem_l2cap_xmem_end 
+5146 d8a04218 arg mem_l2cap_xmem_start ,contw 
+5147 98a67200 isub contw ,loopcnt 
+5148 20407caf call clear_mem 
+
+l2cap_init_wake:
+5149 44dfc017 bpatch patch17_7 ,mem_patch17 
+514a 5800054d setarg mem_sdp_mem_end 
+514b d8a0050d arg mem_sdp_mem_start ,contw 
+514c 98a67200 isub contw ,loopcnt 
+514d 20407caf call clear_mem 
+514e 580002c5 setarg mem_l2cap_mem_end 
+514f d8a00259 arg mem_l2cap_mem_start ,contw 
+5150 98a67200 isub contw ,loopcnt 
+5151 20407caf call clear_mem 
+5152 202056f2 branch l2cap_lpm_load_txbuf 
+
+process_rx_l2cap_pkt:
+5153 44e04018 bpatch patch18_0 ,mem_patch18 
+5154 18c20400 copy contr ,temp 
+5155 18420c00 copy temp ,contr 
+5156 efe40006 ifetch 2 ,contr 
+5157 67e40262 store 2 ,mem_l2cap_rx_pkt_length 
+5158 efe40006 ifetch 2 ,contr 
+5159 67e40264 store 2 ,mem_l2cap_rx_cid 
+515a 18c27e00 deposit contr 
+515b 67e40260 store 2 ,mem_l2cap_payload_ptr 
+515c 6fe24651 fetch 1 ,memui_reconnect_mode 
+515d c000515f beq no_reconnection ,l2cap_rx_multiplexing 
+515e 202054c9 branch ml2cap_rx_multiplexing 
+
+l2cap_rx_multiplexing:
+515f 6fe40262 fetch 2 ,mem_l2cap_rx_pkt_length 
+5160 203a51d6 branch l2cap_rx_reset_state ,blank 
+5161 44e0c018 bpatch patch18_1 ,mem_patch18 
+5162 6fe20264 fetch 1 ,mem_l2cap_rx_cid 
+5163 c000d177 beq l2cap_signal_channel ,l2cap_call_proc_signal 
+
+l2cap_rx_multiplexing0:
+5164 c02851ba beq l2cap_sdp_channel ,l2cap_call_proc_sdp 
+5165 c028d1cf beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+5166 c02951cd beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+5167 c029d1cd beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+5168 202051d6 branch l2cap_rx_reset_state 
+
+l2cap_check_map:
+5169 44e14018 bpatch patch18_2 ,mem_patch18 
+516a 20405658 call l2cap_malloc_get_full_map 
+516b 6fe24228 fetch 1 ,mem_used_map 
+516c c0005175 beq 0 ,set_pdata_0 
+516d c000d175 beq 1 ,set_pdata_0 
+516e c0015175 beq 2 ,set_pdata_0 
+516f c001d175 beq 3 ,set_pdata_0 
+5170 c040d175 beq 0x81 ,set_pdata_0 
+5171 c0605175 beq 0xc0 ,set_pdata_0 
+5172 c0405175 beq 0x80 ,set_pdata_0 
+5173 c0205175 beq 0x40 ,set_pdata_0 
+5174 20600000 rtn 
+
+set_pdata_0:
+5175 58000000 setarg 0 
+5176 20600000 rtn 
+
+l2cap_call_proc_signal:
+5177 20405169 call l2cap_check_map 
+5178 247a0000 nrtn blank 
+
+l2cap_call_proc_signal0:
+5179 20405692 call l2cap_malloc_signal_channel 
+517a 204051db call l2cap_process_signal_pkt 
+517b 6844026b fetcht 2 ,mem_l2cap_signal_tx_length 
+517c 203a51d5 branch l2cap_call_proc_no_reply ,blank 
+517d 2040569b call l2cap_get_signal_tx_buff 
+517e 6fe4026b fetch 2 ,mem_l2cap_signal_tx_length 
+517f e7e40005 istore 2 ,contw 
+5180 18007e01 force l2cap_signal_channel ,pdata 
+5181 e7e40005 istore 2 ,contw 
+5182 202051d6 branch l2cap_rx_reset_state 
+
+l2cap_call_proc_sigal_pending:
+5183 6fe24336 fetch 1 ,mem_l2cap_pending_item 
+5184 207a0000 rtn blank 
+5185 1fe22200 copy pdata ,rega 
+5186 44e1c018 bpatch patch18_3 ,mem_patch18 
+5187 6fe802d1 fetch 4 ,mem_l2cap_sdpres_delay_time 
+5188 d8400100 arg 0x100 ,temp 
+5189 98408400 iadd temp ,temp 
+518a 1c427e00 copy clkn_bt ,pdata 
+518b 98467c00 isub temp ,null 
+518c 24610000 nrtn positive 
+518d 70433600 jam 0 ,mem_l2cap_pending_item 
+518e 1a227e00 copy rega ,pdata 
+518f c0285191 beq l2cap_sdp_channel ,l2cap_sdp_conn_succ 
+5190 20204a8b branch assert 
+
+l2cap_sdp_conn_succ:
+5191 d9000000 arg 0 ,debug 
+5192 20405692 call l2cap_malloc_signal_channel 
+5193 20405254 call restore_l2cap_req_param 
+5194 2040569d call l2cap_get_signal_tx_payload 
+5195 20407c83 call save_cont_pointers 
+5196 20405287 call send_connection_sdp_res 
+5197 2040569b call l2cap_get_signal_tx_buff 
+5198 5800000c setarg 0x000c 
+5199 e7e40005 istore 2 ,contw 
+519a 18007e01 force l2cap_signal_channel ,pdata 
+519b e7e40005 istore 2 ,contw 
+519c 202051d6 branch l2cap_rx_reset_state 
+
+l2cap_reset_sdp_map:
+519d 44e24018 bpatch patch18_4 ,mem_patch18 
+519e 6fe40271 fetch 2 ,mem_sdp_tx_pkt_length 
+519f 1fe0fe04 increase 4 ,pdata 
+51a0 1ff1fe00 rshift4 pdata ,pdata 
+51a1 1fe97e00 rshift3 pdata ,pdata 
+51a2 1fe08401 add pdata ,1 ,temp 
+51a3 d8c04232 arg mem_tx_fifo3 ,contr 
+51a4 efe60006 ifetch 3 ,contr 
+51a5 207a0000 rtn blank 
+51a6 67e60abe store 3 ,mem_tx_fifo_map_temp 
+51a7 6fe20abe fetch 1 ,mem_tx_fifo_map_temp 
+51a8 1fe22200 copy pdata ,rega 
+51a9 204051ad call check_l2cap_map 
+51aa 1a427e00 copy regb ,pdata 
+51ab 67e24232 store 1 ,mem_tx_fifo3 
+51ac 20600000 rtn 
+
+check_l2cap_map:
+51ad d8e00000 arg 0 ,queue 
+51ae da400000 arg 0 ,regb 
+
+check_l2cap_map_loop:
+51af 18e67c07 sub queue ,7 ,null 
+51b0 24610000 nrtn positive 
+51b1 aa2fffff qisolate1 rega 
+51b2 2020d1b4 branch check_l2cap_map_used ,true 
+51b3 202051b8 branch check_l2cap_map_used2 
+
+check_l2cap_map_used:
+51b4 18427e00 copy temp ,pdata 
+51b5 203a51b8 branch check_l2cap_map_used2 ,blank 
+51b6 f9202400 qset1 regb 
+51b7 184085ff increase -1 ,temp 
+
+check_l2cap_map_used2:
+51b8 18e08e01 increase 1 ,queue 
+51b9 202051af branch check_l2cap_map_loop 
+
+l2cap_call_proc_sdp:
+51ba 2040564e call l2cap_malloc_is_fifo_empty 
+51bb 247a0000 nrtn blank 
+51bc 20405169 call l2cap_check_map 
+51bd 247a0000 nrtn blank 
+51be 2040569f call l2cap_malloc_sdp_channel 
+51bf 20406cd0 call sdp_process 
+51c0 2040519d call l2cap_reset_sdp_map 
+51c1 202051c6 branch l2cap_call_proc_sdp_common 
+
+ml2cap_call_proc_sdp:
+51c2 2040564e call l2cap_malloc_is_fifo_empty 
+51c3 247a0000 nrtn blank 
+51c4 2040569f call l2cap_malloc_sdp_channel 
+51c5 20406cd0 call sdp_process 
+
+l2cap_call_proc_sdp_common:
+51c6 204056a8 call l2cap_get_sdp_tx_buff 
+51c7 6fe40271 fetch 2 ,mem_sdp_tx_pkt_length 
+51c8 203a51d5 branch l2cap_call_proc_no_reply ,blank 
+51c9 e7e40005 istore 2 ,contw 
+51ca 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+51cb e7e40005 istore 2 ,contw 
+51cc 202051d6 branch l2cap_rx_reset_state 
+
+l2cap_call_proc_hid:
+51cd 2040510e call hid_rx_process 
+51ce 202051d6 branch l2cap_rx_reset_state 
+
+l2cap_call_proc_rfcomm:
+51cf 44e2c018 bpatch patch18_5 ,mem_patch18 
+51d0 70028000 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+51d1 2040694b call rfcomm_rx_process 
+51d2 6fe20280 fetch 1 ,mem_rfcomm_malloc_fail_flag 
+51d3 c1008000 rtneq rfcomm_malloc_fail 
+51d4 202051d6 branch l2cap_rx_reset_state 
+
+l2cap_call_proc_no_reply:
+51d5 2040563e call l2cap_malloc_discard 
+
+l2cap_rx_reset_state:
+51d6 58000000 setarg 0 
+51d7 67e40262 store 2 ,mem_l2cap_rx_pkt_length 
+51d8 67e40264 store 2 ,mem_l2cap_rx_cid 
+51d9 70026601 jam l2cap_rx_done ,mem_l2cap_rx_done 
+51da 20600000 rtn 
+
+l2cap_process_signal_pkt:
+51db 44e34018 bpatch patch18_6 ,mem_patch18 
+51dc 2040569d call l2cap_get_signal_tx_payload 
+51dd 18002400 force 0 ,regb 
+51de 6fe40262 fetch 2 ,mem_l2cap_rx_pkt_length 
+51df 1fe22600 copy pdata ,regc 
+51e0 6fe40260 fetch 2 ,mem_l2cap_payload_ptr 
+51e1 98000c00 iforce contr 
+
+l2cap_process_signal_pkt_loop:
+51e2 204051ea call l2cap_process_one_signal 
+51e3 1a627e00 deposit regc 
+51e4 1a60a7fc increase -4 ,regc 
+51e5 1fe0fffc increase -4 ,pdata 
+51e6 243a51e2 nbranch l2cap_process_signal_pkt_loop ,blank 
+51e7 1a427e00 copy regb ,pdata 
+51e8 67e4026b store 2 ,mem_l2cap_signal_tx_length 
+51e9 20600000 rtn 
+
+l2cap_process_one_signal:
+51ea 44e3c018 bpatch patch18_7 ,mem_patch18 
+51eb efe20006 ifetch 1 ,contr 
+51ec c000d223 beq signal_cmd_reject ,l2cap_proc_signal_cmd_reject 
+51ed c001522b beq signal_connect_req ,l2cap_proc_signal_connect_req 
+51ee c001d2af beq signal_connect_rsp ,l2cap_proc_signal_connect_rsp 
+51ef c00252df beq signal_config_req ,l2cap_proc_signal_config_req 
+51f0 c002d37c beq signal_config_rsp ,l2cap_proc_signal_config_rsp 
+51f1 c00353a5 beq signal_disconnect_req ,l2cap_proc_signal_disconnect_req 
+51f2 c003d3f5 beq signal_disconnect_rsp ,l2cap_proc_signal_disconnect_rsp 
+51f3 c004542a beq signal_echo_req ,l2cap_proc_signal_echo_req 
+51f4 c004d43a beq signal_echo_rsp ,l2cap_proc_signal_echo_rsp 
+51f5 c00551f9 beq signal_info_req ,l2cap_proc_signal_info_req 
+51f6 c005d43b beq signal_info_rsp ,l2cap_proc_signal_info_rsp 
+51f7 2040543c call l2cap_reject_command 
+
+l2cap_process_one_signal_rtn:
+51f8 20600000 rtn 
+
+l2cap_proc_signal_info_req:
+51f9 efe20006 ifetch 1 ,contr 
+51fa 1fe20e00 copy pdata ,queue 
+51fb efe40006 ifetch 2 ,contr 
+51fc 1fe22200 copy pdata ,rega 
+51fd 1a627e00 copy regc ,pdata 
+51fe 9a262600 isub rega ,regc 
+51ff 5800000b setarg signal_info_rsp 
+5200 e7e20005 istore 1 ,contw 
+5201 18e27e00 copy queue ,pdata 
+5202 e7e20005 istore 1 ,contw 
+5203 efe40006 ifetch 2 ,contr 
+
+l2cap_proc_signal_info_req_reply:
+5204 c0015207 beq l2cap_sig_ext_featrue ,l2cap_proc_signal_info_req_ext 
+5205 c001d20d beq l2cap_sig_fix_featrue ,l2cap_proc_signal_info_req_fix 
+5206 20600000 rtn 
+
+l2cap_proc_signal_info_req_ext:
+5207 58020008 setarg 0x020008 
+5208 e7ec0005 istore 6 ,contw 
+5209 58000280 setarg 0x0280 
+520a e7e80005 istore 4 ,contw 
+520b 18007e0c force 12 ,pdata 
+520c 20205212 branch l2cap_proc_signal_info_req_common 
+
+l2cap_proc_signal_info_req_fix:
+520d 5803000c setarg 0x3000c 
+520e e7ec0005 istore 6 ,contw 
+520f 58000006 setarg 0x0006 
+5210 e7f00005 istore 8 ,contw 
+5211 18007e10 force 16 ,pdata 
+
+l2cap_proc_signal_info_req_common:
+5212 9a40a400 iadd regb ,regb 
+5213 202051f8 branch l2cap_process_one_signal_rtn 
+
+ml2cap_proc_signal_info_req:
+5214 efe20006 ifetch 1 ,contr 
+5215 1fe20e00 copy pdata ,queue 
+5216 efe40006 ifetch 2 ,contr 
+5217 1fe22200 copy pdata ,rega 
+5218 efe40006 ifetch 2 ,contr 
+5219 67e40a9e store 2 ,mem_temp 
+521a 1a627e00 copy regc ,pdata 
+521b 9a262600 isub rega ,regc 
+521c 2040569d call l2cap_get_signal_tx_payload 
+521d 5800000b setarg signal_info_rsp 
+521e e7e20005 istore 1 ,contw 
+521f 18e27e00 copy queue ,pdata 
+5220 e7e20005 istore 1 ,contw 
+5221 6fe40a9e fetch 2 ,mem_temp 
+5222 20205204 branch l2cap_proc_signal_info_req_reply 
+
+l2cap_proc_signal_cmd_reject:
+5223 efe20006 ifetch 1 ,contr 
+5224 1fe20e00 copy pdata ,queue 
+5225 efe40006 ifetch 2 ,contr 
+5226 1fe22200 copy pdata ,rega 
+5227 98c08c00 iadd contr ,contr 
+5228 1a627e00 copy regc ,pdata 
+5229 9a262600 isub rega ,regc 
+
+l2cap_proc_signal_cmd_reject_rtn:
+522a 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_connect_req:
+522b 20407c83 call save_cont_pointers 
+522c 20407c88 call load_cont_pointers 
+522d d9000000 arg 0 ,debug 
+522e efe20006 ifetch 1 ,contr 
+522f 1fe20e00 copy pdata ,queue 
+5230 efe40006 ifetch 2 ,contr 
+5231 1fe22200 copy pdata ,rega 
+5232 efe40006 ifetch 2 ,contr 
+5233 1fe20400 copy pdata ,temp 
+5234 efe40006 ifetch 2 ,contr 
+5235 1fe21600 copy pdata ,timeup 
+5236 44e44019 bpatch patch19_0 ,mem_patch19 
+5237 18427e00 copy temp ,pdata 
+5238 c000d23e beq psm_sdp ,l2cap_proc_signal_connect_req_sdp 
+5239 c001d260 beq psm_rfcomm ,l2cap_proc_signal_connect_req_rfcomm 
+523a c008d26c beq psm_hid_control ,l2cap_proc_signal_connect_req_hid_ctrl 
+523b c009d277 beq psm_hid_interrupt ,l2cap_proc_signal_connect_req_hid_int 
+523c 2040543c call l2cap_reject_command 
+523d 202052ae branch l2cap_proc_signal_connect_req_rtn 
+
+l2cap_proc_signal_connect_req_sdp:
+523e 20407c83 call save_cont_pointers 
+523f d8400050 arg l2cap_sdp_channel ,temp 
+5240 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+5241 243a52a8 nbranch already_connected ,blank 
+5242 19627e00 copy timeup ,pdata 
+5243 67e4421a store 2 ,mem_sdp_remote_cid 
+5244 1c427e00 copy clkn_bt ,pdata 
+5245 67e802d1 store 4 ,mem_l2cap_sdpres_delay_time 
+5246 20405248 call store_l2cap_req_param 
+5247 20205283 branch send_connection_pending 
+
+store_l2cap_req_param:
+5248 604402cf storet 2 ,mem_psm 
+5249 19627e00 deposit timeup 
+524a 67e402c5 store 2 ,mem_scid 
+524b 1a227e00 deposit rega 
+524c 67e402c7 store 2 ,mem_cmd_length 
+524d 1a427e00 deposit regb 
+524e 67e402c9 store 2 ,mem_tt2 
+524f 1a627e00 deposit regc 
+5250 67e402cb store 2 ,mem_tt3 
+5251 18e27e00 deposit queue 
+5252 67e402cd store 2 ,mem_id 
+5253 20600000 rtn 
+
+restore_l2cap_req_param:
+5254 684402cf fetcht 2 ,mem_psm 
+5255 6fe402c5 fetch 2 ,mem_scid 
+5256 1fe21600 copy pdata ,timeup 
+5257 6fe402c7 fetch 2 ,mem_cmd_length 
+5258 1fe22200 copy pdata ,rega 
+5259 6fe402c9 fetch 2 ,mem_tt2 
+525a 1fe22400 copy pdata ,regb 
+525b 6fe402cb fetch 2 ,mem_tt3 
+525c 1fe22600 copy pdata ,regc 
+525d 6fe402cd fetch 2 ,mem_id 
+525e 1fe20e00 copy pdata ,queue 
+525f 20600000 rtn 
+
+l2cap_proc_signal_connect_req_rfcomm:
+5260 20407c83 call save_cont_pointers 
+5261 58000051 setarg l2cap_rfcomm_channel 
+5262 d8400051 arg l2cap_rfcomm_channel ,temp 
+5263 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+5264 243a52a8 nbranch already_connected ,blank 
+5265 19627e00 copy timeup ,pdata 
+5266 67e4421c store 2 ,mem_rfcomm_remote_cid 
+5267 6fe24223 fetch 1 ,mem_rfcomm_state 
+5268 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+5269 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+526a 67e24223 store 1 ,mem_rfcomm_state 
+526b 2020528b branch send_connection_res 
+
+l2cap_proc_signal_connect_req_hid_ctrl:
+526c 20407c83 call save_cont_pointers 
+526d d8400052 arg l2cap_hid_control_channel ,temp 
+526e 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+526f 243a52a8 nbranch already_connected ,blank 
+5270 19627e00 copy timeup ,pdata 
+5271 67e4421e store 2 ,mem_hid_ctrl_remote_cid 
+5272 6fe24224 fetch 1 ,mem_hid_control_state 
+5273 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+5274 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+5275 67e24224 store 1 ,mem_hid_control_state 
+5276 2020528b branch send_connection_res 
+
+l2cap_proc_signal_connect_req_hid_int:
+5277 20407c83 call save_cont_pointers 
+5278 1b427e00 deposit clke 
+5279 d8400053 arg l2cap_hid_interrupt_channel ,temp 
+527a 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+527b 243a52a8 nbranch already_connected ,blank 
+527c 19627e00 copy timeup ,pdata 
+527d 67e44220 store 2 ,mem_hid_int_remote_cid 
+527e 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+527f 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+5280 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+5281 67e24225 store 1 ,mem_hid_interrupt_state 
+5282 2020528b branch send_connection_res 
+
+send_connection_pending:
+5283 58000001 setarg l2cap_connect_pending 
+5284 67e40279 store 2 ,meml2cap_t1 
+5285 70433650 jam l2cap_sdp_channel ,mem_l2cap_pending_item 
+5286 2020528d branch send_connection_res0 
+
+send_connection_sdp_res:
+5287 6fe24222 fetch 1 ,mem_sdp_state 
+5288 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+5289 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+528a 67e24222 store 1 ,mem_sdp_state 
+
+send_connection_res:
+528b 58000000 setarg l2cap_connect_successful 
+528c 67e40279 store 2 ,meml2cap_t1 
+
+send_connection_res0:
+528d 44e4c019 bpatch patch19_1 ,mem_patch19 
+528e 20407c88 call load_cont_pointers 
+528f 58000003 setarg signal_connect_rsp 
+5290 e7e20005 istore 1 ,contw 
+5291 18e27e00 copy queue ,pdata 
+5292 e7e20005 istore 1 ,contw 
+5293 58000008 setarg 0x0008 
+5294 e7e40005 istore 2 ,contw 
+5295 18427e00 copy temp ,pdata 
+5296 e7e40005 istore 2 ,contw 
+5297 19627e00 copy timeup ,pdata 
+5298 e7e40005 istore 2 ,contw 
+5299 6fe40279 fetch 2 ,meml2cap_t1 
+529a c000d2a3 beq l2cap_connect_pending ,connect_pending 
+529b 290c0000 isolate0 0 ,debug 
+529c 2020d29e branch connect_suc ,true 
+529d 58000004 setarg l2cap_connect_refused_no_resources 
+
+connect_suc:
+529e e7e40005 istore 2 ,contw 
+529f 18007e00 force 0x0000 ,pdata 
+52a0 e7e40005 istore 2 ,contw 
+52a1 5800000c setarg 12 
+52a2 202052aa branch connect_req_update_byte_counts 
+
+connect_pending:
+52a3 e7e40005 istore 2 ,contw 
+52a4 18007e02 force 0x0002 ,pdata 
+52a5 e7e40005 istore 2 ,contw 
+52a6 5800000c setarg 12 
+52a7 202052aa branch connect_req_update_byte_counts 
+
+already_connected:
+52a8 79201000 set1 0 ,debug 
+52a9 2020528b branch send_connection_res 
+
+connect_req_update_byte_counts:
+52aa 9a40a400 iadd regb ,regb 
+52ab 1a627e00 copy regc ,pdata 
+52ac 9a262600 isub rega ,regc 
+52ad 202052ae branch l2cap_proc_signal_connect_req_rtn 
+
+l2cap_proc_signal_connect_req_rtn:
+52ae 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_connect_rsp:
+52af efe20006 ifetch 1 ,contr 
+52b0 1fe20e00 copy pdata ,queue 
+52b1 efe40006 ifetch 2 ,contr 
+52b2 1fe22200 copy pdata ,rega 
+52b3 1a627e00 copy regc ,pdata 
+52b4 9a262600 isub rega ,regc 
+52b5 efe40006 ifetch 2 ,contr 
+52b6 1fe21600 copy pdata ,timeup 
+52b7 efe40006 ifetch 2 ,contr 
+52b8 1fe20400 copy pdata ,temp 
+52b9 44e54019 bpatch patch19_2 ,mem_patch19 
+52ba 58000050 setarg l2cap_sdp_channel 
+52bb 98467c00 isub temp ,null 
+52bc 2022d2c7 branch l2cap_proc_signal_connect_rsp_sdp ,zero 
+52bd 58000051 setarg l2cap_rfcomm_channel 
+52be 98467c00 isub temp ,null 
+52bf 2022d2cd branch l2cap_proc_signal_connect_rsp_rfcomm ,zero 
+52c0 58000052 setarg l2cap_hid_control_channel 
+52c1 98467c00 isub temp ,null 
+52c2 2022d2d9 branch l2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+52c3 58000053 setarg l2cap_hid_interrupt_channel 
+52c4 98467c00 isub temp ,null 
+52c5 2022d2d3 branch l2cap_proc_signal_connect_rsp_hid_int ,zero 
+52c6 20600000 rtn 
+
+l2cap_proc_signal_connect_rsp_sdp:
+52c7 19627e00 copy timeup ,pdata 
+52c8 67e4421a store 2 ,mem_sdp_remote_cid 
+52c9 6fe24222 fetch 1 ,mem_sdp_state 
+52ca 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+52cb 67e24222 store 1 ,mem_sdp_state 
+52cc 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_connect_rsp_rfcomm:
+52cd 19627e00 copy timeup ,pdata 
+52ce 67e4421c store 2 ,mem_rfcomm_remote_cid 
+52cf 6fe24223 fetch 1 ,mem_rfcomm_state 
+52d0 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+52d1 67e24223 store 1 ,mem_rfcomm_state 
+52d2 20600000 rtn 
+
+l2cap_proc_signal_connect_rsp_hid_int:
+52d3 19627e00 copy timeup ,pdata 
+52d4 67e4421e store 2 ,mem_hid_ctrl_remote_cid 
+52d5 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+52d6 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+52d7 67e24225 store 1 ,mem_hid_interrupt_state 
+52d8 20600000 rtn 
+
+l2cap_proc_signal_connect_rsp_hid_ctrl:
+52d9 19627e00 copy timeup ,pdata 
+52da 67e44220 store 2 ,mem_hid_int_remote_cid 
+52db 6fe24224 fetch 1 ,mem_hid_control_state 
+52dc 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+52dd 67e24224 store 1 ,mem_hid_control_state 
+52de 20600000 rtn 
+
+l2cap_proc_signal_config_req:
+52df efe20006 ifetch 1 ,contr 
+52e0 1fe20e00 copy pdata ,queue 
+52e1 efe40006 ifetch 2 ,contr 
+52e2 1fe22200 copy pdata ,rega 
+52e3 1a627e00 copy regc ,pdata 
+52e4 9a262600 isub rega ,regc 
+52e5 efe40006 ifetch 2 ,contr 
+52e6 1fe20400 copy pdata ,temp 
+52e7 18422200 copy temp ,rega 
+52e8 44e5c019 bpatch patch19_3 ,mem_patch19 
+52e9 58000050 setarg l2cap_sdp_channel 
+52ea 98467c00 isub temp ,null 
+52eb 2022d2f6 branch l2cap_proc_signal_config_req_sdp ,zero 
+52ec 58000051 setarg l2cap_rfcomm_channel 
+52ed 98467c00 isub temp ,null 
+52ee 2022d314 branch l2cap_proc_signal_config_req_rfcomm ,zero 
+52ef 58000052 setarg l2cap_hid_control_channel 
+52f0 98467c00 isub temp ,null 
+52f1 2022d300 branch l2cap_proc_signal_config_req_hid_ctrl ,zero 
+52f2 58000053 setarg l2cap_hid_interrupt_channel 
+52f3 98467c00 isub temp ,null 
+52f4 2022d30a branch l2cap_proc_signal_config_req_hid_int ,zero 
+52f5 2020543c branch l2cap_reject_command 
+
+l2cap_proc_signal_config_req_sdp:
+52f6 18a21600 copy contw ,timeup 
+52f7 6fe24222 fetch 1 ,mem_sdp_state 
+52f8 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+52f9 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+52fa 67e24222 store 1 ,mem_sdp_state 
+52fb 19620a00 copy timeup ,contw 
+52fc d9600050 arg l2cap_sdp_channel ,timeup 
+52fd 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+52fe 1fe20400 copy pdata ,temp 
+52ff 2020531d branch l2cap_send_config_rsp 
+
+l2cap_proc_signal_config_req_hid_ctrl:
+5300 18a21600 copy contw ,timeup 
+5301 6fe24224 fetch 1 ,mem_hid_control_state 
+5302 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+5303 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+5304 67e24224 store 1 ,mem_hid_control_state 
+5305 19620a00 copy timeup ,contw 
+5306 d9600052 arg l2cap_hid_control_channel ,timeup 
+5307 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+5308 1fe20400 copy pdata ,temp 
+5309 2020531d branch l2cap_send_config_rsp 
+
+l2cap_proc_signal_config_req_hid_int:
+530a 18a21600 copy contw ,timeup 
+530b 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+530c 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+530d 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+530e 67e24225 store 1 ,mem_hid_interrupt_state 
+530f 19620a00 copy timeup ,contw 
+5310 d9600053 arg l2cap_hid_interrupt_channel ,timeup 
+5311 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+5312 1fe20400 copy pdata ,temp 
+5313 2020531d branch l2cap_send_config_rsp 
+
+l2cap_proc_signal_config_req_rfcomm:
+5314 18a21600 copy contw ,timeup 
+5315 6fe24223 fetch 1 ,mem_rfcomm_state 
+5316 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+5317 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+5318 67e24223 store 1 ,mem_rfcomm_state 
+5319 19620a00 copy timeup ,contw 
+531a d9600051 arg l2cap_rfcomm_channel ,timeup 
+531b 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+531c 1fe20400 copy pdata ,temp 
+
+l2cap_send_config_rsp:
+531d 44e64019 bpatch patch19_4 ,mem_patch19 
+531e 58000005 setarg signal_config_rsp 
+531f e7e20005 istore 1 ,contw 
+5320 18e27e00 copy queue ,pdata 
+5321 e7e20005 istore 1 ,contw 
+5322 58000006 setarg 0x0006 
+5323 e7e40005 istore 2 ,contw 
+5324 18427e00 copy temp ,pdata 
+5325 e7e40005 istore 2 ,contw 
+5326 18007e00 force 0x00 ,pdata 
+5327 e7e40005 istore 2 ,contw 
+5328 18007e00 force l2cap_config_success ,pdata 
+5329 e7e40005 istore 2 ,contw 
+532a 18007e0a force 10 ,pdata 
+532b 9a40a400 iadd regb ,regb 
+532c 6044027e storet 2 ,mem_config_req_dest_cid 
+532d 18e27e00 copy queue ,pdata 
+532e 67e2027d store 1 ,mem_config_identifier 
+532f 18007e50 force l2cap_sdp_channel ,pdata 
+5330 a961fe00 icompare 0xff ,timeup 
+5331 2020d333 branch l2cap_send_config_rsp_is_sdp ,true 
+5332 1fe0fe01 increase 1 ,pdata 
+
+l2cap_send_config_rsp_is_sdp:
+5333 20600000 rtn 
+
+l2cap_check_channel_state:
+5334 78547c00 disable user 
+5335 c3810000 rtnbit1 l2cap_channel_state_snd_cfg_req ,pdata 
+5336 c4000000 rtnbit0 l2cap_channel_state_conn_req ,pdata 
+5337 c4008000 rtnbit0 l2cap_channel_state_conn_res ,pdata 
+5338 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+5339 18c20a00 copy contr ,contw 
+533a 18a08bff increase -1 ,contw 
+533b e7e20005 istore 1 ,contw 
+533c 78347c00 enable user 
+533d 20600000 rtn 
+
+l2cap_send_config_req:
+
+l2cap_send_config_req_sdp:
+533e 6fe24222 fetch 1 ,mem_sdp_state 
+533f 20405334 call l2cap_check_channel_state 
+5340 24345345 nbranch l2cap_send_config_req_rfcomm ,user 
+5341 70027c50 jam l2cap_sdp_channel ,mem_send_config_req 
+5342 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+5343 67e4027e store 2 ,mem_config_req_dest_cid 
+5344 20205359 branch l2cap_generate_config_req 
+
+l2cap_send_config_req_rfcomm:
+5345 6fe24223 fetch 1 ,mem_rfcomm_state 
+5346 20405334 call l2cap_check_channel_state 
+5347 2434534c nbranch l2cap_send_config_req_hid_ctrl ,user 
+5348 70027c51 jam l2cap_rfcomm_channel ,mem_send_config_req 
+5349 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+534a 67e4027e store 2 ,mem_config_req_dest_cid 
+534b 20205359 branch l2cap_generate_config_req 
+
+l2cap_send_config_req_hid_ctrl:
+534c 6fe24224 fetch 1 ,mem_hid_control_state 
+534d 20405334 call l2cap_check_channel_state 
+534e 24345353 nbranch l2cap_send_config_req_hid_int ,user 
+534f 70027c52 jam l2cap_hid_control_channel ,mem_send_config_req 
+5350 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+5351 67e4027e store 2 ,mem_config_req_dest_cid 
+5352 20205359 branch l2cap_generate_config_req 
+
+l2cap_send_config_req_hid_int:
+5353 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+5354 20405334 call l2cap_check_channel_state 
+5355 24740000 nrtn user 
+5356 70027c53 jam l2cap_hid_interrupt_channel ,mem_send_config_req 
+5357 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+5358 67e4027e store 2 ,mem_config_req_dest_cid 
+
+l2cap_generate_config_req:
+5359 44e6c019 bpatch patch19_5 ,mem_patch19 
+535a 20405614 call l2cap_get_req_id 
+535b 20405692 call l2cap_malloc_signal_channel 
+535c 18002400 force 0 ,regb 
+535d 2040569d call l2cap_get_signal_tx_payload 
+535e 18007e04 force signal_config_req ,pdata 
+535f e7e20005 istore 1 ,contw 
+5360 6fe24227 fetch 1 ,mem_ml2cap_comm_id 
+5361 e7e20005 istore 1 ,contw 
+5362 58000008 setarg 0x0008 
+5363 e7e40005 istore 2 ,contw 
+5364 6fe4027e fetch 2 ,mem_config_req_dest_cid 
+5365 e7e40005 istore 2 ,contw 
+5366 58000000 setarg 0x0000 
+5367 e7e40005 istore 2 ,contw 
+5368 18007e01 force 1 ,pdata 
+5369 e7e20005 istore 1 ,contw 
+536a 18007e02 force 2 ,pdata 
+536b e7e20005 istore 1 ,contw 
+536c 6fe2027c fetch 1 ,mem_send_config_req 
+536d c028d371 beq l2cap_rfcomm_channel ,l2cap_generate_config_req_rfcomm 
+536e 58000030 setarg l2cap_config_mtu_sdp 
+536f e7e40005 istore 2 ,contw 
+5370 20205373 branch l2cap_generate_config_req_done 
+
+l2cap_generate_config_req_rfcomm:
+5371 580003e3 setarg l2cap_config_mtu_rfcomm 
+5372 e7e40005 istore 2 ,contw 
+
+l2cap_generate_config_req_done:
+5373 d840000c arg 0x0c ,temp 
+5374 6044026b storet 2 ,mem_l2cap_signal_tx_length 
+5375 2040569b call l2cap_get_signal_tx_buff 
+5376 6fe4026b fetch 2 ,mem_l2cap_signal_tx_length 
+5377 e7e40005 istore 2 ,contw 
+5378 18007e01 force l2cap_signal_channel ,pdata 
+5379 e7e40005 istore 2 ,contw 
+537a 70027c00 jam 0 ,mem_send_config_req 
+
+l2cap_proc_signal_config_req_rtn:
+537b 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp:
+537c 18c08c01 increase 1 ,contr 
+537d efe40006 ifetch 2 ,contr 
+537e 1fe22200 copy pdata ,rega 
+537f 1a627e00 copy regc ,pdata 
+5380 9a262600 isub rega ,regc 
+5381 efe40006 ifetch 2 ,contr 
+5382 1fe22200 copy pdata ,rega 
+5383 44e74019 bpatch patch19_6 ,mem_patch19 
+5384 58000050 setarg l2cap_sdp_channel 
+5385 9a267c00 isub rega ,null 
+5386 2022d394 branch l2cap_proc_signal_config_rsp_sdp ,zero 
+5387 58000051 setarg l2cap_rfcomm_channel 
+5388 9a267c00 isub rega ,null 
+5389 2022d398 branch l2cap_proc_signal_config_rsp_rfcomm ,zero 
+538a 58000052 setarg l2cap_hid_control_channel 
+538b 9a267c00 isub rega ,null 
+538c 2022d39c branch l2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+538d 58000053 setarg l2cap_hid_interrupt_channel 
+538e 9a267c00 isub rega ,null 
+538f 2022d3a0 branch l2cap_proc_signal_config_rsp_hid_int ,zero 
+5390 18c08c02 increase 2 ,contr 
+5391 efe40006 ifetch 2 ,contr 
+5392 98007c00 iforce null 
+5393 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp_sdp:
+5394 6fe24222 fetch 1 ,mem_sdp_state 
+5395 79207e05 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+5396 67e24222 store 1 ,mem_sdp_state 
+5397 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp_rfcomm:
+5398 6fe24223 fetch 1 ,mem_rfcomm_state 
+5399 79207e05 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+539a 67e24223 store 1 ,mem_rfcomm_state 
+539b 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp_hid_ctrl:
+539c 6fe24224 fetch 1 ,mem_hid_control_state 
+539d 79207e05 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+539e 67e24224 store 1 ,mem_hid_control_state 
+539f 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp_hid_int:
+53a0 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+53a1 79207e05 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+53a2 67e24225 store 1 ,mem_hid_interrupt_state 
+53a3 700a9506 jam bt_evt_hid_connected ,mem_fifo_temp 
+53a4 20207bab branch ui_ipc_send_event 
+
+l2cap_proc_signal_disconnect_req:
+53a5 efe20006 ifetch 1 ,contr 
+53a6 1fe20e00 copy pdata ,queue 
+53a7 efe40006 ifetch 2 ,contr 
+53a8 1fe22200 copy pdata ,rega 
+53a9 1a627e00 copy regc ,pdata 
+53aa 9a262600 isub rega ,regc 
+53ab efe40006 ifetch 2 ,contr 
+53ac 1fe22200 copy pdata ,rega 
+53ad efe40006 ifetch 2 ,contr 
+53ae 1fe21600 copy pdata ,timeup 
+53af 1a220400 copy rega ,temp 
+53b0 20407c83 call save_cont_pointers 
+53b1 44e7c019 bpatch patch19_7 ,mem_patch19 
+53b2 58000050 setarg l2cap_sdp_channel 
+53b3 98467c00 isub temp ,null 
+53b4 2022d3cc branch l2cap_proc_signal_disconnect_req_sdp ,zero 
+53b5 58000051 setarg l2cap_rfcomm_channel 
+53b6 98467c00 isub temp ,null 
+53b7 2022d3dc branch l2cap_proc_signal_disconnect_req_rfcomm ,zero 
+53b8 58000052 setarg l2cap_hid_control_channel 
+53b9 98467c00 isub temp ,null 
+53ba 2022d3c0 branch l2cap_proc_signal_disconnect_req_hid_ctrl ,zero 
+53bb 58000053 setarg l2cap_hid_interrupt_channel 
+53bc 98467c00 isub temp ,null 
+53bd 2022d3c6 branch l2cap_proc_signal_disconnect_req_hid_int ,zero 
+53be 2040543c call l2cap_reject_command 
+53bf 202053f1 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_proc_signal_disconnect_req_hid_ctrl:
+53c0 19620400 copy timeup ,temp 
+53c1 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+53c2 98467c00 isub temp ,null 
+53c3 2022d3d2 branch l2cap_disconnect_hid_control_now ,zero 
+53c4 2040543c call l2cap_reject_command 
+53c5 202053f1 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_proc_signal_disconnect_req_hid_int:
+53c6 19620400 copy timeup ,temp 
+53c7 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+53c8 98467c00 isub temp ,null 
+53c9 2022d3d4 branch l2cap_disconnect_hid_interrupt_now ,zero 
+53ca 2040543c call l2cap_reject_command 
+53cb 202053f1 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_proc_signal_disconnect_req_sdp:
+53cc 19620400 copy timeup ,temp 
+53cd 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+53ce 98467c00 isub temp ,null 
+53cf 2022d3d8 branch l2cap_disconnect_sdp_now ,zero 
+53d0 2040543c call l2cap_reject_command 
+53d1 202053f1 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_disconnect_hid_control_now:
+53d2 20405453 call l2cap_reset_hid_ctrl_state 
+53d3 202053e4 branch l2cap_send_disconnect_rsp_pkt 
+
+l2cap_disconnect_hid_interrupt_now:
+53d4 20405459 call l2cap_reset_hid_int_state 
+53d5 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+53d6 203a53e4 branch l2cap_send_disconnect_rsp_pkt ,blank 
+53d7 202053e4 branch l2cap_send_disconnect_rsp_pkt 
+
+l2cap_disconnect_sdp_now:
+53d8 2040544e call l2cap_reset_sdp_channel_state 
+53d9 6fe20284 fetch 1 ,mem_upper_sm_ss 
+53da 243a53e4 nbranch l2cap_send_disconnect_rsp_pkt ,blank 
+53db 202053e4 branch l2cap_send_disconnect_rsp_pkt 
+
+l2cap_proc_signal_disconnect_req_rfcomm:
+53dc 19620400 copy timeup ,temp 
+53dd 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+53de 98467c00 isub temp ,null 
+53df 2022d3e2 branch l2cap_disconnect_rfcomm_now ,zero 
+53e0 2040543c call l2cap_reject_command 
+53e1 202053f1 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_disconnect_rfcomm_now:
+53e2 20405449 call l2cap_reset_rfcomm_channel_state 
+53e3 202053e4 branch l2cap_send_disconnect_rsp_pkt 
+
+l2cap_send_disconnect_rsp_pkt:
+53e4 20407c88 call load_cont_pointers 
+53e5 58000007 setarg signal_disconnect_rsp 
+53e6 e7e20005 istore 1 ,contw 
+53e7 18e27e00 copy queue ,pdata 
+53e8 e7e20005 istore 1 ,contw 
+53e9 58000004 setarg 0x0004 
+53ea e7e40005 istore 2 ,contw 
+53eb 1a227e00 copy rega ,pdata 
+53ec e7e40005 istore 2 ,contw 
+53ed 19627e00 copy timeup ,pdata 
+53ee e7e40005 istore 2 ,contw 
+53ef 18007e08 force 8 ,pdata 
+53f0 202053f3 branch l2cap_proc_signal_disconnect_req_rtn 
+
+l2cap_proc_signal_disconnect_req_err_rtn:
+53f1 20407c88 call load_cont_pointers 
+53f2 202053f3 branch l2cap_proc_signal_disconnect_req_rtn 
+
+l2cap_proc_signal_disconnect_req_rtn:
+53f3 9a40a400 iadd regb ,regb 
+53f4 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_disconnect_rsp:
+53f5 efe20006 ifetch 1 ,contr 
+53f6 1fe20e00 copy pdata ,queue 
+53f7 efe40006 ifetch 2 ,contr 
+53f8 1fe22200 copy pdata ,rega 
+53f9 1a627e00 copy regc ,pdata 
+53fa 9a262600 isub rega ,regc 
+53fb efe40006 ifetch 2 ,contr 
+53fc 1fe21600 copy pdata ,timeup 
+53fd efe40006 ifetch 2 ,contr 
+53fe 1fe20400 copy pdata ,temp 
+53ff 20407c83 call save_cont_pointers 
+5400 44e8401a bpatch patch1a_0 ,mem_patch1a 
+5401 58000050 setarg l2cap_sdp_channel 
+5402 98467c00 isub temp ,null 
+5403 2022d40f branch l2cap_proc_signal_disconnect_rsp_sdp ,zero 
+5404 58000051 setarg l2cap_rfcomm_channel 
+5405 98467c00 isub temp ,null 
+5406 2022d415 branch l2cap_proc_signal_disconnect_rsp_rfcomm ,zero 
+5407 58000052 setarg l2cap_hid_control_channel 
+5408 98467c00 isub temp ,null 
+5409 2022d41b branch l2cap_proc_signal_disconnect_rsp_hid_ctrl ,zero 
+540a 58000053 setarg l2cap_hid_interrupt_channel 
+540b 98467c00 isub temp ,null 
+540c 2022d421 branch l2cap_proc_signal_disconnect_rsp_hid_int ,zero 
+540d 2040543c call l2cap_reject_command 
+540e 20205429 branch l2cap_proc_signal_disconnect_rsp_err_rtn 
+
+l2cap_proc_signal_disconnect_rsp_sdp:
+540f 18422200 copy temp ,rega 
+5410 19620400 copy timeup ,temp 
+5411 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+5412 98467c00 isub temp ,null 
+5413 2042d44e call l2cap_reset_sdp_channel_state ,zero 
+5414 20205427 branch l2cap_proc_signal_disconnect_rsp_rtn 
+
+l2cap_proc_signal_disconnect_rsp_rfcomm:
+5415 18422200 copy temp ,rega 
+5416 19620400 copy timeup ,temp 
+5417 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+5418 98467c00 isub temp ,null 
+5419 2042d449 call l2cap_reset_rfcomm_channel_state ,zero 
+541a 20205427 branch l2cap_proc_signal_disconnect_rsp_rtn 
+
+l2cap_proc_signal_disconnect_rsp_hid_ctrl:
+541b 18422200 copy temp ,rega 
+541c 19620400 copy timeup ,temp 
+541d 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+541e 98467c00 isub temp ,null 
+541f 2042d453 call l2cap_reset_hid_ctrl_state ,zero 
+5420 20205427 branch l2cap_proc_signal_disconnect_rsp_rtn 
+
+l2cap_proc_signal_disconnect_rsp_hid_int:
+5421 18422200 copy temp ,rega 
+5422 19620400 copy timeup ,temp 
+5423 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+5424 98467c00 isub temp ,null 
+5425 2042d459 call l2cap_reset_hid_int_state ,zero 
+5426 20205427 branch l2cap_proc_signal_disconnect_rsp_rtn 
+
+l2cap_proc_signal_disconnect_rsp_rtn:
+5427 20407c88 call load_cont_pointers 
+5428 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_disconnect_rsp_err_rtn:
+5429 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_echo_req:
+542a efe20006 ifetch 1 ,contr 
+542b 1fe20e00 copy pdata ,queue 
+542c efe40006 ifetch 2 ,contr 
+542d 1fe22200 copy pdata ,rega 
+542e 98c08c00 iadd contr ,contr 
+542f 58000009 setarg 9 
+5430 e7e20005 istore 1 ,contw 
+5431 18e27e00 copy queue ,pdata 
+5432 e7e20005 istore 1 ,contw 
+5433 18007e00 force 0x0000 ,pdata 
+5434 e7e40005 istore 2 ,contw 
+5435 18007e04 force 4 ,pdata 
+5436 9a40a400 iadd regb ,regb 
+5437 1a627e00 copy regc ,pdata 
+5438 9a262600 isub rega ,regc 
+5439 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_echo_rsp:
+543a 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_info_rsp:
+543b 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_reject_command:
+543c 18002400 force 0 ,regb 
+543d 2040569d call l2cap_get_signal_tx_payload 
+543e 58000001 setarg signal_cmd_reject 
+543f e7e20005 istore 1 ,contw 
+5440 18e27e00 copy queue ,pdata 
+5441 e7e20005 istore 1 ,contw 
+5442 58000002 setarg 2 
+5443 e7e40005 istore 2 ,contw 
+5444 58000000 setarg cmd_not_understood 
+5445 e7e40005 istore 2 ,contw 
+5446 1a40a406 increase 6 ,regb 
+5447 da600004 arg 4 ,regc 
+5448 202051f8 branch l2cap_process_one_signal_rtn 
+
+l2cap_reset_rfcomm_channel_state:
+5449 58000000 setarg 0 
+544a 67e40277 store 2 ,mem_rfcomm_tx_pkt_length 
+544b 67e4421c store 2 ,mem_rfcomm_remote_cid 
+544c 70422300 jam 0 ,mem_rfcomm_state 
+544d 20600000 rtn 
+
+l2cap_reset_sdp_channel_state:
+544e 58000000 setarg 0 
+544f 67e40271 store 2 ,mem_sdp_tx_pkt_length 
+5450 67e4421a store 2 ,mem_sdp_remote_cid 
+5451 70422200 jam 0 ,mem_sdp_state 
+5452 20600000 rtn 
+
+l2cap_reset_hid_ctrl_state:
+5453 58000000 setarg 0 
+5454 67e4421e store 2 ,mem_hid_ctrl_remote_cid 
+5455 70422400 jam 0 ,mem_hid_control_state 
+5456 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+5457 c000545f beq 0 ,l2cap_reset_hid_disconnected 
+5458 20600000 rtn 
+
+l2cap_reset_hid_int_state:
+5459 58000000 setarg 0 
+545a 67e44220 store 2 ,mem_hid_int_remote_cid 
+545b 70422500 jam 0 ,mem_hid_interrupt_state 
+545c 6fe24224 fetch 1 ,mem_hid_control_state 
+545d c000545f beq 0 ,l2cap_reset_hid_disconnected 
+545e 20600000 rtn 
+
+l2cap_reset_hid_disconnected:
+545f 700a9507 jam bt_evt_hid_disconnected ,mem_fifo_temp 
+5460 20207bab branch ui_ipc_send_event 
+
+l2cap_disconnect_interrupt_req:
+5461 6fe2027b fetch 1 ,mem_control_tasks 
+5462 793ffe00 set0 l2cap_disconnect_interrupt ,pdata 
+5463 67e2027b store 1 ,mem_control_tasks 
+5464 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+5465 207a0000 rtn blank 
+5466 20405692 call l2cap_malloc_signal_channel 
+5467 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+5468 1fe22200 copy pdata ,rega 
+5469 18002453 force l2cap_hid_interrupt_channel ,regb 
+546a 20205474 branch l2cap_generate_disconnect_req 
+
+l2cap_disconnect_control_req:
+546b 6fe2027b fetch 1 ,mem_control_tasks 
+546c 793ffe07 set0 l2cap_disconnect_control ,pdata 
+546d 67e2027b store 1 ,mem_control_tasks 
+546e 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+546f 207a0000 rtn blank 
+5470 20405692 call l2cap_malloc_signal_channel 
+5471 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+5472 1fe22200 copy pdata ,rega 
+5473 18002452 force l2cap_hid_control_channel ,regb 
+
+l2cap_generate_disconnect_req:
+5474 20405614 call l2cap_get_req_id 
+5475 2040569d call l2cap_get_signal_tx_payload 
+5476 18007e06 force signal_disconnect_req ,pdata 
+5477 e7e20005 istore 1 ,contw 
+5478 6fe24227 fetch 1 ,mem_ml2cap_comm_id 
+5479 e7e20005 istore 1 ,contw 
+547a 58000004 setarg 0x0004 
+547b e7e40005 istore 2 ,contw 
+547c 1a227e00 copy rega ,pdata 
+547d e7e40005 istore 2 ,contw 
+547e 1a427e00 copy regb ,pdata 
+547f e7e40005 istore 2 ,contw 
+5480 18000408 force 0x08 ,temp 
+5481 202054b8 branch ml2cap_send_signal 
+
+ml2cap_send_signal_connect_req:
+5482 44e8c01a bpatch patch1a_1 ,mem_patch1a 
+5483 20405614 call l2cap_get_req_id 
+5484 2040569d call l2cap_get_signal_tx_payload 
+5485 58000002 setarg signal_connect_req 
+5486 e7e20005 istore 1 ,contw 
+5487 6fe24227 fetch 1 ,mem_ml2cap_comm_id 
+5488 e7e20005 istore 1 ,contw 
+5489 58000004 setarg 0x0004 
+548a e7e40005 istore 2 ,contw 
+548b 18427e00 copy temp ,pdata 
+548c e7e40005 istore 2 ,contw 
+548d 19627e00 copy timeup ,pdata 
+548e e7e40005 istore 2 ,contw 
+548f d8400008 arg 8 ,temp 
+5490 202054b8 branch ml2cap_send_signal 
+
+ml2cap_send_signal_config_req:
+5491 44e9401a bpatch patch1a_2 ,mem_patch1a 
+5492 20405614 call l2cap_get_req_id 
+5493 2040569d call l2cap_get_signal_tx_payload 
+5494 58000004 setarg signal_config_req 
+5495 e7e20005 istore 1 ,contw 
+5496 6fe24227 fetch 1 ,mem_ml2cap_comm_id 
+5497 e7e20005 istore 1 ,contw 
+5498 58000008 setarg 0x0008 
+5499 e7e40005 istore 2 ,contw 
+549a 18427e00 copy temp ,pdata 
+549b e7e40005 istore 2 ,contw 
+549c 58000000 setarg 0x0000 
+549d e7e40005 istore 2 ,contw 
+549e 58000001 setarg 0x01 
+549f e7e20005 istore 1 ,contw 
+54a0 58000002 setarg 0x02 
+54a1 e7e20005 istore 1 ,contw 
+54a2 580003e3 setarg l2cap_config_mtu_rfcomm 
+54a3 e7e40005 istore 2 ,contw 
+54a4 d840000c arg 0xc ,temp 
+54a5 202054b8 branch ml2cap_send_signal 
+
+ml2cap_send_signal_disconn_req:
+54a6 44e9c01a bpatch patch1a_3 ,mem_patch1a 
+54a7 20405614 call l2cap_get_req_id 
+54a8 2040569d call l2cap_get_signal_tx_payload 
+54a9 58000006 setarg signal_disconnect_req 
+54aa e7e20005 istore 1 ,contw 
+54ab 6fe24227 fetch 1 ,mem_ml2cap_comm_id 
+54ac 1fe0fe01 increase 1 ,pdata 
+54ad 18a22200 copy contw ,rega 
+54ae 67e24227 store 1 ,mem_ml2cap_comm_id 
+54af 1a220a00 copy rega ,contw 
+54b0 e7e20005 istore 1 ,contw 
+54b1 58000004 setarg 0x0004 
+54b2 e7e40005 istore 2 ,contw 
+54b3 18427e00 copy temp ,pdata 
+54b4 e7e40005 istore 2 ,contw 
+54b5 19627e00 copy timeup ,pdata 
+54b6 e7e40005 istore 2 ,contw 
+54b7 d8400008 arg 0x8 ,temp 
+
+ml2cap_send_signal:
+54b8 6044026b storet 2 ,mem_l2cap_signal_tx_length 
+54b9 18427e00 copy temp ,pdata 
+54ba 203a563e branch l2cap_malloc_discard ,blank 
+54bb 2040569b call l2cap_get_signal_tx_buff 
+54bc 6fe4026b fetch 2 ,mem_l2cap_signal_tx_length 
+54bd e7e40005 istore 2 ,contw 
+54be 18007e01 force l2cap_signal_channel ,pdata 
+54bf e7e40005 istore 2 ,contw 
+54c0 20600000 rtn 
+
+msdp_send_req_done:
+54c1 6fe40271 fetch 2 ,mem_sdp_tx_pkt_length 
+54c2 203a4a8b branch assert ,blank 
+54c3 204056a8 call l2cap_get_sdp_tx_buff 
+54c4 6fe40271 fetch 2 ,mem_sdp_tx_pkt_length 
+54c5 e7e40005 istore 2 ,contw 
+54c6 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+54c7 e7e40005 istore 2 ,contw 
+54c8 20600000 rtn 
+
+ml2cap_rx_multiplexing:
+54c9 6fe40262 fetch 2 ,mem_l2cap_rx_pkt_length 
+54ca 203a51d6 branch l2cap_rx_reset_state ,blank 
+54cb 44ea401a bpatch patch1a_4 ,mem_patch1a 
+54cc 6fe20264 fetch 1 ,mem_l2cap_rx_cid 
+54cd c000d4d3 beq l2cap_signal_channel ,ml2cap_call_proc_signal 
+54ce c02851c2 beq l2cap_sdp_channel ,ml2cap_call_proc_sdp 
+54cf c028d1cf beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+54d0 c02951cd beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+54d1 c029d1cd beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+54d2 202051d6 branch l2cap_rx_reset_state 
+
+ml2cap_call_proc_signal:
+54d3 44eac01a bpatch patch1a_5 ,mem_patch1a 
+54d4 20405692 call l2cap_malloc_signal_channel 
+54d5 18002400 force 0 ,regb 
+54d6 2040569d call l2cap_get_signal_tx_payload 
+54d7 1fe20a00 copy pdata ,contw 
+54d8 6fe40262 fetch 2 ,mem_l2cap_rx_pkt_length 
+54d9 1fe22600 copy pdata ,regc 
+54da 6fe40260 fetch 2 ,mem_l2cap_payload_ptr 
+54db 98000c00 iforce contr 
+
+ml2cap_proc_one_comm_loop:
+54dc 204054e2 call ml2cap_proc_one_comm 
+54dd 1a60a7fc increase -4 ,regc 
+54de 2422d4dc nbranch ml2cap_proc_one_comm_loop ,zero 
+54df 1a420400 copy regb ,temp 
+54e0 204054b8 call ml2cap_send_signal 
+54e1 202051d6 branch l2cap_rx_reset_state 
+
+ml2cap_proc_one_comm:
+54e2 efe20006 ifetch 1 ,contr 
+54e3 c00154ed beq signal_connect_req ,ml2cap_proc_signal_connect_req 
+54e4 c000d4f0 beq signal_cmd_reject ,ml2cap_proc_signal_cmd_reject 
+54e5 c001d4fa beq signal_connect_rsp ,ml2cap_proc_signal_connect_rsp 
+54e6 c002d536 beq signal_config_rsp ,ml2cap_proc_signal_config_rsp 
+54e7 c0025568 beq signal_config_req ,ml2cap_proc_signal_config_req 
+54e8 c003d5ed beq signal_disconnect_rsp ,ml2cap_proc_signal_disconn_rsp 
+54e9 c00355bb beq signal_disconnect_req ,ml2cap_proc_signal_disconn_req 
+54ea c004542a beq signal_echo_req ,l2cap_proc_signal_echo_req 
+54eb c0055214 beq signal_info_req ,ml2cap_proc_signal_info_req 
+54ec 20205608 branch ml2cap_proc_send_reject 
+
+ml2cap_proc_signal_connect_req:
+54ed 20407c83 call save_cont_pointers 
+54ee 20407c88 call load_cont_pointers 
+54ef 2020522b branch l2cap_proc_signal_connect_req 
+
+ml2cap_proc_signal_cmd_reject:
+54f0 efe20006 ifetch 1 ,contr 
+54f1 1fe20e00 copy pdata ,queue 
+54f2 efe40006 ifetch 2 ,contr 
+54f3 1fe22200 copy pdata ,rega 
+54f4 1a627e00 copy regc ,pdata 
+54f5 9a262600 isub rega ,regc 
+
+mvptr:
+54f6 efe20006 ifetch 1 ,contr 
+54f7 1a20a3ff increase -1 ,rega 
+54f8 2422d4f6 nbranch mvptr ,zero 
+54f9 20600000 rtn 
+
+ml2cap_proc_signal_connect_rsp:
+54fa efe20006 ifetch 1 ,contr 
+54fb 1fe20e00 copy pdata ,queue 
+54fc efe40006 ifetch 2 ,contr 
+54fd 1fe22200 copy pdata ,rega 
+54fe efe40006 ifetch 2 ,contr 
+54ff 1fe21600 copy pdata ,timeup 
+5500 efe40006 ifetch 2 ,contr 
+5501 1fe20400 copy pdata ,temp 
+5502 efe40006 ifetch 2 ,contr 
+5503 1fe67c00 sub pdata ,0 ,null 
+5504 2022d50c branch ml2cap_proc_signal_connect_rsp_sucessful ,zero 
+5505 c0015508 beq l2cap_connect_refused_psm_unsupported ,ml2cap_proc_signal_connect_refused_result 
+5506 c0025508 beq l2cap_connect_refused_no_resources ,ml2cap_proc_signal_connect_refused_result 
+5507 2020550a branch ml2cap_proc_signal_connect_rsp_mnosucc 
+
+ml2cap_proc_signal_connect_refused_result:
+5508 700a9516 jam bt_evt_ml2cap_conn_refused ,mem_fifo_temp 
+5509 20407bab call ui_ipc_send_event 
+
+ml2cap_proc_signal_connect_rsp_mnosucc:
+550a efe40006 ifetch 2 ,contr 
+550b 20205533 branch mnosucc 
+
+ml2cap_proc_signal_connect_rsp_sucessful:
+550c 20407c83 call save_cont_pointers 
+550d 44eb401a bpatch patch1a_6 ,mem_patch1a 
+550e 58000050 setarg l2cap_sdp_channel 
+550f 98467c00 isub temp ,null 
+5510 2022d51b branch ml2cap_proc_signal_connect_rsp_sdp ,zero 
+5511 58000051 setarg l2cap_rfcomm_channel 
+5512 98467c00 isub temp ,null 
+5513 2022d521 branch ml2cap_proc_signal_connect_rsp_rfcomm ,zero 
+5514 58000053 setarg l2cap_hid_interrupt_channel 
+5515 98467c00 isub temp ,null 
+5516 2022d52d branch ml2cap_proc_signal_connect_rsp_hid_int ,zero 
+5517 58000052 setarg l2cap_hid_control_channel 
+5518 98467c00 isub temp ,null 
+5519 2022d527 branch ml2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+551a 20205533 branch mnosucc 
+
+ml2cap_proc_signal_connect_rsp_sdp:
+551b 19627e00 copy timeup ,pdata 
+551c 67e4421a store 2 ,mem_sdp_remote_cid 
+551d 6fe24222 fetch 1 ,mem_sdp_state 
+551e 79207e01 set1 l2cap_channel_state_conn_res 
+551f 67e24222 store 1 ,mem_sdp_state 
+5520 20205532 branch mnosucc1 
+
+ml2cap_proc_signal_connect_rsp_rfcomm:
+5521 19627e00 copy timeup ,pdata 
+5522 67e4421c store 2 ,mem_rfcomm_remote_cid 
+5523 6fe24223 fetch 1 ,mem_rfcomm_state 
+5524 79207e01 set1 l2cap_channel_state_conn_res 
+5525 67e24223 store 1 ,mem_rfcomm_state 
+5526 20205532 branch mnosucc1 
+
+ml2cap_proc_signal_connect_rsp_hid_ctrl:
+5527 19627e00 copy timeup ,pdata 
+5528 67e4421e store 2 ,mem_hid_ctrl_remote_cid 
+5529 6fe24224 fetch 1 ,mem_hid_control_state 
+552a 79207e01 set1 l2cap_channel_state_conn_res 
+552b 67e24224 store 1 ,mem_hid_control_state 
+552c 20205532 branch mnosucc1 
+
+ml2cap_proc_signal_connect_rsp_hid_int:
+552d 19627e00 copy timeup ,pdata 
+552e 67e44220 store 2 ,mem_hid_int_remote_cid 
+552f 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+5530 79207e01 set1 l2cap_channel_state_conn_res 
+5531 67e24225 store 1 ,mem_hid_interrupt_state 
+
+mnosucc1:
+5532 20407c88 call load_cont_pointers 
+
+mnosucc:
+5533 1a627e00 copy regc ,pdata 
+5534 9a262600 isub rega ,regc 
+5535 20600000 rtn 
+
+ml2cap_proc_signal_config_rsp:
+5536 efe20006 ifetch 1 ,contr 
+5537 1fe20e00 copy pdata ,queue 
+5538 efe40006 ifetch 2 ,contr 
+5539 1fe22200 copy pdata ,rega 
+553a 1a627e00 copy regc ,pdata 
+553b 9a262600 isub rega ,regc 
+553c efe40006 ifetch 2 ,contr 
+553d 1fe21600 copy pdata ,timeup 
+553e efe40006 ifetch 2 ,contr 
+553f efe40006 ifetch 2 ,contr 
+5540 243a5562 nbranch mcrsdone1 ,blank 
+5541 20407c83 call save_cont_pointers 
+5542 19620400 copy timeup ,temp 
+5543 44ebc01a bpatch patch1a_7 ,mem_patch1a 
+5544 58000050 setarg l2cap_sdp_channel 
+5545 98467c00 isub temp ,null 
+5546 2022d550 branch ml2cap_proc_signal_config_rsp_sdp ,zero 
+5547 58000051 setarg l2cap_rfcomm_channel 
+5548 98467c00 isub temp ,null 
+5549 2022d554 branch ml2cap_proc_signal_config_rsp_rfcomm ,zero 
+554a 58000052 setarg l2cap_hid_control_channel 
+554b 98467c00 isub temp ,null 
+554c 2022d558 branch ml2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+554d 58000053 setarg l2cap_hid_interrupt_channel 
+554e 98467c00 isub temp ,null 
+554f 2022d55c branch ml2cap_proc_signal_config_rsp_hid_int ,zero 
+
+ml2cap_proc_signal_config_rsp_sdp:
+5550 6fe24222 fetch 1 ,mem_sdp_state 
+5551 79207e05 set1 l2cap_channel_state_rcv_cfg_res 
+5552 67e24222 store 1 ,mem_sdp_state 
+5553 20600000 rtn 
+
+ml2cap_proc_signal_config_rsp_rfcomm:
+5554 6fe24223 fetch 1 ,mem_rfcomm_state 
+5555 79207e05 set1 l2cap_channel_state_rcv_cfg_res 
+5556 67e24223 store 1 ,mem_rfcomm_state 
+5557 20600000 rtn 
+
+ml2cap_proc_signal_config_rsp_hid_ctrl:
+5558 6fe24224 fetch 1 ,mem_hid_control_state 
+5559 79207e05 set1 l2cap_channel_state_rcv_cfg_res 
+555a 67e24224 store 1 ,mem_hid_control_state 
+555b 20600000 rtn 
+
+ml2cap_proc_signal_config_rsp_hid_int:
+555c 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+555d 79207e05 set1 l2cap_channel_state_rcv_cfg_res 
+555e 67e24225 store 1 ,mem_hid_interrupt_state 
+555f 700a9506 jam bt_evt_hid_connected ,mem_fifo_temp 
+5560 20207bab branch ui_ipc_send_event 
+
+mcfrsdone:
+5561 20407c88 call load_cont_pointers 
+
+mcrsdone1:
+5562 1a20a3fa increase -6 ,rega 
+
+mloop2:
+5563 2022d567 branch mcrsdone ,zero 
+5564 18c08c01 increase 1 ,contr 
+5565 1a20a3ff increase -1 ,rega 
+5566 20205563 branch mloop2 
+
+mcrsdone:
+5567 20600000 rtn 
+
+ml2cap_proc_signal_config_req:
+5568 efe20006 ifetch 1 ,contr 
+5569 1fe20e00 copy pdata ,queue 
+556a efe40006 ifetch 2 ,contr 
+556b 1fe22200 copy pdata ,rega 
+556c 1a627e00 copy regc ,pdata 
+556d 9a262600 isub rega ,regc 
+556e efe40006 ifetch 2 ,contr 
+556f 18c08c02 increase 2 ,contr 
+5570 1fe20400 copy pdata ,temp 
+5571 58000005 setarg signal_config_rsp 
+5572 e7e20005 istore 1 ,contw 
+5573 18e27e00 copy queue ,pdata 
+5574 e7e20005 istore 1 ,contw 
+5575 1a20a202 increase 2 ,rega 
+5576 1a227e00 copy rega ,pdata 
+5577 e7e40005 istore 2 ,contw 
+5578 20407c83 call save_cont_pointers 
+5579 44ec401b bpatch patch1b_0 ,mem_patch1b 
+557a 58000050 setarg l2cap_sdp_channel 
+557b 98467c00 isub temp ,null 
+557c 2022d587 branch ml2cap_proc_signal_config_req_sdp ,zero 
+557d 58000051 setarg l2cap_rfcomm_channel 
+557e 98467c00 isub temp ,null 
+557f 2022d598 branch ml2cap_proc_signal_config_req_rfcomm ,zero 
+5580 58000052 setarg l2cap_hid_control_channel 
+5581 98467c00 isub temp ,null 
+5582 2022d59e branch ml2cap_proc_signal_config_req_hid_ctrl ,zero 
+5583 58000053 setarg l2cap_hid_interrupt_channel 
+5584 98467c00 isub temp ,null 
+5585 2022d5a4 branch ml2cap_proc_signal_config_req_hid_int ,zero 
+5586 202055a9 branch mcfgrq_done 
+
+ml2cap_proc_signal_config_req_sdp:
+5587 6fe24222 fetch 1 ,mem_sdp_state 
+5588 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+5589 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+558a 67e24222 store 1 ,mem_sdp_state 
+558b c2815595 bbit1 l2cap_channel_state_snd_cfg_req ,ml2cap_proc_signal_config_req_sdp_nsndreq 
+558c 6842027b fetcht 1 ,mem_control_tasks 
+558d 79200406 set1 l2cap_init_config_req ,temp 
+558e 6042027b storet 1 ,mem_control_tasks 
+558f 18e27e00 copy queue ,pdata 
+5590 1fe0fe01 increase 1 ,pdata 
+5591 67e2027d store 1 ,mem_config_identifier 
+5592 6fe24222 fetch 1 ,mem_sdp_state 
+5593 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+5594 67e24222 store 1 ,mem_sdp_state 
+
+ml2cap_proc_signal_config_req_sdp_nsndreq:
+5595 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+5596 67e4027e store 2 ,mem_config_req_dest_cid 
+5597 202055a9 branch mcfgrq_done 
+
+ml2cap_proc_signal_config_req_rfcomm:
+5598 6fe24223 fetch 1 ,mem_rfcomm_state 
+5599 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+559a 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+559b 67e24223 store 1 ,mem_rfcomm_state 
+559c 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+559d 202055a9 branch mcfgrq_done 
+
+ml2cap_proc_signal_config_req_hid_ctrl:
+559e 6fe24224 fetch 1 ,mem_hid_control_state 
+559f 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+55a0 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+55a1 67e24224 store 1 ,mem_hid_control_state 
+55a2 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+55a3 202055a9 branch mcfgrq_done 
+
+ml2cap_proc_signal_config_req_hid_int:
+55a4 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+55a5 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+55a6 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+55a7 67e24225 store 1 ,mem_hid_interrupt_state 
+55a8 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+
+mcfgrq_done:
+55a9 1fe21600 copy pdata ,timeup 
+55aa 20407c88 call load_cont_pointers 
+55ab 19627e00 copy timeup ,pdata 
+55ac e7e40005 istore 2 ,contw 
+55ad 18007e00 force 0x0000 ,pdata 
+55ae e7e40005 istore 2 ,contw 
+55af 18007e00 force 0x0000 ,pdata 
+55b0 e7e40005 istore 2 ,contw 
+55b1 18007e0a force 10 ,pdata 
+55b2 9a40a400 iadd regb ,regb 
+55b3 1a20a3fa increase -6 ,rega 
+
+mloop1:
+55b4 2022d5ba branch mcrqdone ,zero 
+55b5 efe20006 ifetch 1 ,contr 
+55b6 e7e20005 istore 1 ,contw 
+55b7 1a40a401 increase 1 ,regb 
+55b8 1a20a3ff increase -1 ,rega 
+55b9 202055b4 branch mloop1 
+
+mcrqdone:
+55ba 20600000 rtn 
+
+ml2cap_proc_signal_disconn_req:
+55bb efe20006 ifetch 1 ,contr 
+55bc 1fe20e00 copy pdata ,queue 
+55bd efe40006 ifetch 2 ,contr 
+55be 1fe22200 copy pdata ,rega 
+55bf 1a627e00 copy regc ,pdata 
+55c0 9a262600 isub rega ,regc 
+55c1 efe40006 ifetch 2 ,contr 
+55c2 1fe22200 copy pdata ,rega 
+55c3 efe40006 ifetch 2 ,contr 
+55c4 1fe21600 copy pdata ,timeup 
+55c5 20407c83 call save_cont_pointers 
+55c6 44ecc01b bpatch patch1b_1 ,mem_patch1b 
+55c7 58000050 setarg l2cap_sdp_channel 
+55c8 1a220400 copy rega ,temp 
+55c9 98467c00 isub temp ,null 
+55ca 2022d5d4 branch ml2cap_proc_signal_disconn_sdp ,zero 
+55cb 58000052 setarg l2cap_hid_control_channel 
+55cc 1a220400 copy rega ,temp 
+55cd 98467c00 isub temp ,null 
+55ce 2022d5d9 branch ml2cap_proc_signal_disconn_hid_ctrl ,zero 
+55cf 58000053 setarg l2cap_hid_interrupt_channel 
+55d0 1a220400 copy rega ,temp 
+55d1 98467c00 isub temp ,null 
+55d2 2022d5db branch ml2cap_proc_signal_disconn_hid_int ,zero 
+55d3 202055dd branch mclsrfc 
+
+ml2cap_proc_signal_disconn_sdp:
+55d4 58000000 setarg 0x0000 
+55d5 67e40271 store 2 ,mem_sdp_tx_pkt_length 
+55d6 67e4421a store 2 ,mem_sdp_remote_cid 
+55d7 67e24222 store 1 ,mem_sdp_state 
+55d8 202055df branch mclssdp 
+
+ml2cap_proc_signal_disconn_hid_ctrl:
+55d9 20405453 call l2cap_reset_hid_ctrl_state 
+55da 202055df branch mclssdp 
+
+ml2cap_proc_signal_disconn_hid_int:
+55db 20405459 call l2cap_reset_hid_int_state 
+55dc 202055df branch mclssdp 
+
+mclsrfc:
+55dd 58000000 setarg 0x0000 
+55de 67e40277 store 2 ,mem_rfcomm_tx_pkt_length 
+
+mclssdp:
+55df 20407c88 call load_cont_pointers 
+55e0 58000007 setarg signal_disconnect_rsp 
+55e1 e7e20005 istore 1 ,contw 
+55e2 18e27e00 copy queue ,pdata 
+55e3 e7e20005 istore 1 ,contw 
+55e4 58000004 setarg 0x0004 
+55e5 e7e40005 istore 2 ,contw 
+55e6 1a227e00 copy rega ,pdata 
+55e7 e7e40005 istore 2 ,contw 
+55e8 19627e00 copy timeup ,pdata 
+55e9 e7e40005 istore 2 ,contw 
+55ea 18007e08 force 8 ,pdata 
+55eb 9a40a400 iadd regb ,regb 
+55ec 20600000 rtn 
+
+ml2cap_proc_signal_disconn_rsp:
+55ed efe20006 ifetch 1 ,contr 
+55ee 1fe20e00 copy pdata ,queue 
+55ef efe40006 ifetch 2 ,contr 
+55f0 1fe22200 copy pdata ,rega 
+55f1 efe40006 ifetch 2 ,contr 
+55f2 1fe21600 copy pdata ,timeup 
+55f3 efe40006 ifetch 2 ,contr 
+55f4 1fe20400 copy pdata ,temp 
+55f5 20407c83 call save_cont_pointers 
+55f6 44ed401b bpatch patch1b_2 ,mem_patch1b 
+55f7 6fe24227 fetch 1 ,mem_ml2cap_comm_id 
+55f8 a8e1fe00 icompare 0xff ,queue 
+55f9 2420d604 nbranch mdisdone ,true 
+55fa 58000050 setarg l2cap_sdp_channel 
+55fb 98467c00 isub temp ,null 
+55fc 2022d601 branch ml2cap_proc_signal_disconn_rsp_sdp ,zero 
+55fd 58000051 setarg l2cap_rfcomm_channel 
+55fe 98467c00 isub temp ,null 
+55ff 2022d604 branch ml2cap_proc_signal_disconn_rsp_rfcomm ,zero 
+5600 20205604 branch mdisdone 
+
+ml2cap_proc_signal_disconn_rsp_sdp:
+5601 70421a00 jam 0 ,mem_sdp_remote_cid 
+5602 70422200 jam 0 ,mem_sdp_state 
+5603 20205604 branch mdisdone 
+
+ml2cap_proc_signal_disconn_rsp_rfcomm:
+
+mdisdone:
+5604 20407c88 call load_cont_pointers 
+5605 1a627e00 copy regc ,pdata 
+5606 9a262600 isub rega ,regc 
+5607 20600000 rtn 
+
+ml2cap_proc_send_reject:
+5608 58000001 setarg signal_cmd_reject 
+5609 e7e20005 istore 1 ,contw 
+560a efe20006 ifetch 1 ,contr 
+560b e7e20005 istore 1 ,contw 
+560c 58000002 setarg 0x0002 
+560d e7e40005 istore 2 ,contw 
+560e 58000000 setarg 0x0000 
+560f e7e40005 istore 2 ,contw 
+5610 58000006 setarg 0x0006 
+5611 9a40a400 iadd regb ,regb 
+5612 18002604 force 4 ,regc 
+5613 20600000 rtn 
+
+l2cap_get_req_id:
+5614 6fe24227 fetch 1 ,mem_ml2cap_comm_id 
+5615 1fe0fe01 increase 1 ,pdata 
+5616 c0805618 bne 0 ,l2cap_get_req_id_ok 
+5617 1fe0fe01 increase 1 ,pdata 
+
+l2cap_get_req_id_ok:
+5618 67e24227 store 1 ,mem_ml2cap_comm_id 
+5619 20600000 rtn 
+
+l2cap_malloc:
+561a 44edc01b bpatch patch1b_3 ,mem_patch1b 
+561b da400000 arg 0 ,regb 
+561c 20405648 call l2cap_malloc_is_fifo_full 
+561d 243a4a8b nbranch assert ,blank 
+561e 20405658 call l2cap_malloc_get_full_map 
+561f da400c00 arg mem_tx_buff0 ,regb 
+5620 d8e00000 arg 0 ,queue 
+
+l2cap_malloc_loop:
+5621 68424228 fetcht 1 ,mem_used_map 
+5622 a84fffff qisolate1 temp 
+5623 2020d629 branch l2cap_malloc_next ,true 
+5624 2040567a call l2cap_malloc_enough 
+5625 19667c00 sub timeup ,0 ,null 
+5626 20215629 branch l2cap_malloc_next ,positive 
+5627 20405662 call l2cap_malloc_into_fifo 
+5628 2020562f branch l2cap_malloc_rtn 
+
+l2cap_malloc_next:
+5629 1a40a480 increase 128 ,regb 
+562a 18e08e01 increase 1 ,queue 
+562b 58000008 setarg 8 
+562c 98e67c00 isub queue ,null 
+562d 20215621 branch l2cap_malloc_loop ,positive 
+562e da400000 arg 0 ,regb 
+
+l2cap_malloc_rtn:
+562f 1a427e00 copy regb ,pdata 
+5630 203a4a8b branch assert ,blank 
+5631 20600000 rtn 
+
+l2cap_malloc_fifo_out:
+5632 44ee401b bpatch patch1b_4 ,mem_patch1b 
+5633 20405651 call l2cap_malloc_fifo_get_first_ptr 
+5634 18c08c01 increase 1 ,contr 
+5635 efe40006 ifetch 2 ,contr 
+5636 20600000 rtn 
+
+l2cap_malloc_free:
+5637 44eec01b bpatch patch1b_5 ,mem_patch1b 
+5638 20405651 call l2cap_malloc_fifo_get_first_ptr 
+5639 18c20a00 copy contr ,contw 
+563a 18c20400 copy contr ,temp 
+563b 58000000 setarg 0 
+563c e7e60005 istore 3 ,contw 
+563d 20600000 rtn 
+
+l2cap_malloc_discard:
+563e 44ef401b bpatch patch1b_6 ,mem_patch1b 
+563f 2040564e call l2cap_malloc_is_fifo_empty 
+5640 203a4a8b branch assert ,blank 
+5641 6fe6422f fetch 3 ,mem_tx_fifo2 
+5642 67e64232 store 3 ,mem_tx_fifo3 
+5643 6fe6422c fetch 3 ,mem_tx_fifo1 
+5644 67e6422f store 3 ,mem_tx_fifo2 
+5645 6fe64229 fetch 3 ,mem_tx_fifo0 
+5646 67e6422c store 3 ,mem_tx_fifo1 
+5647 20600000 rtn 
+
+l2cap_malloc_is_fifo_full:
+5648 44efc01b bpatch patch1b_7 ,mem_patch1b 
+5649 6fe64229 fetch 3 ,mem_tx_fifo0 
+564a 20600000 rtn 
+
+l2cap_malloc_is_fifo_nearly_full:
+564b 44f0401c bpatch patch1c_0 ,mem_patch1c 
+564c 6fe6422c fetch 3 ,mem_tx_fifo1 
+564d 20600000 rtn 
+
+l2cap_malloc_is_fifo_empty:
+564e 44f0c01c bpatch patch1c_1 ,mem_patch1c 
+564f 6fe64232 fetch 3 ,mem_tx_fifo3 
+5650 20600000 rtn 
+
+l2cap_malloc_fifo_get_first_ptr:
+5651 2040564e call l2cap_malloc_is_fifo_empty 
+5652 203a4a8b branch assert ,blank 
+5653 d8c04229 arg mem_tx_fifo0 ,contr 
+
+l2cap_malloc_free_loop:
+5654 efe60006 ifetch 3 ,contr 
+5655 203a5654 branch l2cap_malloc_free_loop ,blank 
+5656 18c08dfd increase -3 ,contr 
+5657 20600000 rtn 
+
+l2cap_malloc_get_full_map:
+5658 44f1401c bpatch patch1c_2 ,mem_patch1c 
+5659 df200004 arg 4 ,loopcnt 
+565a d8c04229 arg mem_tx_fifo0_map ,contr 
+565b d8400000 arg 0 ,temp 
+
+l2cap_malloc_get_full_map_loop:
+565c efe60006 ifetch 3 ,contr 
+565d 1fe17eff and pdata ,0xff ,pdata 
+565e 98418400 ior temp ,temp 
+565f c200565c loop l2cap_malloc_get_full_map_loop 
+5660 60424228 storet 1 ,mem_used_map 
+5661 20600000 rtn 
+
+l2cap_malloc_into_fifo:
+5662 44f1c01c bpatch patch1c_3 ,mem_patch1c 
+5663 20405648 call l2cap_malloc_is_fifo_full 
+5664 243a4a8b nbranch assert ,blank 
+5665 2040564e call l2cap_malloc_is_fifo_empty 
+5666 203a566f branch l2cap_malloc_into_fifo_no_push ,blank 
+5667 6fe6422c fetch 3 ,mem_tx_fifo1 
+5668 67e64229 store 3 ,mem_tx_fifo0 
+5669 efe60006 ifetch 3 ,contr 
+566a e7e60005 istore 3 ,contw 
+566b efe60006 ifetch 3 ,contr 
+566c e7e60005 istore 3 ,contw 
+566d 58000000 setarg 0 
+566e e7e60005 istore 3 ,contw 
+
+l2cap_malloc_into_fifo_no_push:
+566f d8400000 arg 0 ,temp 
+5670 19627e00 copy timeup ,pdata 
+5671 98e0fe00 iadd queue ,pdata 
+
+l2cap_malloc_into_fifo_loop:
+5672 f9200400 qset1 temp 
+5673 18e08e01 increase 1 ,queue 
+5674 98e67c00 isub queue ,null 
+5675 2422d672 nbranch l2cap_malloc_into_fifo_loop ,zero 
+5676 1a4d7e00 lshift8 regb ,pdata 
+5677 9841fe00 ior temp ,pdata 
+5678 67e64232 store 3 ,mem_tx_fifo3 
+5679 20600000 rtn 
+
+l2cap_malloc_enough:
+567a 44f2401c bpatch patch1c_4 ,mem_patch1c 
+567b 20405658 call l2cap_malloc_get_full_map 
+567c 18e22600 copy queue ,regc 
+567d d8400000 arg 0 ,temp 
+567e d9600000 arg 0 ,timeup 
+
+l2cap_malloc_enough_loop:
+567f 18e27e00 copy queue ,pdata 
+5680 c004568a beq 8 ,l2cap_malloc_enough_end 
+5681 6fe24228 fetch 1 ,mem_used_map 
+5682 afefffff qisolate1 pdata 
+5683 2020d68a branch l2cap_malloc_enough_end ,true 
+5684 18408480 increase 128 ,temp 
+5685 18e08e01 increase 1 ,queue 
+5686 1a227e00 copy rega ,pdata 
+5687 98467c00 isub temp ,null 
+5688 2022d68a branch l2cap_malloc_enough_end ,zero 
+5689 2021567f branch l2cap_malloc_enough_loop ,positive 
+
+l2cap_malloc_enough_end:
+568a 18427e00 copy temp ,pdata 
+568b 9a267c00 isub rega ,null 
+568c 24215690 nbranch l2cap_malloc_enough_rtn ,positive 
+568d 18e27e00 copy queue ,pdata 
+568e 1a620400 copy regc ,temp 
+568f 98461600 isub temp ,timeup 
+
+l2cap_malloc_enough_rtn:
+5690 1a620e00 copy regc ,queue 
+5691 20600000 rtn 
+
+l2cap_malloc_signal_channel:
+5692 44f2c01c bpatch patch1c_5 ,mem_patch1c 
+5693 da20007f arg l2cap_signal_malloc_size ,rega 
+5694 2040561a call l2cap_malloc 
+5695 67e40267 store 2 ,mem_l2cap_signal_tx_buff_ptr 
+5696 1fe0fe04 increase 4 ,pdata 
+5697 67e40269 store 2 ,mem_l2cap_signal_tx_payload_ptr 
+5698 58000000 setarg 0 
+5699 67e4026b store 2 ,mem_l2cap_signal_tx_length 
+569a 20600000 rtn 
+
+l2cap_get_signal_tx_buff:
+569b 6fe40267 fetch 2 ,mem_l2cap_signal_tx_buff_ptr 
+569c 202056bc branch l2cap_util_pdata_to_contw 
+
+l2cap_get_signal_tx_payload:
+569d 6fe40269 fetch 2 ,mem_l2cap_signal_tx_payload_ptr 
+569e 202056bc branch l2cap_util_pdata_to_contw 
+
+l2cap_malloc_sdp_channel:
+569f 44f3401c bpatch patch1c_6 ,mem_patch1c 
+56a0 da2000fa arg sdp_malloc_size ,rega 
+56a1 2040561a call l2cap_malloc 
+56a2 67e4026d store 2 ,mem_sdp_tx_buff_ptr 
+56a3 1fe0fe04 increase 4 ,pdata 
+56a4 67e4026f store 2 ,mem_sdp_tx_payload_ptr 
+56a5 58000000 setarg 0 
+56a6 67e40271 store 2 ,mem_sdp_tx_pkt_length 
+56a7 20600000 rtn 
+
+l2cap_get_sdp_tx_buff:
+56a8 6fe4026d fetch 2 ,mem_sdp_tx_buff_ptr 
+56a9 202056bc branch l2cap_util_pdata_to_contw 
+
+l2cap_get_sdp_tx_payload:
+56aa 6fe4026f fetch 2 ,mem_sdp_tx_payload_ptr 
+56ab 202056bc branch l2cap_util_pdata_to_contw 
+
+l2cap_malloc_rfcomm_channel:
+56ac 44f3c01c bpatch patch1c_7 ,mem_patch1c 
+56ad 20407c57 call push_stack 
+56ae 70028001 jam rfcomm_malloc_fail ,mem_rfcomm_malloc_fail_flag 
+56af 20405648 call l2cap_malloc_is_fifo_full 
+56b0 247a0000 nrtn blank 
+56b1 da20007f arg rfcomm_malloc_size ,rega 
+56b2 2040561a call l2cap_malloc 
+56b3 67e40273 store 2 ,mem_rfcomm_tx_buff_ptr 
+56b4 1fe0fe04 increase 4 ,pdata 
+56b5 67e40275 store 2 ,mem_rfcomm_tx_payload_ptr 
+56b6 58000000 setarg 0 
+56b7 67e40277 store 2 ,mem_rfcomm_tx_pkt_length 
+56b8 70028000 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+56b9 20207c67 branch pop_stack 
+
+l2cap_get_rfcomm_tx_buff:
+56ba 6fe40273 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+56bb 202056bc branch l2cap_util_pdata_to_contw 
+
+l2cap_util_pdata_to_contw:
+56bc 203a4a8b branch assert ,blank 
+56bd 1fe20a00 copy pdata ,contw 
+56be 20600000 rtn 
+
+l2cap_lpm_save_calc_len:
+56bf 44f4401d bpatch patch1d_0 ,mem_patch1d 
+56c0 da400000 arg 0 ,regb 
+56c1 da204229 arg mem_tx_fifo0_map ,rega 
+56c2 1a20a3fe increase -2 ,rega 
+
+l2cap_lpm_save_calc_len_loop:
+56c3 1a20a202 increase 2 ,rega 
+56c4 58004235 setarg mem_tx_fifo_end 
+56c5 9a267c00 isub rega ,null 
+56c6 2022d6cf branch l2cap_lpm_save_calc_len_end ,zero 
+56c7 efe20011 ifetch 1 ,rega 
+56c8 1a20a201 increase 1 ,rega 
+56c9 203a56c3 branch l2cap_lpm_save_calc_len_loop ,blank 
+56ca e8440011 ifetcht 2 ,rega 
+56cb efe40002 ifetch 2 ,temp 
+56cc 9a40a400 iadd regb ,regb 
+56cd 1a40a404 increase 4 ,regb 
+56ce 202056c3 branch l2cap_lpm_save_calc_len_loop 
+
+l2cap_lpm_save_calc_len_end:
+56cf 1a427e00 copy regb ,pdata 
+56d0 20600000 rtn 
+
+l2cap_lpm_get_wake_lock:
+56d1 d8e0000c arg wake_lock_l2cap_tx ,queue 
+56d2 20204bec branch lpm_get_wake_lock 
+
+l2cap_lpm_put_wake_lock:
+56d3 d8e0000c arg wake_lock_l2cap_tx ,queue 
+56d4 20204bf0 branch lpm_put_wake_lock 
+
+l2cap_lpm_save_txbuf:
+56d5 44f4c01d bpatch patch1d_1 ,mem_patch1d 
+56d6 20405658 call l2cap_malloc_get_full_map 
+56d7 6fe24228 fetch 1 ,mem_used_map 
+56d8 207a0000 rtn blank 
+56d9 204056bf call l2cap_lpm_save_calc_len 
+56da d8400100 arg l2cap_lpm_txbuf_len ,temp 
+56db 98467c00 isub temp ,null 
+56dc 202156d1 branch l2cap_lpm_get_wake_lock ,positive 
+56dd 204056d3 call l2cap_lpm_put_wake_lock 
+56de d8a04235 arg mem_l2cap_lpm_txbuf ,contw 
+56df da204229 arg mem_tx_fifo0 ,rega 
+
+l2cap_lpm_save_txbuf_loop:
+56e0 58004235 setarg mem_tx_fifo_end 
+56e1 9a267c00 isub rega ,null 
+56e2 20628000 rtn zero 
+56e3 efe20011 ifetch 1 ,rega 
+56e4 1a20a201 increase 1 ,rega 
+56e5 243a56e9 nbranch l2cap_lpm_save_txbuf_nempty ,blank 
+56e6 e7e40005 istore 2 ,contw 
+56e7 1a20a202 increase 2 ,rega 
+56e8 202056e0 branch l2cap_lpm_save_txbuf_loop 
+
+l2cap_lpm_save_txbuf_nempty:
+56e9 efe40011 ifetch 2 ,rega 
+56ea 1a20a202 increase 2 ,rega 
+56eb 1fe20c00 copy pdata ,contr 
+56ec efe40006 ifetch 2 ,contr 
+56ed e7e40005 istore 2 ,contw 
+56ee 1fe27200 copy pdata ,loopcnt 
+56ef 1f20f202 increase 2 ,loopcnt 
+56f0 20407cdc call memcpy 
+56f1 202056e0 branch l2cap_lpm_save_txbuf_loop 
+
+l2cap_lpm_load_txbuf:
+56f2 44f5401d bpatch patch1d_2 ,mem_patch1d 
+56f3 20405658 call l2cap_malloc_get_full_map 
+56f4 6fe24228 fetch 1 ,mem_used_map 
+56f5 207a0000 rtn blank 
+56f6 da20422a arg mem_tx_fifo0_ptr ,rega 
+56f7 1a20a3fd increase -3 ,rega 
+56f8 d8c04235 arg mem_l2cap_lpm_txbuf ,contr 
+
+l2cap_lpm_load_txbuf_loop:
+56f9 1a20a203 increase 3 ,rega 
+56fa 58004236 setarg mem_tx_fifo_end + 1 
+56fb 9a267c00 isub rega ,null 
+56fc 20628000 rtn zero 
+56fd efe40006 ifetch 2 ,contr 
+56fe 203a56f9 branch l2cap_lpm_load_txbuf_loop ,blank 
+56ff 1fe0fe04 increase 4 ,pdata 
+5700 1fe27200 copy pdata ,loopcnt 
+5701 18c22400 copy contr ,regb 
+5702 efe40011 ifetch 2 ,rega 
+5703 1fe20a00 copy pdata ,contw 
+5704 1a420c00 copy regb ,contr 
+5705 18c08dfe increase -2 ,contr 
+5706 20407cdc call memcpy 
+5707 202056f9 branch l2cap_lpm_load_txbuf_loop 
+
+le_init_conn:
+5708 44f5c01d bpatch patch1d_3 ,mem_patch1d 
+5709 7855fc00 disable wake 
+570a 70045101 jam 1 ,mem_le_conn_handle 
+570b 70043b03 jam 3 ,mem_le_state 
+570c 70045201 jam 1 ,mem_le_arq 
+570d 5fffffff setarg -1 
+570e 67e40455 store 2 ,mem_le_event_count 
+570f 18007e00 force 0 ,pdata 
+5710 67e20453 store 1 ,mem_le_ch 
+5711 67e2045e store 1 ,mem_le_op 
+5712 67e6416a store 3 ,mem_sniff_rcv 
+5713 67e6416d store 3 ,mem_sniff_lost 
+5714 67ea43d5 store 5 ,mem_le_pcnt_tx 
+5715 79207e27 set1 39 ,pdata 
+5716 67ea43da store 5 ,mem_le_pcnt_rx 
+5717 7043ae01 jam 1 ,mem_le_txheader 
+5718 7043af00 jam 0 ,mem_le_txlen 
+5719 20205ac9 branch le_supervision_flush 
+
+le_init_master:
+571a 44f6401d bpatch patch1d_4 ,mem_patch1d 
+571b 7834fc00 enable master 
+571c 70043c03 jam lemode_master ,mem_le_mode 
+571d 70047401 jam 1 ,mem_le_att_handle 
+571e 70442c01 jam 1 ,mem_le_search_handle_start 
+571f 5800ffff setarg 0xffff 
+5720 67e4442e store 2 ,mem_le_search_handle_end 
+5721 18007e00 force 0 ,pdata 
+5722 67ea43da store 5 ,mem_le_pcnt_rx 
+5723 79207e27 set1 39 ,pdata 
+5724 67ea43d5 store 5 ,mem_le_pcnt_tx 
+5725 20205708 branch le_init_conn 
+
+le_init_slave:
+5726 44f6c01d bpatch patch1d_5 ,mem_patch1d 
+5727 7854fc00 disable master 
+5728 58000017 setarg 0x17 
+5729 67e4447a store 2 ,mem_le_remote_mtu 
+572a 70043c01 jam lemode_slave ,mem_le_mode 
+572b 70434000 jam 0 ,mem_le_adv_enable 
+572c 7000a000 jam 0 ,mem_lpm_current_mult 
+572d 70449600 jam flag_le_pairing_null ,mem_le_pairing_state 
+572e 70449700 jam flag_le_enc_null ,mem_le_enc_state 
+572f 6fe40469 fetch 2 ,mem_le_superto 
+5730 67e4448c store 2 ,mem_le_init_superto 
+5731 6fe4043d fetch 2 ,mem_le_tsniff 
+5732 1feffe05 mul32 pdata ,5 ,pdata 
+5733 1ff1fe00 rshift4 pdata ,pdata 
+5734 67e40469 store 2 ,mem_le_superto 
+5735 20205708 branch le_init_conn 
+
+le_dispatch:
+5736 2040579e call le_enable 
+5737 204059c2 call le_scan 
+5738 20405acc call le_adv 
+5739 202057a8 branch le_disable 
+
+le_conn_dispatch:
+573a 44f7401d bpatch patch1d_6 ,mem_patch1d 
+573b 2040579e call le_enable 
+573c 20404c8d call app_process_ble 
+573d 6fe2043c fetch 1 ,mem_le_mode 
+573e c001d740 beq lemode_master ,le_master_dispatch 
+573f 20205754 branch le_slave_dispatch 
+
+le_master_dispatch:
+5740 44f7c01d bpatch patch1d_7 ,mem_patch1d 
+5741 7834fc00 enable master 
+5742 20405ac0 call le_supervision_update 
+5743 20215751 branch le_master_disconn ,positive 
+5744 20404c27 call check_ble_disabled 
+5745 204057ed call le_setup 
+5746 204059f8 call le_prepare_tx 
+5747 7856fc00 disable match 
+5748 20405899 call le_transmit_receive_sifs 
+5749 24768000 nrtn match 
+574a 44f8401e bpatch patch1e_0 ,mem_patch1e 
+574b 6fe20005 fetch 1 ,mem_le_conn_rcv 
+574c 1fe0fe01 increase 1 ,pdata 
+574d 67e20005 store 1 ,mem_le_conn_rcv 
+574e 20405984 call le_acknowledge 
+574f 7854fc00 disable master 
+5750 20600000 rtn 
+
+le_master_disconn:
+5751 20405783 call le_disconnect 
+5752 7854fc00 disable master 
+5753 20600000 rtn 
+
+le_slave_dispatch:
+5754 44f8c01e bpatch patch1e_1 ,mem_patch1e 
+5755 7044e100 jam 0 ,mem_le_md_count 
+5756 20407964 call sp_calc_sequence_256 
+5757 20405ff8 call le_secure_connect_sm 
+5758 78577c00 disable attempt 
+5759 20405ac0 call le_supervision_update 
+575a 20215783 branch le_slave_disconn ,positive 
+575b 20404c27 call check_ble_disabled 
+575c 204057ed call le_setup 
+575d 20405863 call le_receive_slave 
+575e 242c5775 nbranch le_slave_unsync ,sync 
+575f 20405791 call le_got_first_packet 
+5760 2036d762 branch le_slave_match ,match 
+5761 2020576f branch le_slave_cont 
+
+le_slave_match:
+5762 44f9401e bpatch patch1e_2 ,mem_patch1e 
+5763 6fe244e1 fetch 1 ,mem_le_md_count 
+5764 1fe0fe01 pincrease 1 
+5765 67e244e1 store 1 ,mem_le_md_count 
+5766 c006576f beq le_md_max_count ,le_slave_cont 
+5767 20405984 call le_acknowledge 
+5768 204059f8 call le_prepare_tx 
+5769 204058a1 call le_transmit_norx 
+576a 20405a58 call le_parse 
+576b 6fe441fc fetch 2 ,mem_cb_ble_transmit 
+576c 20407d77 call callback_func 
+576d 2040577a call le_check_md 
+576e 2034577e branch le_slave_more_data ,user 
+
+le_slave_cont:
+576f 44f9c01e bpatch patch1e_3 ,mem_patch1e 
+5770 20405fc4 call le_pairing_sm 
+5771 20405fbb call le_check_paring_time 
+5772 20407bc1 call check_51cmd 
+5773 6fe2045e fetch 1 ,mem_le_op 
+5774 c281d783 bbit1 op_disconn ,le_slave_disconn 
+
+le_slave_unsync:
+5775 44fa401e bpatch patch1e_4 ,mem_patch1e 
+5776 20405bd4 call le_lpm_set_mult 
+5777 20405977 call le_update_channel_map 
+5778 2040594f call le_update_param 
+5779 2020483d branch calc_clke_offset 
+
+le_check_md:
+577a 78547c00 disable user 
+577b c5157dbf bmark1 mark_ble_rx_md ,enable_user 
+577c c514fdbf bmark1 mark_ble_tx_md ,enable_user 
+577d 20600000 rtn 
+
+le_slave_more_data:
+577e 44fac01e bpatch patch1e_5 ,mem_patch1e 
+577f 78377c00 enable attempt 
+5780 2040589b call le_transmit_receive_sifs_notx 
+5781 2036d762 branch le_slave_match ,match 
+5782 2020576f branch le_slave_cont 
+
+le_slave_disconn:
+
+le_disconnect:
+5783 44fb401e bpatch patch1e_6 ,mem_patch1e 
+5784 20405789 call le_clear_connection_info 
+5785 20404d3f call app_disconn_reason_collect_ble 
+5786 2040792c call sp_initialize_256 
+5787 700a9515 jam bt_evt_le_disconnected ,mem_fifo_temp 
+5788 20207bab branch ui_ipc_send_event 
+
+le_clear_connection_info:
+5789 58000000 setarg 0 
+578a 67f244d1 store 9 ,mem_le_tx_buff_used 
+578b 70045100 jam 0 ,mem_le_conn_handle 
+578c 70043c00 jam lemode_idle ,mem_le_mode 
+578d 70043b00 jam 0 ,mem_le_state 
+578e 70449700 jam flag_le_enc_null ,mem_le_enc_state 
+578f 70449600 jam flag_le_pairing_null ,mem_le_pairing_state 
+5790 20600000 rtn 
+
+le_got_first_packet:
+5791 44fbc01e bpatch patch1e_7 ,mem_patch1e 
+5792 6fe20005 fetch 1 ,mem_le_conn_rcv 
+5793 1fe0fe01 increase 1 ,pdata 
+5794 67e20005 store 1 ,mem_le_conn_rcv 
+5795 6fe2043b fetch 1 ,mem_le_state 
+5796 c3818000 rtnbit1 lestate_got_first_packet 
+5797 79207e03 set1 lestate_got_first_packet 
+5798 67e2043b store 1 ,mem_le_state 
+5799 6fe4448c fetch 2 ,mem_le_init_superto 
+579a 67e40469 store 2 ,mem_le_superto 
+579b 58000000 setarg 0 
+579c 67e844b7 store 4 ,mem_le_transmit_window 
+579d 20600000 rtn 
+
+le_enable:
+579e 44fc401f bpatch patch1f_0 ,mem_patch1f 
+579f 70890f36 hjam 0x36 ,0x90f 
+57a0 70890b5f hjam 0x5f ,0x90b 
+57a1 783b7c00 enable le 
+57a2 70891407 hjam 7 ,rfen_ulp 
+57a3 20404c27 call check_ble_disabled 
+57a4 6fe241e1 fetch 1 ,mem_250k_freq_enable 
+57a5 207a0000 rtn blank 
+57a6 70890ab8 hjam 0xb8 ,0x90a 
+57a7 20600000 rtn 
+
+le_disable:
+57a8 44fcc01f bpatch patch1f_1 ,mem_patch1f 
+57a9 70890f2e hjam 0x2e ,0x90f 
+57aa 70890bff hjam 0xff ,0x90b 
+57ab 785b7c00 disable le 
+57ac 70891403 hjam 3 ,rfen_ulp 
+57ad db600000 arg 0 ,stop_watch 
+57ae 20600000 rtn 
+
+le_prep:
+57af 7844fc00 disable enable_crc 
+57b0 7843fc00 disable enable_white 
+57b1 6fe60463 fetch 3 ,mem_le_crcinit 
+57b2 98001e00 iforce crc24_init 
+57b3 6fe20016 fetch 1 ,mem_le_ch_mapped 
+57b4 1fed8400 reverse pdata ,temp 
+57b5 79200401 set1 1 ,temp 
+57b6 18431c00 rshift temp ,white_init 
+57b7 20600000 rtn 
+
+lerx_setfreq:
+57b8 204057c0 call le_setfreq 
+57b9 2040491c call set_freq_rx 
+57ba 58000500 setarg param_pll_setup 
+57bb 20404a8e call sleep 
+57bc 20204921 branch rf_rx_enable 
+
+letx_setfreq:
+57bd 2036c936 branch txon ,match 
+
+letx_setfreq0:
+57be 204057c0 call le_setfreq 
+57bf 20204930 branch set_freq_tx 
+
+le_setfreq:
+57c0 44fd401f bpatch patch1f_2 ,mem_patch1f 
+57c1 20404915 call set_sync_on 
+57c2 6fe20488 fetch 1 ,mem_le_testtype 
+57c3 243a57d3 nbranch le_ctf_test ,blank 
+57c4 6fe20016 fetch 1 ,mem_le_ch_mapped 
+57c5 1fe67c24 sub pdata ,36 ,null 
+57c6 202157cd branch le_ctf_normal ,positive 
+57c7 18000400 force 0 ,temp 
+57c8 c1128000 rtneq 37 
+57c9 18000418 force 24 ,temp 
+57ca c1130000 rtneq 38 
+57cb 1800044e force 78 ,temp 
+57cc 20600000 rtn 
+
+le_ctf_normal:
+57cd 1fe67c0a sub pdata ,10 ,null 
+57ce 202157d0 branch le_ctf_low ,positive 
+57cf 1fe0fe01 increase 1 ,pdata 
+
+le_ctf_low:
+57d0 1fe3fe00 lshift pdata ,pdata 
+57d1 1fe08402 add pdata ,2 ,temp 
+57d2 20600000 rtn 
+
+le_ctf_test:
+57d3 6fe20016 fetch 1 ,mem_le_ch_mapped 
+57d4 1fe38400 lshift pdata ,temp 
+57d5 20600000 rtn 
+
+le_sca_map:
+57d6 d84001f4 arg 500 ,temp 
+57d7 207a0000 rtn blank 
+57d8 d84000fa arg 250 ,temp 
+57d9 c1008000 rtneq 1 
+57da d8400096 arg 150 ,temp 
+57db c1010000 rtneq 2 
+57dc d8400064 arg 100 ,temp 
+57dd c1018000 rtneq 3 
+57de d840004b arg 75 ,temp 
+57df c1020000 rtneq 4 
+57e0 d8400032 arg 50 ,temp 
+57e1 c1028000 rtneq 5 
+57e2 d8400028 arg 40 ,temp 
+57e3 c1030000 rtneq 6 
+57e4 d8400014 arg 20 ,temp 
+57e5 20600000 rtn 
+
+le_adv_access:
+57e6 588e89be setarg 0x8e89be 
+57e7 1fed7e00 lshift8 pdata ,pdata 
+57e8 1fe1fed6 or_into 0xd6 ,pdata 
+57e9 98001200 iforce access 
+57ea 58555555 setarg 0x555555 
+57eb 67e60463 store 3 ,mem_le_crcinit 
+57ec 20600000 rtn 
+
+le_setup:
+57ed 44fdc01f bpatch patch1f_3 ,mem_patch1f 
+57ee 78287c00 enable swfine 
+57ef 6fe8045f fetch 4 ,mem_le_access 
+57f0 98001200 iforce access 
+57f1 20405840 call le_map_channel 
+57f2 58000200 setarg 0x200 
+57f3 2034d7f6 branch le_setup_master ,master 
+57f4 6fe40449 fetch 2 ,mem_le_receive_window 
+57f5 1fe37e00 rshift pdata ,pdata 
+
+le_setup_master:
+57f6 d8400500 arg param_pll_setup ,temp 
+57f7 9840fe00 iadd temp ,pdata 
+57f8 20404a23 call ahead_window 
+57f9 1b427e00 deposit clke 
+57fa 67ec048d store 6 ,mem_le_rxon_ts 
+57fb 20600000 rtn 
+
+le_next_adv_channel:
+57fc 44fe401f bpatch patch1f_4 ,mem_patch1f 
+57fd 6fe20016 fetch 1 ,mem_le_ch_mapped 
+57fe c012d802 beq 37 ,le_next_adv_channel_curr_channel_37 
+57ff c0135808 beq 38 ,le_next_adv_channel_curr_channel_38 
+5800 c013d80e beq 39 ,le_next_adv_channel_curr_channel_39 
+5801 2020580e branch le_next_adv_channel_curr_channel_39 
+
+le_next_adv_channel_curr_channel_37:
+5802 6842445f fetcht 1 ,mem_le_adv_channel_map 
+5803 284ffe01 isolate1 bit_adv_channel_map_38 ,temp 
+5804 2020d819 branch set_le_next_adv_channel_38 ,true 
+5805 284ffe02 isolate1 bit_adv_channel_map_39 ,temp 
+5806 2020d81e branch set_le_next_adv_channel_39 ,true 
+5807 20205814 branch set_le_next_adv_channel_37 
+
+le_next_adv_channel_curr_channel_38:
+5808 6842445f fetcht 1 ,mem_le_adv_channel_map 
+5809 284ffe02 isolate1 bit_adv_channel_map_39 ,temp 
+580a 2020d81e branch set_le_next_adv_channel_39 ,true 
+580b 284ffe00 isolate1 bit_adv_channel_map_37 ,temp 
+580c 2020d814 branch set_le_next_adv_channel_37 ,true 
+580d 20205819 branch set_le_next_adv_channel_38 
+
+le_next_adv_channel_curr_channel_39:
+580e 6842445f fetcht 1 ,mem_le_adv_channel_map 
+580f 284ffe00 isolate1 bit_adv_channel_map_37 ,temp 
+5810 2020d814 branch set_le_next_adv_channel_37 ,true 
+5811 284ffe01 isolate1 bit_adv_channel_map_38 ,temp 
+5812 2020d819 branch set_le_next_adv_channel_38 ,true 
+5813 2020581e branch set_le_next_adv_channel_39 
+
+set_le_next_adv_channel_37:
+5814 70001625 jam 37 ,mem_le_ch_mapped 
+5815 6fe20abe fetch 1 ,mem_le_adv_channel_map_temp 
+5816 79207e00 set1 bit_adv_channel_map_37 ,pdata 
+5817 67e20abe store 1 ,mem_le_adv_channel_map_temp 
+5818 20600000 rtn 
+
+set_le_next_adv_channel_38:
+5819 70001626 jam 38 ,mem_le_ch_mapped 
+581a 6fe20abe fetch 1 ,mem_le_adv_channel_map_temp 
+581b 79207e01 set1 bit_adv_channel_map_38 ,pdata 
+581c 67e20abe store 1 ,mem_le_adv_channel_map_temp 
+581d 20600000 rtn 
+
+set_le_next_adv_channel_39:
+581e 70001627 jam 39 ,mem_le_ch_mapped 
+581f 6fe20abe fetch 1 ,mem_le_adv_channel_map_temp 
+5820 79207e02 set1 bit_adv_channel_map_39 ,pdata 
+5821 67e20abe store 1 ,mem_le_adv_channel_map_temp 
+5822 20600000 rtn 
+
+le_context_nexthop:
+5823 44fec01f bpatch patch1f_5 ,mem_patch1f 
+5824 1a208c01 add rega ,coffset_mode ,contr 
+5825 efe20006 ifetch 1 ,contr 
+5826 c4000000 rtnbit0 mode_le 
+5827 1a208a1a add rega ,coffset_le_event_cnt ,contw 
+5828 efe40005 ifetch 2 ,contw 
+5829 1fe0fe01 increase 1 ,pdata 
+582a e7e40005 istore 2 ,contw 
+582b 1a208c19 add rega ,coffset_le_hop ,contr 
+582c efe20006 ifetch 1 ,contr 
+582d 1a208a18 add rega ,coffset_le_ch ,contw 
+582e e8420005 ifetcht 1 ,contw 
+582f 9840fe00 iadd temp ,pdata 
+5830 1fe67c24 sub pdata ,36 ,null 
+5831 20215833 branch le_nexthop_nowrap ,positive 
+5832 1fe0ffdb increase -37 ,pdata 
+
+le_nexthop_nowrap:
+5833 e7e20005 istore 1 ,contw 
+5834 20600000 rtn 
+
+le_calc_channel_map:
+5835 44ff401f bpatch patch1f_6 ,mem_patch1f 
+5836 6fea046b fetch 5 ,mem_le_channel_map 
+5837 18000400 force 0 ,temp 
+5838 18007225 force 37 ,loopcnt 
+
+le_count_channels_loop:
+5839 c300583b bbit0 0 ,le_count_channels_notused 
+583a 18408401 increase 1 ,temp 
+
+le_count_channels_notused:
+583b 1fe37e00 rshift pdata ,pdata 
+583c c2005839 loop le_count_channels_loop 
+583d 1840ffff add temp ,-1 ,pdata 
+583e 67e2045d store 1 ,mem_le_channels 
+583f 20600000 rtn 
+
+le_map_channel:
+5840 44ffc01f bpatch patch1f_7 ,mem_patch1f 
+5841 6fe20453 fetch 1 ,mem_le_ch 
+5842 98000e00 iforce queue 
+5843 684a046b fetcht 5 ,mem_le_channel_map 
+5844 a84fffff qisolate1 temp 
+5845 2020d856 branch le_map_channel_end ,true 
+
+le_map_channel_next:
+5846 47004020 bpatchx patch20_0 ,mem_patch20 
+5847 6fe2045d fetch 1 ,mem_le_channels 
+5848 98e67e00 isub queue ,pdata 
+5849 2021584c branch le_map_channel_cont ,positive 
+584a 1fe60fff sub pdata ,-1 ,queue 
+584b 20205846 branch le_map_channel_next 
+
+le_map_channel_cont:
+584c 18e27200 copy queue ,loopcnt 
+584d 18000e00 force 0 ,queue 
+
+le_map_channel_loop:
+584e a84fffff qisolate1 temp 
+584f 2020d851 branch le_map_channel_skip ,true 
+5850 1f20f201 increase 1 ,loopcnt 
+
+le_map_channel_skip:
+5851 1f227e00 deposit loopcnt 
+5852 203a5856 branch le_map_channel_end ,blank 
+5853 18e08e01 increase 1 ,queue 
+5854 1f20f3ff increase -1 ,loopcnt 
+5855 2020584e branch le_map_channel_loop 
+
+le_map_channel_end:
+5856 18e27e00 deposit queue 
+5857 67e20016 store 1 ,mem_le_ch_mapped 
+5858 20600000 rtn 
+
+le_wait_tx:
+5859 2034d85c branch le_wait_master ,master 
+585a 37c18200 until null ,timeout 
+585b 20600000 rtn 
+
+le_wait_master:
+585c d9600ea0 arg 0xea0 ,timeup 
+585d 34730200 until clkn_rt ,meet 
+585e 20600000 rtn 
+
+le_receive_adv:
+585f 78487c00 disable swfine 
+5860 6fe4433e fetch 2 ,mem_le_scan_window 
+5861 1fe21600 copy pdata ,timeup 
+5862 20205868 branch le_receive_packet 
+
+le_receive_slave:
+5863 4700c020 bpatchx patch20_1 ,mem_patch20 
+5864 78287c00 enable swfine 
+5865 6fe40449 fetch 2 ,mem_le_receive_window 
+5866 684844b7 fetcht 4 ,mem_le_transmit_window 
+5867 98409600 iadd temp ,timeup 
+
+le_receive_packet:
+5868 204057b8 call lerx_setfreq 
+
+le_receive_rxon:
+5869 47014020 bpatchx patch20_2 ,mem_patch20 
+586a 204057af call le_prep 
+586b 7856fc00 disable match 
+586c 7826fc00 enable decode_fec0 
+586d 7830fc00 enable is_rx 
+586e 78507c00 disable is_tx 
+586f 19623600 copy timeup ,stop_watch 
+5870 37c18400 correlate null ,timeout 
+5871 20375874 branch le_receive_on_attempt ,attempt 
+5872 1b420400 copy clke ,temp 
+5873 604c009a storet 6 ,mem_sync_clke 
+
+le_receive_on_attempt:
+5874 242c4649 nbranch end_of_packet ,sync 
+5875 2037587b branch le_receive_skip ,attempt 
+5876 dd2001e0 arg param_clke_cal_le ,clke_rt 
+5877 1c225000 copy bt_clk ,clke_bt 
+5878 6fe2043b fetch 1 ,mem_le_state 
+5879 c301d87b bbit0 lestate_got_first_packet ,le_receive_skip 
+587a 2055cae6 call lpm_adjust_clk ,wake 
+
+le_receive_skip:
+587b 4701c020 bpatchx patch20_3 ,mem_patch20 
+587c 204049ba call save_rssi 
+587d 7823fc00 enable enable_white 
+587e 7824fc00 enable enable_crc 
+587f 09800008 parse demod ,bucket ,8 
+5880 19897e00 rshift3 pwindow ,pdata 
+5881 67e202d5 store 1 ,mem_le_rxbuf 
+5882 09800008 parse demod ,bucket ,8 
+5883 19897e00 rshift3 pwindow ,pdata 
+5884 e7e20005 istore 1 ,contw 
+5885 1fe1723f and pdata ,0x3f ,loopcnt 
+5886 2022d88b branch lerx_nopayload ,zero 
+
+lerx_loop:
+5887 09800008 parse demod ,bucket ,8 
+5888 19897e00 rshift3 pwindow ,pdata 
+5889 e7e20005 istore 1 ,contw 
+588a c2005887 loop lerx_loop 
+
+lerx_nopayload:
+588b 47024020 bpatchx patch20_4 ,mem_patch20 
+588c 09800018 parse demod ,bucket ,24 
+588d 78287c00 enable swfine 
+588e db600664 arg param_sifs ,stop_watch 
+588f 1fef7e00 rshift32 pdata ,pdata 
+5890 1ff17e00 rshift16 pdata ,pdata 
+5891 e7e60005 istore 3 ,contw 
+5892 20234649 branch end_of_packet ,crc_failed 
+5893 7836fc00 enable match 
+5894 6fe20017 fetch 1 ,mem_last_freq 
+5895 1fe0a200 add pdata ,0 ,rega 
+5896 20404980 call rf_write_freq 
+5897 7846fc00 disable decode_fec0 
+5898 20204915 branch set_sync_on 
+
+le_transmit_receive_sifs:
+5899 4702c020 bpatchx patch20_5 ,mem_patch20 
+589a 204058a3 call le_transmit 
+
+le_transmit_receive_sifs_notx:
+589b 68420017 fetcht 1 ,mem_last_freq 
+589c 2040491c call set_freq_rx 
+589d 20404921 call rf_rx_enable 
+589e 78287c00 enable swfine 
+589f d960157c arg 5500 ,timeup 
+58a0 20205869 branch le_receive_rxon 
+
+le_transmit_norx:
+58a1 204058a3 call le_transmit 
+58a2 20204649 branch end_of_packet 
+
+le_transmit:
+58a3 47034020 bpatchx patch20_6 ,mem_patch20 
+58a4 204057af call le_prep 
+58a5 204057bd call letx_setfreq 
+58a6 202058a7 branch le_transmit0 
+
+le_transmit0:
+58a7 79202a00 set1 txgfsk ,radio_ctrl 
+58a8 782efc00 enable encode_fec0 
+58a9 78307c00 enable is_tx 
+58aa 7850fc00 disable is_rx 
+58ab 20405859 call le_wait_tx 
+58ac 19317e00 rshift16 access ,pdata 
+58ad 1fecfe00 rshift8 pdata ,pdata 
+58ae 1ff1fe00 rshift4 pdata ,pdata 
+58af 08008628 inject mod ,40 
+58b0 7823fc00 enable enable_white 
+58b1 7824fc00 enable enable_crc 
+58b2 4703c020 bpatchx patch20_7 ,mem_patch20 
+58b3 6fe243ae fetch 1 ,mem_le_txheader 
+58b4 08008608 inject mod ,8 
+58b5 efe20006 ifetch 1 ,contr 
+58b6 1fe1723f and pdata ,0x3f ,loopcnt 
+58b7 08008608 inject mod ,8 
+58b8 2022d8bc branch letr_nopayload ,zero 
+
+letr_loop:
+58b9 efe20006 ifetch 1 ,contr 
+58ba 08008608 inject mod ,8 
+58bb c20058b9 loop letr_loop 
+
+letr_nopayload:
+58bc 78247c00 enable enable_parity 
+58bd 08008618 inject mod ,24 
+58be 78447c00 disable enable_parity 
+58bf 37d38200 until null ,tx_clear 
+58c0 20000064 nop 100 
+58c1 784efc00 disable encode_fec0 
+58c2 20600000 rtn 
+
+le_send_adv_ind:
+58c3 47044021 bpatchx patch21_0 ,mem_patch21 
+58c4 6fe24456 fetch 1 ,mem_le_adv_type 
+58c5 c000d8d3 beq adv_direct_ind ,le_send_adv_direct_ind 
+58c6 6fe24457 fetch 1 ,mem_le_adv_own_addr_type 
+58c7 1ff27e00 lshift4 pdata ,pdata 
+58c8 1febfe00 lshift2 pdata ,pdata 
+58c9 67e243ae store 1 ,mem_le_txheader 
+58ca 68424341 fetcht 1 ,mem_le_adv_data_len 
+58cb 1840fe06 add temp ,6 ,pdata 
+58cc 67e243af store 1 ,mem_le_txlen 
+58cd 6fec4472 fetch 6 ,mem_le_lap 
+58ce 67ec43b0 store 6 ,mem_le_txpayload 
+58cf 18427200 copy temp ,loopcnt 
+58d0 d8c04342 arg mem_le_adv_data ,contr 
+58d1 20407ccf call memcpy_fast 
+58d2 202058de branch le_send_adv_transmit 
+
+le_send_adv_direct_ind:
+58d3 6fe24458 fetch 1 ,mem_le_adv_direct_addr_type 
+58d4 1ff27e00 lshift4 pdata ,pdata 
+58d5 1febfe00 lshift2 pdata ,pdata 
+58d6 1fe0fe01 increase 1 ,pdata 
+58d7 67e243ae store 1 ,mem_le_txheader 
+58d8 5800000c setarg 12 
+58d9 67e243af store 1 ,mem_le_txlen 
+58da 6fec4472 fetch 6 ,mem_le_lap 
+58db 67ec43b0 store 6 ,mem_le_txpayload 
+58dc 6fec41d1 fetch 6 ,mem_hci_plap 
+58dd e7ec0005 istore 6 ,contw 
+
+le_send_adv_transmit:
+58de 4704c021 bpatchx patch21_1 ,mem_patch21 
+58df 6fe20000 fetch 1 ,mem_le_adv_transmit 
+58e0 1fe0fe01 increase 1 ,pdata 
+58e1 67e20000 store 1 ,mem_le_adv_transmit 
+58e2 db600708 arg 1800 ,stop_watch 
+58e3 7856fc00 disable match 
+58e4 20205899 branch le_transmit_receive_sifs 
+
+le_send_scan_request:
+58e5 47054021 bpatchx patch21_2 ,mem_patch21 
+58e6 6fe24470 fetch 1 ,mem_le_scan_type 
+58e7 c1808000 rtnne le_scan_type_active 
+58e8 6fe20000 fetch 1 ,mem_le_adv_transmit 
+58e9 1fe0fe01 increase 1 ,pdata 
+58ea 67e20000 store 1 ,mem_le_adv_transmit 
+58eb d8400c03 arg 0x0c03 ,temp 
+58ec 6fe24471 fetch 1 ,mem_le_scan_own_addr_type 
+58ed 7d3a0406 nsetflag blank ,le_sender_addr_bit ,temp 
+58ee 1a227e00 copy rega ,pdata 
+58ef 7d3a0407 nsetflag blank ,le_receiver_addr_bit ,temp 
+58f0 604443ae storet 2 ,mem_le_txheader 
+58f1 6fec4472 fetch 6 ,mem_le_lap 
+58f2 e7ec0005 istore 6 ,contw 
+58f3 6fec044b fetch 6 ,mem_le_plap 
+58f4 e7ec0005 istore 6 ,contw 
+58f5 20205899 branch le_transmit_receive_sifs 
+
+le_send_scan_response:
+58f6 4705c021 bpatchx patch21_3 ,mem_patch21 
+58f7 d8400004 arg scan_rsp ,temp 
+58f8 6fe24457 fetch 1 ,mem_le_adv_own_addr_type 
+58f9 7d3a0406 nsetflag blank ,le_sender_addr_bit ,temp 
+58fa 604243ae storet 1 ,mem_le_txheader 
+58fb 68424361 fetcht 1 ,mem_le_scan_data_len 
+58fc 1840fe06 add temp ,6 ,pdata 
+58fd 67e243af store 1 ,mem_le_txlen 
+58fe 6fec4472 fetch 6 ,mem_le_lap 
+58ff 67ec43b0 store 6 ,mem_le_txpayload 
+5900 d8c04362 arg mem_le_scan_data ,contr 
+5901 18427200 copy temp ,loopcnt 
+5902 20407ccf call memcpy_fast 
+5903 204058a1 call le_transmit_norx 
+5904 20205ae2 branch le_adv_not_match 
+
+le_connect_request:
+5905 47064021 bpatchx patch21_4 ,mem_patch21 
+5906 18007fff force -1 ,pdata 
+5907 38080001 setsect 2 ,1 
+5908 67ea046b store 5 ,mem_le_channel_map 
+5909 20405835 call le_calc_channel_map 
+590a 18007204 force 4 ,loopcnt 
+590b d8a0045f arg mem_le_access ,contw 
+590c 204066ef call generate_random_loop 
+590d 6fe4446e fetch 2 ,mem_le_timeout 
+590e 67e40469 store 2 ,mem_le_superto 
+
+le_con_req_hop_retry:
+590f 180a7e00 random pdata 
+5910 1fe17e0f and_into 0xf ,pdata 
+5911 1fe67c04 sub pdata ,4 ,null 
+5912 2021590f branch le_con_req_hop_retry ,positive 
+5913 67e20454 store 1 ,mem_le_hop 
+5914 67e206e2 store 1 ,mem_tmp1 
+5915 4706c021 bpatchx patch21_5 ,mem_patch21 
+5916 68444339 fetcht 2 ,mem_le_conn_interval 
+5917 6044043d storet 2 ,mem_le_tsniff 
+5918 18422600 copy temp ,regc 
+5919 1c40fe07 add clkn_bt ,7 ,pdata 
+591a 9a66fc00 idiv regc 
+591b 20407d61 call wait_div_end 
+591c 18072200 remainder rega 
+591d 9a267e00 isub rega ,pdata 
+591e 9a60fe00 iadd regc ,pdata 
+591f 68444337 fetcht 2 ,mem_le_dsniff 
+5920 9840fe00 iadd temp ,pdata 
+5921 67e8043f store 4 ,mem_le_anchor 
+5922 9c462200 isub clkn_bt ,rega 
+5923 1a20a3fa increase -6 ,rega 
+5924 da402205 arg 0x2205 ,regb 
+5925 6fe24467 fetch 1 ,mem_le_conn_own_addr_type 
+5926 7d3a2406 nsetflag blank ,le_sender_addr_bit ,regb 
+5927 6fe24460 fetch 1 ,mem_le_conn_peer_addr_type 
+5928 7d3a2407 nsetflag blank ,le_receiver_addr_bit ,regb 
+5929 1a427e00 copy regb ,pdata 
+592a 67e443ae store 2 ,mem_le_txheader 
+592b 6fec4472 fetch 6 ,mem_le_lap 
+592c e7ec0005 istore 6 ,contw 
+592d 6fec044b fetch 6 ,mem_le_plap 
+592e e7ec0005 istore 6 ,contw 
+592f 6fe8045f fetch 4 ,mem_le_access 
+5930 e7e80005 istore 4 ,contw 
+5931 180a7e00 random pdata 
+5932 e7e40005 istore 2 ,contw 
+5933 180a7e00 random pdata 
+5934 e7e20005 istore 1 ,contw 
+5935 18007e02 force 2 ,pdata 
+5936 e7e20005 istore 1 ,contw 
+5937 1a2b7e00 rshift2 rega ,pdata 
+5938 e7e40005 istore 2 ,contw 
+5939 1a6b7e00 rshift2 regc ,pdata 
+593a e7e40005 istore 2 ,contw 
+593b 47074021 bpatchx patch21_6 ,mem_patch21 
+593c 58000000 setarg 0 
+593d e7e40005 istore 2 ,contw 
+593e 6fe4446e fetch 2 ,mem_le_timeout 
+593f e7e40005 istore 2 ,contw 
+5940 6fea046b fetch 5 ,mem_le_channel_map 
+5941 e7ea0005 istore 5 ,contw 
+5942 6fe20454 fetch 1 ,mem_le_hop 
+5943 d84000a0 arg param_le_sca ,temp 
+5944 9841fe00 ior temp ,pdata 
+5945 e7e20005 istore 1 ,contw 
+5946 204058a1 call le_transmit_norx 
+5947 580043ae setarg mem_le_txheader 
+5948 1fe08c12 add pdata ,18 ,contr 
+5949 efe60006 ifetch 3 ,contr 
+594a 67e60463 store 3 ,mem_le_crcinit 
+594b 20600000 rtn 
+
+le_init_adv:
+594c 4707c021 bpatchx patch21_7 ,mem_patch21 
+594d 7854fc00 disable master 
+594e 202057e6 branch le_adv_access 
+
+le_update_param:
+594f 6fe2043b fetch 1 ,mem_le_state 
+5950 c4028000 rtnbit0 lestate_update_param 
+5951 6fe40455 fetch 2 ,mem_le_event_count 
+5952 6844045b fetcht 2 ,mem_le_instant 
+5953 98467e00 isub temp ,pdata 
+5954 24610000 nrtn positive 
+5955 67e40a96 store 2 ,mem_pdatatemp 
+5956 47084022 bpatchx patch22_0 ,mem_patch22 
+5957 6fe2043b fetch 1 ,mem_le_state 
+5958 793ffe05 set0 lestate_update_param ,pdata 
+5959 793ffe03 set0 lestate_got_first_packet ,pdata 
+595a 67e2043b store 1 ,mem_le_state 
+595b 6fe8043f fetch 4 ,mem_le_anchor 
+595c 6844043d fetcht 2 ,mem_le_tsniff 
+595d 60440a9e storet 2 ,mem_temp 
+595e 98462200 isub temp ,rega 
+595f 4708c022 bpatchx patch22_1 ,mem_patch22 
+5960 6fe243a5 fetch 1 ,mem_le_new_param 
+5961 67e20466 store 1 ,mem_le_window_size 
+5962 e8440006 ifetcht 2 ,contr 
+5963 efe40006 ifetch 2 ,contr 
+5964 1febfe00 lshift2 pdata ,pdata 
+5965 67e4043d store 2 ,mem_le_tsniff 
+5966 184b8400 lshift2 temp ,temp 
+5967 9840fe00 iadd temp ,pdata 
+5968 e8480006 ifetcht 4 ,contr 
+5969 60480467 storet 4 ,mem_le_slave_latency 
+596a 9a20fe00 iadd rega ,pdata 
+596b 1fe22800 copy pdata ,regab 
+596c 6fe4043d fetch 2 ,mem_le_tsniff 
+596d 68440a9e fetcht 2 ,mem_temp 
+596e 98467e00 isub temp ,pdata 
+596f 68440a96 fetcht 2 ,mem_pdatatemp 
+5970 984ffe00 imul32 temp ,pdata 
+5971 9a80fe00 iadd regab ,pdata 
+5972 67e8043f store 4 ,mem_le_anchor 
+5973 20405af3 call le_receive_window_size 
+5974 6fe40469 fetch 2 ,mem_le_superto 
+5975 67e4448c store 2 ,mem_le_init_superto 
+5976 20600000 rtn 
+
+le_update_channel_map:
+5977 47094022 bpatchx patch22_2 ,mem_patch22 
+5978 6fe2043b fetch 1 ,mem_le_state 
+5979 c4030000 rtnbit0 lestate_update_map 
+597a 6fe40455 fetch 2 ,mem_le_event_count 
+597b 6844045b fetcht 2 ,mem_le_instant 
+597c 98467e00 isub temp ,pdata 
+597d 24610000 nrtn positive 
+597e 6fe2043b fetch 1 ,mem_le_state 
+597f 793ffe06 set0 lestate_update_map ,pdata 
+5980 67e2043b store 1 ,mem_le_state 
+5981 6fea43a0 fetch 5 ,mem_le_new_map 
+5982 67ea046b store 5 ,mem_le_channel_map 
+5983 20205835 branch le_calc_channel_map 
+
+le_acknowledge:
+5984 4709c022 bpatchx patch22_3 ,mem_patch22 
+5985 20405ac9 call le_supervision_flush 
+5986 2040599a call le_check_wak 
+5987 6fe202d5 fetch 1 ,mem_le_rxbuf 
+5988 2feffe04 isolate1 md ,pdata 
+5989 7920802a setflag true ,mark_ble_rx_md ,mark 
+598a 1fe37e00 rshift pdata ,pdata 
+598b 9842fe00 ixor temp ,pdata 
+598c 2feffe02 isolate1 nesn ,pdata 
+598d 7920800f setflag true ,mark_old_packet ,mark 
+598e c6078000 rtnmark1 mark_old_packet 
+598f 6fe202d6 fetch 1 ,mem_le_rxbuf + 1 
+5990 203a5996 branch le_ack_unenc ,blank 
+5991 6fe2043b fetch 1 ,mem_le_state 
+5992 c3025996 bbit0 lestate_encryption ,le_ack_unenc 
+5993 20407342 call load_sk 
+5994 204072b2 call le_decrypt 
+5995 247a0000 nrtn blank 
+
+le_ack_unenc:
+5996 68420452 fetcht 1 ,mem_le_arq 
+5997 79400402 setflip nesn ,temp 
+5998 60420452 storet 1 ,mem_le_arq 
+5999 20600000 rtn 
+
+le_check_wak:
+599a 470a4022 bpatchx patch22_4 ,mem_patch22 
+599b 68420452 fetcht 1 ,mem_le_arq 
+599c 284c0005 isolate0 wak ,temp 
+599d 20608000 rtn true 
+599e 6fe202d5 fetch 1 ,mem_le_rxbuf 
+599f 1fe3fe00 lshift pdata ,pdata 
+59a0 9842fe00 ixor temp ,pdata 
+59a1 c4018000 rtnbit0 sn 
+59a2 793f8405 set0 wak ,temp 
+59a3 79400403 setflip sn ,temp 
+59a4 60420452 storet 1 ,mem_le_arq 
+59a5 28400603 compare 3 ,temp ,3 
+59a6 24608000 nrtn true 
+59a7 6fe243b0 fetch 1 ,mem_le_txpayload 
+59a8 c002d9ac beq ll_start_enc_req ,le_set_enc 
+59a9 6fe24497 fetch 1 ,mem_le_enc_state 
+59aa c00159b0 beq flag_le_enc_pause ,le_clear_enc 
+59ab 20600000 rtn 
+
+le_set_enc:
+59ac 6fe2043b fetch 1 ,mem_le_state 
+59ad 79207e04 set1 lestate_encryption ,pdata 
+59ae 67e2043b store 1 ,mem_le_state 
+59af 20600000 rtn 
+
+le_clear_enc:
+59b0 470ac022 bpatchx patch22_5 ,mem_patch22 
+59b1 70449700 jam flag_le_enc_null ,mem_le_enc_state 
+59b2 dfe00000 arg 0 ,pdata 
+59b3 67e843df store 4 ,mem_le_last_mic 
+59b4 67ea43d5 store 5 ,mem_le_pcnt_tx 
+59b5 79207e27 set1 39 ,pdata 
+59b6 67ea43da store 5 ,mem_le_pcnt_rx 
+59b7 6fe2043b fetch 1 ,mem_le_state 
+59b8 793ffe04 set0 lestate_encryption ,pdata 
+59b9 67e2043b store 1 ,mem_le_state 
+59ba 20600000 rtn 
+
+le_wait_adv:
+59bb 470b4022 bpatchx patch22_6 ,mem_patch22 
+59bc 204057fc call le_next_adv_channel 
+59bd 2040585f call le_receive_adv 
+59be 6fe20001 fetch 1 ,mem_le_adv_waitcnt 
+59bf 1fe0fe01 increase 1 ,pdata 
+59c0 67e20001 store 1 ,mem_le_adv_waitcnt 
+59c1 20600000 rtn 
+
+le_scan:
+59c2 470bc022 bpatchx patch22_7 ,mem_patch22 
+59c3 6fe2433b fetch 1 ,mem_le_scan_enable 
+59c4 c1808000 rtnne le_scan_enable 
+59c5 d8e00002 arg le_scan_interval_timer ,queue 
+59c6 20407cf1 call timer_check 
+59c7 247a0000 nrtn blank 
+59c8 6fe4433c fetch 2 ,mem_le_scan_interval 
+59c9 6844433e fetcht 2 ,mem_le_scan_window 
+59ca 98467e00 isub temp ,pdata 
+59cb d8e00002 arg le_scan_interval_timer ,queue 
+59cc 20407ce3 call timer_init 
+59cd 7854fc00 disable master 
+59ce 2040594c call le_init_adv 
+59cf 204059bb call le_wait_adv 
+59d0 24768000 nrtn match 
+59d1 470c4023 bpatchx patch23_0 ,mem_patch23 
+59d2 6fec02d7 fetch 6 ,mem_le_rxbuf + 2 
+59d3 67ec044b store 6 ,mem_le_plap 
+59d4 6fe20002 fetch 1 ,mem_le_adv_rcv 
+59d5 1fe0fe01 increase 1 ,pdata 
+59d6 67e20002 store 1 ,mem_le_adv_rcv 
+59d7 204059e2 call le_create_conn 
+59d8 20748000 rtn master 
+59d9 204058e5 call le_send_scan_request 
+59da 24768000 nrtn match 
+59db 470cc023 bpatchx patch23_1 ,mem_patch23 
+59dc 6fe20004 fetch 1 ,mem_le_scanrsp_rcv 
+59dd 1fe0fe01 increase 1 ,pdata 
+59de 67e20004 store 1 ,mem_le_scanrsp_rcv 
+59df 6ff202dd fetch 9 ,mem_le_rxbuf + 8 
+59e0 67f200ff store 9 ,mem_tmp_buffer 
+59e1 20600000 rtn 
+
+le_create_conn:
+59e2 470d4023 bpatchx patch23_2 ,mem_patch23 
+59e3 6fe20497 fetch 1 ,mem_cmd_le_create_conn 
+59e4 c18d8000 rtnne hci_cmd_le_create_conn 
+59e5 6fec044b fetch 6 ,mem_le_plap 
+59e6 684c4461 fetcht 6 ,mem_le_conn_peer_addr 
+59e7 98467c00 isub temp ,null 
+59e8 24628000 nrtn zero 
+59e9 20404237 call context_new 
+59ea 24628000 nrtn zero 
+59eb 20405905 call le_connect_request 
+59ec 2040571a call le_init_master 
+59ed 470dc023 bpatchx patch23_3 ,mem_patch23 
+59ee 7041cf00 jam 0 ,mem_hci_cmd 
+59ef 70047200 jam 0 ,mem_le_peer_sca 
+59f0 70433b00 jam 0 ,mem_le_scan_enable 
+59f1 70049700 jam 0 ,mem_cmd_le_create_conn 
+59f2 2020421f branch context_save 
+
+le_scan_check_sender_addr_type:
+59f3 da200001 arg 1 ,rega 
+59f4 6fe202d5 fetch 1 ,mem_le_rxbuf 
+59f5 c3830000 rtnbit1 le_sender_addr_bit 
+59f6 da200000 arg 0 ,rega 
+59f7 20600000 rtn 
+
+le_prepare_tx:
+59f8 470e4023 bpatchx patch23_4 ,mem_patch23 
+59f9 6fe20452 fetch 1 ,mem_le_arq 
+59fa c3828000 rtnbit1 wak 
+59fb 20405a1c call le_check_tx_md 
+59fc 20405c53 call le_fifo_get_first_tx_ptr 
+59fd 203a5a3e branch le_send_empty ,blank 
+59fe efe20006 ifetch 1 ,contr 
+59ff e8420006 ifetcht 1 ,contr 
+5a00 18422200 copy temp ,rega 
+5a01 9a267e00 isub rega ,pdata 
+5a02 d840001b arg le_max_paket_len ,temp 
+5a03 20407db5 call not_greater_than 
+5a04 1fe20400 copy pdata ,temp 
+5a05 efe20006 ifetch 1 ,contr 
+5a06 1fe20200 copy pdata ,type 
+5a07 1a227e00 copy rega ,pdata 
+5a08 98c08c00 iadd contr ,contr 
+5a09 d8a043b0 arg mem_le_txpayload ,contw 
+5a0a 18427200 copy temp ,loopcnt 
+5a0b 20407cdc call memcpy 
+5a0c 20405a2e call le_update_tx_type 
+5a0d 20405a40 call le_send_packet 
+5a0e 20405c53 call le_fifo_get_first_tx_ptr 
+5a0f efe20006 ifetch 1 ,contr 
+5a10 1fe22200 copy pdata ,rega 
+5a11 18c22600 copy contr ,regc 
+5a12 e8420006 ifetcht 1 ,contr 
+5a13 18422400 copy temp ,regb 
+5a14 9a467e00 isub regb ,pdata 
+5a15 d840001b arg le_max_paket_len ,temp 
+5a16 20407db5 call not_greater_than 
+5a17 9a40fe00 iadd regb ,pdata 
+5a18 e7e20013 istore 1 ,regc 
+5a19 9a267c00 isub rega ,null 
+5a1a 24628000 nrtn zero 
+5a1b 20205c76 branch le_fifo_release_first_node 
+
+le_check_tx_md:
+5a1c 20405a23 call le_check_continue 
+5a1d c6148000 rtnmark1 mark_ble_tx_md 
+5a1e 6fe244bb fetch 1 ,mem_le_configuration 
+5a1f c3015a2c bbit0 bit_ble_transmit_packet_by_md ,le_clear_md 
+5a20 20405c56 call le_fifo_get_second_tx_ptr 
+5a21 203a5a2c branch le_clear_md ,blank 
+5a22 20205a2a branch le_set_md 
+
+le_check_continue:
+5a23 20405c53 call le_fifo_get_first_tx_ptr 
+5a24 203a5a2c branch le_clear_md ,blank 
+5a25 efe20006 ifetch 1 ,contr 
+5a26 e8420006 ifetcht 1 ,contr 
+5a27 98467e00 isub temp ,pdata 
+5a28 1fe67c1b sub pdata ,le_max_paket_len ,null 
+5a29 20215a2c branch le_clear_md ,positive 
+
+le_set_md:
+5a2a 79200029 set1 mark_ble_tx_md ,mark 
+5a2b 20600000 rtn 
+
+le_clear_md:
+5a2c 793f8029 set0 mark_ble_tx_md ,mark 
+5a2d 20600000 rtn 
+
+le_update_tx_type:
+5a2e 1a227e00 copy rega ,pdata 
+5a2f 207a0000 rtn blank 
+5a30 d8200001 arg llid_continue ,type 
+5a31 20600000 rtn 
+
+le_att_check_notification_enable:
+5a32 470ec023 bpatchx patch23_5 ,mem_patch23 
+5a33 18408401 increase 1 ,temp 
+5a34 20405b4a call le_att_get_handle_ptr 
+5a35 18c08dfe increase -2 ,contr 
+5a36 efe40006 ifetch 2 ,contr 
+5a37 d8402902 arg client_charactertic_configuration ,temp 
+5a38 98467c00 isub temp ,null 
+5a39 24628000 nrtn zero 
+5a3a 18c08c01 increase 1 ,contr 
+5a3b 18c22200 copy contr ,rega 
+5a3c efe20006 ifetch 1 ,contr 
+5a3d 20600000 rtn 
+
+le_send_empty:
+5a3e 18000400 force 0 ,temp 
+5a3f 18000201 force 1 ,type 
+
+le_send_packet:
+5a40 470f4023 bpatchx patch23_6 ,mem_patch23 
+5a41 604243af storet 1 ,mem_le_txlen 
+5a42 68420452 fetcht 1 ,mem_le_arq 
+5a43 79200405 set1 wak ,temp 
+5a44 18417efc and temp ,0xfc ,pdata 
+5a45 9821fe00 ior type ,pdata 
+5a46 67e20452 store 1 ,mem_le_arq 
+5a47 1fe17e1f and_into 0x1f ,pdata 
+5a48 280ffe29 isolate1 mark_ble_tx_md ,mark 
+5a49 7920fe04 setflag true ,md ,pdata 
+5a4a 67e243ae store 1 ,mem_le_txheader 
+5a4b 6fe243ae fetch 1 ,mem_le_txheader 
+5a4c 28200601 compare 1 ,type ,3 
+5a4d 2420da50 nbranch le_send_no_txlen ,true 
+5a4e 6fe243af fetch 1 ,mem_le_txlen 
+5a4f 207a0000 rtn blank 
+
+le_send_no_txlen:
+5a50 6fe2043b fetch 1 ,mem_le_state 
+5a51 c4020000 rtnbit0 lestate_encryption 
+5a52 20407342 call load_sk 
+5a53 20207299 branch le_encrypt 
+
+get_lpm_wake_ble_rx_lock:
+5a54 d8e00000 arg wake_lock_ble_rx ,queue 
+5a55 20204bec branch lpm_get_wake_lock 
+
+put_lpm_wake_ble_rx_lock:
+5a56 d8e00000 arg wake_lock_ble_rx ,queue 
+5a57 20204bf0 branch lpm_put_wake_lock 
+
+le_parse:
+5a58 470fc023 bpatchx patch23_7 ,mem_patch23 
+5a59 c6078000 rtnmark1 mark_old_packet 
+5a5a 20405c70 call le_fifo_check_full 
+5a5b 247a0000 nrtn blank 
+5a5c 6fe202d5 fetch 1 ,mem_le_rxbuf 
+5a5d 1fe17e03 and pdata ,0x3 ,pdata 
+5a5e 67e244de store 1 ,mem_le_packet_llid 
+5a5f efe20006 ifetch 1 ,contr 
+5a60 1fe17e1f and pdata ,0x1f ,pdata 
+5a61 67e244dd store 1 ,mem_le_packet_size 
+5a62 207a0000 rtn blank 
+5a63 18c27e00 copy contr ,pdata 
+5a64 67e444df store 2 ,mem_le_payload_ptr 
+5a65 47104024 bpatchx patch24_0 ,mem_patch24 
+5a66 6fe244de fetch 1 ,mem_le_packet_llid 
+5a67 c001e044 beq llid_le_ll ,le_parse_ll 
+
+le_parse_l2cap:
+5a68 4710c024 bpatchx patch24_1 ,mem_patch24 
+5a69 20405a76 call le_check_l2cap_complete 
+5a6a 24345a54 nbranch get_lpm_wake_ble_rx_lock ,user 
+5a6b 20405a56 call put_lpm_wake_ble_rx_lock 
+5a6c 6fe444df fetch 2 ,mem_le_payload_ptr 
+5a6d 1fe20c00 copy pdata ,contr 
+5a6e efe40006 ifetch 2 ,contr 
+5a6f 67e444ce store 2 ,mem_le_l2cap_size 
+5a70 47114024 bpatchx patch24_2 ,mem_patch24 
+5a71 efe40006 ifetch 2 ,contr 
+5a72 c0025c8b beq le_l2cap_cid_att ,le_parse_att 
+5a73 c0035ed4 beq le_l2cap_cid_smp ,le_parse_smp 
+5a74 c002de96 beq le_l2cap_cid_signal ,le_parse_signaling 
+5a75 20600000 rtn 
+
+le_check_l2cap_complete:
+5a76 6fe244de fetch 1 ,mem_le_packet_llid 
+5a77 c0015a85 beq llid_start ,le_check_l2cap_llid_start 
+5a78 c000da9d beq llid_continue ,le_check_l2cap_llid_continue 
+5a79 20600000 rtn 
+
+le_check_l2cap_cid_legal:
+5a7a 20407dbf call enable_user 
+5a7b d8400004 arg le_l2cap_cid_att ,temp 
+5a7c 9fe67c00 isub pdata ,null 
+5a7d 20628000 rtn zero 
+5a7e d8400005 arg le_l2cap_cid_signal ,temp 
+5a7f 9fe67c00 isub pdata ,null 
+5a80 20628000 rtn zero 
+5a81 d8400006 arg le_l2cap_cid_smp ,temp 
+5a82 9fe67c00 isub pdata ,null 
+5a83 20628000 rtn zero 
+5a84 20207dc1 branch disable_user 
+
+le_check_l2cap_llid_start:
+5a85 6fe444df fetch 2 ,mem_le_payload_ptr 
+5a86 1fe20c00 copy pdata ,contr 
+5a87 efe40006 ifetch 2 ,contr 
+5a88 67e444ce store 2 ,mem_le_l2cap_size 
+5a89 efe40006 ifetch 2 ,contr 
+5a8a 20405a7a call le_check_l2cap_cid_legal 
+5a8b 24740000 nrtn user 
+5a8c 684244dd fetcht 1 ,mem_le_packet_size 
+5a8d 604244d0 storet 1 ,mem_le_packet_len_recved 
+5a8e 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5a8f 1fe0fe04 increase 4 ,pdata 
+5a90 98467c00 isub temp ,null 
+5a91 2022fdbf branch enable_user ,zero 
+5a92 6fe244dd fetch 1 ,mem_le_packet_size 
+5a93 1fe27200 copy pdata ,loopcnt 
+5a94 d8a0030d arg mem_le_l2capbuf ,contw 
+5a95 6fe444df fetch 2 ,mem_le_payload_ptr 
+5a96 1fe20c00 copy pdata ,contr 
+5a97 20407cdc call memcpy 
+5a98 20207dc1 branch disable_user 
+
+le_check_l2cap_continue_legal:
+5a99 20407dbf call enable_user 
+5a9a 6fe244d0 fetch 1 ,mem_le_packet_len_recved 
+5a9b 247a0000 nrtn blank 
+5a9c 20207dc1 branch disable_user 
+
+le_check_l2cap_llid_continue:
+5a9d 20405a99 call le_check_l2cap_continue_legal 
+5a9e 24740000 nrtn user 
+5a9f 6fe244d0 fetch 1 ,mem_le_packet_len_recved 
+5aa0 d8a0030d arg mem_le_l2capbuf ,contw 
+5aa1 98a0a200 iadd contw ,rega 
+5aa2 684244dd fetcht 1 ,mem_le_packet_size 
+5aa3 9840fe00 iadd temp ,pdata 
+5aa4 67e244d0 store 1 ,mem_le_packet_len_recved 
+5aa5 6fe244dd fetch 1 ,mem_le_packet_size 
+5aa6 1fe27200 copy pdata ,loopcnt 
+5aa7 1a220a00 copy rega ,contw 
+5aa8 6fe444df fetch 2 ,mem_le_payload_ptr 
+5aa9 1fe20c00 copy pdata ,contr 
+5aaa 20407ccf call memcpy_fast 
+5aab 5800030d setarg mem_le_l2capbuf 
+5aac 67e444df store 2 ,mem_le_payload_ptr 
+5aad 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5aae 1fe0fe04 increase 4 ,pdata 
+5aaf 684244d0 fetcht 1 ,mem_le_packet_len_recved 
+5ab0 98467c00 isub temp ,null 
+5ab1 2022fdbf branch enable_user ,zero 
+5ab2 20207dc1 branch disable_user 
+
+le_get_search_att_type:
+5ab3 20407c80 call store_contr 
+5ab4 d8a04430 arg mem_le_search_att_type_length ,contw 
+
+le_get_search_common:
+5ab5 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5ab6 1fe0fffb increase -5 ,pdata 
+
+le_get_search_common2:
+5ab7 e7e20005 istore 1 ,contw 
+5ab8 1fe27200 copy pdata ,loopcnt 
+5ab9 20407c7a call get_contr 
+5aba 20207ccf branch memcpy_fast 
+
+le_get_search_att_uuid:
+5abb 20407c80 call store_contr 
+5abc d8a04443 arg mem_le_search_uuid_length ,contw 
+5abd 20205ab5 branch le_get_search_common 
+
+le_writeatt_cb:
+5abe 6fe441fa fetch 2 ,mem_cb_att_write 
+5abf 20207d77 branch callback_func 
+
+le_supervision_update:
+5ac0 68480457 fetcht 4 ,mem_le_supervision_timer 
+5ac1 20404a7a call get_clkbt 
+5ac2 98461600 isub temp ,timeup 
+5ac3 19627e00 deposit timeup 
+5ac4 68440469 fetcht 2 ,mem_le_superto 
+5ac5 18520400 lshift4 temp ,temp 
+5ac6 18438400 lshift temp ,temp 
+5ac7 98467e00 isub temp ,pdata 
+5ac8 20600000 rtn 
+
+le_supervision_flush:
+5ac9 20404a7a call get_clkbt 
+5aca 67e80457 store 4 ,mem_le_supervision_timer 
+5acb 20600000 rtn 
+
+le_adv:
+5acc 70001624 jam 36 ,mem_le_ch_mapped 
+5acd 700abe00 jam 0 ,mem_le_adv_channel_map_temp 
+
+le_adv_loop:
+5ace 4711c024 bpatchx patch24_3 ,mem_patch24 
+5acf 6fe24340 fetch 1 ,mem_le_adv_enable 
+5ad0 207a0000 rtn blank 
+5ad1 d8e00000 arg le_adv_interval_timer ,queue 
+5ad2 20407cf1 call timer_check 
+5ad3 247a0000 nrtn blank 
+5ad4 47124024 bpatchx patch24_4 ,mem_patch24 
+
+le_adv_loop_tx:
+5ad5 7854fc00 disable master 
+5ad6 78287c00 enable swfine 
+5ad7 2040594c call le_init_adv 
+5ad8 204057fc call le_next_adv_channel 
+5ad9 204058c3 call le_send_adv_ind 
+5ada 2436dae2 nbranch le_adv_not_match ,match 
+5adb 6fe20003 fetch 1 ,mem_le_req_rcv 
+5adc 1fe0fe01 increase 1 ,pdata 
+5add 67e20003 store 1 ,mem_le_req_rcv 
+5ade 6fe202d5 fetch 1 ,mem_le_rxbuf 
+5adf 1fe17e0f and pdata ,0x0f ,pdata 
+5ae0 c001d8f6 beq scan_req ,le_send_scan_response 
+5ae1 c002db08 beq connect_req ,le_parse_connect_req 
+
+le_adv_not_match:
+5ae2 4712c024 bpatchx patch24_5 ,mem_patch24 
+5ae3 180a7e00 random pdata 
+5ae4 d84001ff arg 0x1ff ,temp 
+5ae5 98417e00 iand temp ,pdata 
+5ae6 1fe0fefa add pdata ,250 ,pdata 
+5ae7 20405aef call delay 
+5ae8 6fe20abe fetch 1 ,mem_le_adv_channel_map_temp 
+5ae9 6842445f fetcht 1 ,mem_le_adv_channel_map 
+5aea 98467c00 isub temp ,null 
+5aeb 2422dace nbranch le_adv_loop ,zero 
+5aec d8e00000 arg le_adv_interval_timer ,queue 
+5aed 6fe44454 fetch 2 ,mem_le_adv_interval 
+5aee 20207ce3 branch timer_init 
+
+delay:
+5aef 1fe0ffff increase -1 ,pdata 
+5af0 20000026 nop 38 
+5af1 243a5aef nbranch delay ,blank 
+5af2 20600000 rtn 
+
+le_receive_window_size:
+5af3 47134024 bpatchx patch24_6 ,mem_patch24 
+5af4 6fe20472 fetch 1 ,mem_le_peer_sca 
+5af5 204057d6 call le_sca_map 
+5af6 6fe4043d fetch 2 ,mem_le_tsniff 
+5af7 984ffe00 imul32 temp ,pdata 
+5af8 d8400177 arg 375 ,temp 
+5af9 984ffe00 imul32 temp ,pdata 
+5afa d84186a0 arg 100000 ,temp 
+5afb 9846fc00 idiv temp 
+5afc 6fe20466 fetch 1 ,mem_le_window_size 
+5afd d8404e20 arg 20000 ,temp 
+5afe 984ffe00 imul32 temp ,pdata 
+5aff 9840fe00 iadd temp ,pdata 
+5b00 67e844b7 store 4 ,mem_le_transmit_window 
+5b01 4713c024 bpatchx patch24_7 ,mem_patch24 
+5b02 6fe440c1 fetch 2 ,mem_rx_window_sniff 
+5b03 20407d61 call wait_div_end 
+5b04 18078400 quotient temp 
+5b05 9840fe00 iadd temp ,pdata 
+5b06 67e40449 store 2 ,mem_le_receive_window 
+5b07 20600000 rtn 
+
+le_parse_connect_req:
+5b08 47144025 bpatchx patch25_0 ,mem_patch25 
+5b09 6fec02dd fetch 6 ,mem_le_rxbuf + 8 
+5b0a 684c4472 fetcht 6 ,mem_le_lap 
+5b0b 98467c00 isub temp ,null 
+5b0c 24628000 nrtn zero 
+5b0d 204059f3 call le_scan_check_sender_addr_type 
+5b0e 1a227e00 copy rega ,pdata 
+5b0f 67e24460 store 1 ,mem_le_conn_peer_addr_type 
+5b10 6fee02ea fetch 7 ,mem_le_rxbuf + 21 
+5b11 67ee00ff store 7 ,mem_tmp_buffer 
+5b12 eff00006 ifetch 8 ,contr 
+5b13 e7f00005 istore 8 ,contw 
+5b14 6fec02d7 fetch 6 ,mem_le_rxbuf + 2 
+5b15 67ec044b store 6 ,mem_le_plap 
+5b16 18c08c06 increase 6 ,contr 
+5b17 eff00006 ifetch 8 ,contr 
+5b18 67f0045f store 8 ,mem_le_access 
+5b19 e8440006 ifetcht 2 ,contr 
+5b1a 4714c025 bpatchx patch25_1 ,mem_patch25 
+5b1b 184b8400 lshift2 temp ,temp 
+5b1c efe40006 ifetch 2 ,contr 
+5b1d 1febfe00 lshift2 pdata ,pdata 
+5b1e 67e4043d store 2 ,mem_le_tsniff 
+5b1f 67e8043f store 4 ,mem_le_anchor 
+5b20 98467e00 isub temp ,pdata 
+5b21 1fe0d1fe add pdata ,-2 ,clke_bt 
+5b22 eff20006 ifetch 9 ,contr 
+5b23 67f20467 store 9 ,mem_le_slave_latency 
+5b24 47154025 bpatchx patch25_2 ,mem_patch25 
+5b25 efe20006 ifetch 1 ,contr 
+5b26 1ff18400 rshift4 pdata ,temp 
+5b27 18430400 rshift temp ,temp 
+5b28 60420472 storet 1 ,mem_le_peer_sca 
+5b29 1fe17e1f and_into 0x1f ,pdata 
+5b2a 67e20454 store 1 ,mem_le_hop 
+5b2b 20405af3 call le_receive_window_size 
+5b2c 20405835 call le_calc_channel_map 
+5b2d 20405726 call le_init_slave 
+5b2e 20404237 call context_new 
+5b2f 24628000 nrtn zero 
+5b30 4715c025 bpatchx patch25_3 ,mem_patch25 
+5b31 2040483d call calc_clke_offset 
+5b32 20405eb3 call le_l2cap_reset_signaling_identifier 
+5b33 700a9514 jam bt_evt_le_connected ,mem_fifo_temp 
+5b34 20407bab call ui_ipc_send_event 
+5b35 2020421f branch context_save 
+
+le_init_attlist_search:
+5b36 47164025 bpatchx patch25_4 ,mem_patch25 
+5b37 6fe4442c fetch 2 ,mem_le_search_handle_start 
+5b38 98002400 iforce regb 
+5b39 6fe4442e fetch 2 ,mem_le_search_handle_end 
+5b3a 98002600 iforce regc 
+5b3b 6fe4448e fetch 2 ,mem_ui_le_uuid_table 
+5b3c 98000c00 iforce contr 
+5b3d 78347c00 enable user 
+5b3e 20600000 rtn 
+
+le_att_handle_inrange:
+5b3f efe40006 ifetch 2 ,contr 
+5b40 207a0000 rtn blank 
+5b41 9a467c00 isub regb ,null 
+5b42 24610000 nrtn positive 
+5b43 9a667c00 isub regc ,null 
+5b44 20628000 rtn zero 
+5b45 20215b48 branch le_att_handle_blank ,positive 
+5b46 18007c01 force 1 ,null 
+5b47 20600000 rtn 
+
+le_att_handle_blank:
+5b48 18007e00 force 0 ,pdata 
+5b49 20600000 rtn 
+
+le_att_get_handle_ptr:
+5b4a 20405b4d call le_att_get_handle_ptr2 
+5b4b 2022db59 branch le_att_get_handle_ptr_found ,zero 
+5b4c 20600000 rtn 
+
+le_att_get_handle_ptr2:
+5b4d 4716c025 bpatchx patch25_5 ,mem_patch25 
+5b4e 6fe4448e fetch 2 ,mem_ui_le_uuid_table 
+5b4f 98000c00 iforce contr 
+
+le_att_get_handle_loop1:
+5b50 efe40006 ifetch 2 ,contr 
+5b51 207a0000 rtn blank 
+5b52 98467c00 isub temp ,null 
+5b53 20628000 rtn zero 
+5b54 efe20006 ifetch 1 ,contr 
+5b55 98c08c00 iadd contr ,contr 
+5b56 efe20006 ifetch 1 ,contr 
+5b57 98c08c00 iadd contr ,contr 
+5b58 20205b50 branch le_att_get_handle_loop1 
+
+le_att_get_handle_ptr_found:
+5b59 efe20006 ifetch 1 ,contr 
+5b5a 98c08c00 iadd contr ,contr 
+5b5b 20600000 rtn 
+
+le_att_get_short_uuid_ptr:
+5b5c 47174025 bpatchx patch25_6 ,mem_patch25 
+5b5d 6fe4448e fetch 2 ,mem_ui_le_uuid_table 
+5b5e 98000c00 iforce contr 
+
+le_att_get_short_uuid_loop:
+5b5f efe40006 ifetch 2 ,contr 
+5b60 207a0000 rtn blank 
+5b61 efe20006 ifetch 1 ,contr 
+5b62 98c08c00 iadd contr ,contr 
+5b63 18c08dfe increase -2 ,contr 
+5b64 efe40006 ifetch 2 ,contr 
+5b65 98467c00 isub temp ,null 
+5b66 20628000 rtn zero 
+5b67 efe20006 ifetch 1 ,contr 
+5b68 98c08c00 iadd contr ,contr 
+5b69 20205b5f branch le_att_get_short_uuid_loop 
+
+le_att_get_handle_info_from_ptr:
+5b6a 6fe40498 fetch 2 ,mem_le_cur_attlist_start_ptr 
+5b6b 20205b6e branch le_att_get_handle_info_fast 
+
+le_att_get_handle_info:
+5b6c 4717c025 bpatchx patch25_7 ,mem_patch25 
+5b6d 6fe4448e fetch 2 ,mem_ui_le_uuid_table 
+
+le_att_get_handle_info_fast:
+5b6e 98000c00 iforce contr 
+5b6f 18422200 copy temp ,rega 
+
+le_att_get_handle_loop:
+5b70 efe40006 ifetch 2 ,contr 
+5b71 203a5b79 branch le_att_unfind_handle ,blank 
+5b72 9a267c00 isub rega ,null 
+5b73 2022db7a branch le_att_finded_handle ,zero 
+5b74 efe20006 ifetch 1 ,contr 
+5b75 98c08c00 iadd contr ,contr 
+5b76 efe20006 ifetch 1 ,contr 
+5b77 98c08c00 iadd contr ,contr 
+5b78 20205b70 branch le_att_get_handle_loop 
+
+le_att_unfind_handle:
+5b79 20207dc7 branch disable_blank 
+
+le_att_finded_handle:
+5b7a efe20006 ifetch 1 ,contr 
+5b7b 67e2049e store 1 ,mem_le_cur_uuid_length 
+5b7c 1fe27200 copy pdata ,loopcnt 
+5b7d d8a0049f arg mem_le_cur_uuid ,contw 
+5b7e 20407ccf call memcpy_fast 
+5b7f efe20006 ifetch 1 ,contr 
+5b80 67e204af store 1 ,mem_le_curr_att_len 
+5b81 20407c80 call store_contr 
+5b82 20207dc9 branch enable_blank 
+
+le_modified_name:
+5b83 47184026 bpatchx patch26_0 ,mem_patch26 
+5b84 20405b86 call le_modified_name_att_list 
+5b85 20205b98 branch le_modified_name_adv 
+
+le_modified_name_att_list:
+5b86 d8402a00 arg uuid_chrctr_device_name ,temp 
+5b87 20405b5c call le_att_get_short_uuid_ptr 
+5b88 207a0000 rtn blank 
+5b89 efe20006 ifetch 1 ,contr 
+5b8a 18c20a00 copy contr ,contw 
+5b8b 68424381 fetcht 1 ,mem_le_name_len 
+5b8c 18427200 copy temp ,loopcnt 
+5b8d 98467c00 isub temp ,null 
+5b8e 24215b95 nbranch le_name_length_longer_than_att ,positive 
+5b8f 98460400 isub temp ,temp 
+5b90 d8c04382 arg mem_le_name ,contr 
+5b91 20407cdc call memcpy 
+5b92 18427200 copy temp ,loopcnt 
+5b93 2442dbd0 ncall memcpy_empty ,zero 
+5b94 20600000 rtn 
+
+le_name_length_longer_than_att:
+5b95 1fe27200 copy pdata ,loopcnt 
+5b96 d8c04382 arg mem_le_name ,contr 
+5b97 20207ccf branch memcpy_fast 
+
+le_modified_name_adv:
+5b98 da604361 arg mem_le_adv_data_len + 32 ,regc 
+5b99 da204342 arg mem_le_adv_data ,rega 
+5b9a 20405ba5 call le_modified_name_adv_and_scan 
+5b9b 58000000 setarg 0 
+5b9c 79347e00 setflag user ,0 ,pdata 
+5b9d 67e20a96 store 1 ,mem_pdatatemp 
+5b9e da604381 arg mem_le_scan_data_len + 32 ,regc 
+5b9f da204362 arg mem_le_scan_data ,rega 
+5ba0 20405ba5 call le_modified_name_adv_and_scan 
+5ba1 20740000 rtn user 
+5ba2 6fe20a96 fetch 1 ,mem_pdatatemp 
+5ba3 203a4a8b branch assert ,blank 
+5ba4 20600000 rtn 
+
+le_modified_name_adv_and_scan:
+5ba5 4718c026 bpatchx patch26_1 ,mem_patch26 
+5ba6 20407dbf call enable_user 
+5ba7 20407cb5 call clear_temp_block 
+5ba8 da400000 arg 0 ,regb 
+5ba9 d8a00abf arg mem_le_data_temp ,contw 
+5baa 20405bbf call le_modified_name_adv_loop 
+5bab 6fe24381 fetch 1 ,mem_le_name_len 
+5bac 1fe08401 add pdata ,1 ,temp 
+5bad 9a40a200 iadd regb ,rega 
+5bae 1a20a202 increase 2 ,rega 
+5baf 1a267c1f sub rega ,0x1f ,null 
+5bb0 24215bbd nbranch le_modified_name_adv_and_scan_name_overflow ,positive 
+5bb1 e0420005 istoret 1 ,contw 
+5bb2 d8400009 arg gap_adtype_local_name_complete ,temp 
+5bb3 e0420005 istoret 1 ,contw 
+5bb4 98007200 iforce loopcnt 
+5bb5 20407ccf call memcpy_fast 
+5bb6 1a222400 copy rega ,regb 
+
+le_modified_name_adv_and_scan_store_data:
+5bb7 1a427e00 deposit regb 
+5bb8 67e20abe store 1 ,mem_le_data_len_temp 
+5bb9 d8c00abe arg mem_le_data_len_temp ,contr 
+5bba 5fffffe0 setarg -32 
+5bbb 9a608a00 iadd regc ,contw 
+5bbc 20207c98 branch memcpy32 
+
+le_modified_name_adv_and_scan_name_overflow:
+5bbd 20407dc1 call disable_user 
+5bbe 20205bb7 branch le_modified_name_adv_and_scan_store_data 
+
+le_modified_name_adv_loop:
+5bbf efe20011 ifetch 1 ,rega 
+5bc0 207a0000 rtn blank 
+5bc1 1fe0fe01 pincrease 1 
+5bc2 e8420006 ifetcht 1 ,contr 
+5bc3 18467c09 sub temp ,gap_adtype_local_name_complete ,null 
+5bc4 2022dbce branch le_modified_name_adv_found_name ,zero 
+5bc5 9a40a400 iadd regb ,regb 
+5bc6 1a220c00 copy rega ,contr 
+5bc7 98007200 iforce loopcnt 
+5bc8 20407ccf call memcpy_fast 
+5bc9 18c22200 copy contr ,rega 
+
+le_modified_name_adv_loop2:
+5bca 1a227e00 deposit rega 
+5bcb 9a667c00 isub regc ,null 
+5bcc 20610000 rtn positive 
+5bcd 20205bbf branch le_modified_name_adv_loop 
+
+le_modified_name_adv_found_name:
+5bce 9a20a200 iadd rega ,rega 
+5bcf 20205bca branch le_modified_name_adv_loop2 
+
+memcpy_empty:
+5bd0 58000020 setarg space 
+5bd1 e7e20005 istore 1 ,contw 
+5bd2 c2005bd0 loop memcpy_empty 
+5bd3 20600000 rtn 
+
+le_lpm_set_mult:
+5bd4 47194026 bpatchx patch26_2 ,mem_patch26 
+5bd5 7855fc00 disable wake 
+5bd6 20375bd8 branch le_lpm_set_mult_attempt ,attempt 
+5bd7 2436dbe6 nbranch le_lpm_lost ,match 
+
+le_lpm_set_mult_attempt:
+5bd8 20404ba0 call lpm_match 
+5bd9 6fe440c1 fetch 2 ,mem_rx_window_sniff 
+5bda 67e40449 store 2 ,mem_le_receive_window 
+5bdb 2436cbb3 nbranch lpm_mult_short ,match 
+5bdc c507cbb3 bmark1 mark_old_packet ,lpm_mult_short 
+5bdd 6fe244dd fetch 1 ,mem_le_packet_size 
+5bde 243a4bb3 nbranch lpm_mult_short ,blank 
+5bdf 6fe243af fetch 1 ,mem_le_txlen 
+5be0 243a4bb3 nbranch lpm_mult_short ,blank 
+5be1 6fe244bb fetch 1 ,mem_le_configuration 
+5be2 c282cbb3 bbit1 bit_ble_short_mult ,lpm_mult_short 
+5be3 6fe2043b fetch 1 ,mem_le_state 
+5be4 c282cbb3 bbit1 lestate_update_param ,lpm_mult_short 
+5be5 20204b95 branch lpm_mult_wait_timeout 
+
+le_lpm_lost:
+5be6 684440c1 fetcht 2 ,mem_rx_window_sniff 
+5be7 18430400 rshift temp ,temp 
+5be8 6fe40449 fetch 2 ,mem_le_receive_window 
+5be9 9840fe00 iadd temp ,pdata 
+5bea 67e40449 store 2 ,mem_le_receive_window 
+5beb 20204bab branch lpm_lost 
+
+le_set_config_fixed_tk:
+5bec d8e00000 arg bit_ble_passkey_fixed_key ,queue 
+5bed 20205c04 branch le_set_config 
+
+le_clr_config_fixed_tk:
+5bee d8e00000 arg bit_ble_passkey_fixed_key ,queue 
+5bef 20205c08 branch le_clr_config 
+
+le_set_config_fixed_ltk:
+5bf0 d8e00001 arg bit_ble_pairing_fixed_ltk ,queue 
+5bf1 20205c04 branch le_set_config 
+
+le_clr_config_fixed_ltk:
+5bf2 d8e00001 arg bit_ble_pairing_fixed_ltk ,queue 
+5bf3 20205c08 branch le_clr_config 
+
+le_set_config_more_data:
+5bf4 d8e00002 arg bit_ble_transmit_packet_by_md ,queue 
+5bf5 20205c04 branch le_set_config 
+
+le_clr_config_more_data:
+5bf6 d8e00002 arg bit_ble_transmit_packet_by_md ,queue 
+5bf7 20205c08 branch le_clr_config 
+
+le_set_config_read_authentication:
+5bf8 d8e00003 arg bit_ble_read_auth ,queue 
+5bf9 20205c04 branch le_set_config 
+
+le_clr_config_read_authentication:
+5bfa d8e00003 arg bit_ble_read_auth ,queue 
+5bfb 20205c08 branch le_clr_config 
+
+le_set_config_write_authentication:
+5bfc d8e00004 arg bit_ble_write_auth ,queue 
+5bfd 20205c04 branch le_set_config 
+
+le_clr_config_write_authentication:
+5bfe d8e00004 arg bit_ble_write_auth ,queue 
+5bff 20205c08 branch le_clr_config 
+
+le_set_config_short_mult:
+5c00 d8e00005 arg bit_ble_short_mult ,queue 
+5c01 20205c04 branch le_set_config 
+
+le_clr_config_short_mult:
+5c02 d8e00005 arg bit_ble_short_mult ,queue 
+5c03 20205c08 branch le_clr_config 
+
+le_set_config:
+5c04 6fe244bb fetch 1 ,mem_le_configuration 
+5c05 f9207e00 qset1 pdata 
+5c06 67e244bb store 1 ,mem_le_configuration 
+5c07 20600000 rtn 
+
+le_clr_config:
+5c08 6fe244bb fetch 1 ,mem_le_configuration 
+5c09 f93ffe00 qset0 pdata 
+5c0a 67e244bb store 1 ,mem_le_configuration 
+5c0b 20600000 rtn 
+
+le_set_fixed_ltk:
+5c0c 58112233 setarg 0x112233 
+5c0d 67e644bc store 3 ,mem_le_fixed_ltk 
+5c0e 58445566 setarg 0x445566 
+5c0f e7e60005 istore 3 ,contw 
+5c10 58778899 setarg 0x778899 
+5c11 e7e60005 istore 3 ,contw 
+5c12 58001122 setarg 0x001122 
+5c13 e7e60005 istore 3 ,contw 
+5c14 58334455 setarg 0x334455 
+5c15 e7e60005 istore 3 ,contw 
+5c16 58000066 setarg 0x66 
+5c17 e7e20005 istore 1 ,contw 
+5c18 20600000 rtn 
+
+le_set_justwork:
+5c19 59000302 setarg 0x01000302 
+5c1a 67e84425 store 4 ,mem_le_pres 
+5c1b 58010010 setarg 0x010010 
+5c1c 67e64429 store 3 ,mem_le_pres_max_keysize 
+5c1d 70449801 jam 1 ,mem_le_pairing_mode 
+5c1e 20600000 rtn 
+
+le_fifo_malloc_tx_empty:
+5c1f da200000 arg 0 ,rega 
+5c20 d8200001 arg llid_empty ,type 
+5c21 20205c30 branch le_fifo_malloc_tx 
+
+le_fifo_malloc_tx_ll:
+5c22 d8200003 arg llid_le_ll ,type 
+5c23 20405c30 call le_fifo_malloc_tx 
+5c24 1a427e00 copy regb ,pdata 
+5c25 e7e20005 istore 1 ,contw 
+5c26 20600000 rtn 
+
+le_fifo_malloc_tx_l2cap:
+5c27 18000202 force llid_start ,type 
+5c28 1a20a204 increase 4 ,rega 
+5c29 20405c30 call le_fifo_malloc_tx 
+5c2a 1a20a3fc increase -4 ,rega 
+5c2b 1a227e00 copy rega ,pdata 
+5c2c e7e40005 istore 2 ,contw 
+5c2d 1a427e00 copy regb ,pdata 
+5c2e e7e40005 istore 2 ,contw 
+5c2f 20600000 rtn 
+
+le_fifo_malloc_tx:
+5c30 1a267cf0 sub rega ,240 ,null 
+5c31 24214a8b nbranch assert ,positive 
+5c32 6fe244d1 fetch 1 ,mem_le_tx_buff_used 
+5c33 d8400001 arg 1 ,temp 
+5c34 df200004 arg le_tx_buff_count ,loopcnt 
+
+le_fifo_malloc_tx_loop:
+5c35 98417c00 iand temp ,null 
+5c36 2022dc3a branch le_fifo_malloc_tx_got_empty ,zero 
+5c37 18438400 lshift temp ,temp 
+5c38 c2005c35 loop le_fifo_malloc_tx_loop 
+5c39 20204a8b branch assert 
+
+le_fifo_malloc_tx_got_empty:
+5c3a 9842fe00 ixor temp ,pdata 
+5c3b 67e244d1 store 1 ,mem_le_tx_buff_used 
+5c3c 1f267e04 sub loopcnt ,le_tx_buff_count ,pdata 
+5c3d 1ff27e00 lshift4 pdata ,pdata 
+5c3e 1ff27e00 lshift4 pdata ,pdata 
+5c3f d8400c00 arg mem_le_tx_buffer0 ,temp 
+5c40 98408400 iadd temp ,temp 
+
+le_fifo_tx_find_empty_ptr:
+5c41 df200000 arg 0 ,loopcnt 
+5c42 d8c044d2 arg mem_le_tx_ptr0 ,contr 
+
+le_fifo_tx_find_empty_ptr_loop:
+5c43 efe40006 ifetch 2 ,contr 
+5c44 203a5c49 branch le_fifo_tx_found_empty_ptr ,blank 
+5c45 1f227e00 copy loopcnt ,pdata 
+5c46 1f20f201 increase 1 ,loopcnt 
+5c47 c0825c43 bne le_tx_buff_count ,le_fifo_tx_find_empty_ptr_loop 
+5c48 20204a8b branch assert 
+
+le_fifo_tx_found_empty_ptr:
+5c49 18c08dfe increase -2 ,contr 
+5c4a e0440006 istoret 2 ,contr 
+5c4b 18420a00 copy temp ,contw 
+5c4c 1a227e00 copy rega ,pdata 
+5c4d e7e20005 istore 1 ,contw 
+5c4e 58000000 setarg 0 
+5c4f e7e20005 istore 1 ,contw 
+5c50 18227e00 copy type ,pdata 
+5c51 e7e20005 istore 1 ,contw 
+5c52 20600000 rtn 
+
+le_fifo_get_first_tx_ptr:
+5c53 6fe444d2 fetch 2 ,mem_le_tx_ptr0 
+5c54 1fe20c00 copy pdata ,contr 
+5c55 20600000 rtn 
+
+le_fifo_get_second_tx_ptr:
+5c56 6fe444d4 fetch 2 ,mem_le_tx_ptr1 
+5c57 1fe20c00 copy pdata ,contr 
+5c58 20600000 rtn 
+
+le_fifo_get_last_tx_ptr:
+5c59 20405c5c call le_fifo_get_last_tx_ptr0 
+5c5a 1fe20c00 copy pdata ,contr 
+5c5b 20600000 rtn 
+
+le_fifo_get_last_tx_ptr0:
+5c5c 6fe444d8 fetch 2 ,mem_le_tx_ptr3 
+5c5d 247a0000 nrtn blank 
+5c5e 6fe444d6 fetch 2 ,mem_le_tx_ptr2 
+5c5f 247a0000 nrtn blank 
+5c60 6fe444d4 fetch 2 ,mem_le_tx_ptr1 
+5c61 247a0000 nrtn blank 
+5c62 6fe444d2 fetch 2 ,mem_le_tx_ptr0 
+5c63 20600000 rtn 
+
+le_fifo_get_first_l2cap_ptr:
+5c64 20405c53 call le_fifo_get_first_tx_ptr 
+5c65 18c08c03 increase 3 ,contr 
+5c66 20600000 rtn 
+
+le_fifo_get_first_att_ptr:
+5c67 20405c53 call le_fifo_get_first_tx_ptr 
+5c68 18c08c07 increase 7 ,contr 
+5c69 20600000 rtn 
+
+le_fifo_get_last_att_ptr:
+5c6a 20405c59 call le_fifo_get_last_tx_ptr 
+5c6b 18c08c07 increase 7 ,contr 
+5c6c 20600000 rtn 
+
+le_fifo_get_last_l2cap_ptr:
+5c6d 20405c59 call le_fifo_get_last_tx_ptr 
+5c6e 18c08c03 increase 3 ,contr 
+5c6f 20600000 rtn 
+
+le_fifo_check_full:
+5c70 6fe444d8 fetch 2 ,mem_le_tx_ptr3 
+5c71 20600000 rtn 
+
+le_fifo_check_nearly_full:
+5c72 6fe444d6 fetch 2 ,mem_le_tx_ptr2 
+5c73 20600000 rtn 
+
+le_fifo_check_empty:
+5c74 6fe444d2 fetch 2 ,mem_le_tx_ptr0 
+5c75 20600000 rtn 
+
+le_fifo_release_first_node:
+5c76 6fe444d2 fetch 2 ,mem_le_tx_ptr0 
+5c77 d8400c00 arg mem_le_tx_buffer0 ,temp 
+5c78 98467e00 isub temp ,pdata 
+5c79 1ff1fe00 rshift4 pdata ,pdata 
+5c7a 1ff18e00 rshift4 pdata ,queue 
+5c7b 6fe244d1 fetch 1 ,mem_le_tx_buff_used 
+5c7c f93ffe00 qset0 pdata 
+5c7d 67e244d1 store 1 ,mem_le_tx_buff_used 
+5c7e df200000 arg 0 ,loopcnt 
+
+le_fifo_release_first_node_loop:
+5c7f 1f23fe00 lshift loopcnt ,pdata 
+5c80 d84044d4 arg mem_le_tx_ptr1 ,temp 
+5c81 98408400 iadd temp ,temp 
+5c82 efe40002 ifetch 2 ,temp 
+5c83 184085fe increase -2 ,temp 
+5c84 e7e40002 istore 2 ,temp 
+5c85 1f227e00 copy loopcnt ,pdata 
+5c86 1f20f201 increase 1 ,loopcnt 
+5c87 c081dc7f bne le_tx_buff_update_loopcnt ,le_fifo_release_first_node_loop 
+5c88 58000000 setarg 0 
+5c89 e7e40002 istore 2 ,temp 
+5c8a 20600000 rtn 
+
+le_parse_att:
+5c8b efe60006 ifetch 3 ,contr 
+5c8c 67e60473 store 3 ,mem_le_att_opcode 
+5c8d c0015ca1 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
+5c8e c001dca9 beq attop_exchange_mtu_response ,le_parse_att_exchange_mtu_response 
+5c8f c0025cac beq attop_find_information_request ,le_parse_att_find_information_request 
+5c90 c0035cd2 beq attop_find_by_type_value_request ,le_parse_att_find_by_type_value_request 
+5c91 c0045d1f beq attop_read_by_type_request ,le_parse_att_read_by_type_request 
+5c92 c0055d9c beq attop_read_request ,le_parse_att_read_request 
+5c93 c0065dc4 beq attop_read_blob_request ,le_parse_att_read_blob_request 
+5c94 c0085dda beq attop_read_by_group_type_request ,le_parse_att_read_by_group_type_request 
+5c95 c0095e0f beq attop_write_request ,le_parse_att_write_request 
+5c96 c00b5e28 beq attop_prepare_write_request ,le_parse_att_prepare_write_request 
+5c97 c00c5e3b beq attop_execute_write_request ,le_parse_att_execute_write_request 
+5c98 c0295e40 beq attop_write_command ,le_parse_att_write_command 
+5c99 20600000 rtn 
+
+le_send_att_exchange_mtu_requset:
+5c9a 18002203 force 3 ,rega 
+5c9b 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5c9c 58000002 setarg attop_exchange_mtu_request 
+5c9d e7e20005 istore 1 ,contw 
+5c9e 6fe44478 fetch 2 ,mem_le_local_mtu 
+5c9f e7e40005 istore 2 ,contw 
+5ca0 20600000 rtn 
+
+le_parse_att_exchange_mtu_request:
+5ca1 20405ca9 call le_parse_att_exchange_mtu_response 
+
+le_send_att_exchange_mtu_response:
+5ca2 18002203 force 3 ,rega 
+5ca3 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5ca4 58000003 setarg attop_exchange_mtu_response 
+5ca5 e7e20005 istore 1 ,contw 
+5ca6 6fe44478 fetch 2 ,mem_le_local_mtu 
+5ca7 e7e40005 istore 2 ,contw 
+5ca8 20600000 rtn 
+
+le_parse_att_exchange_mtu_response:
+5ca9 1fecfe00 rshift8 pdata ,pdata 
+5caa 67e4447a store 2 ,mem_le_remote_mtu 
+5cab 20600000 rtn 
+
+le_parse_att_find_information_request:
+5cac 20405e91 call le_get_search_handle_start_end_common 
+5cad 20407dbf call enable_user 
+5cae 20205caf branch le_send_att_find_information_response 
+
+le_send_att_find_information_response:
+5caf d9600003 arg 3 ,timeup 
+5cb0 20405b36 call le_init_attlist_search 
+
+le_send_att_find_information_res_loop:
+5cb1 20405b3f call le_att_handle_inrange 
+5cb2 203a5cd0 branch le_send_att_find_information_res_end ,blank 
+5cb3 24215ccd nbranch le_send_att_find_information_res_next ,positive 
+5cb4 18c08dfe increase -2 ,contr 
+5cb5 20407c80 call store_contr 
+5cb6 20407c77 call get_contw 
+5cb7 24345cc1 nbranch le_send_att_find_information_res_store_info ,user 
+5cb8 20407c60 call push_stack_rega_b_c 
+5cb9 20407dc1 call disable_user 
+5cba 18002214 force 20 ,rega 
+5cbb 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5cbc 20407c70 call pop_stack_rega_b_c 
+5cbd 58000005 setarg attop_find_information_response 
+5cbe e7e20005 istore 1 ,contw 
+5cbf 58000001 setarg uuid_size_16bit 
+5cc0 e7e20005 istore 1 ,contw 
+
+le_send_att_find_information_res_store_info:
+5cc1 20407c7a call get_contr 
+5cc2 efe40006 ifetch 2 ,contr 
+5cc3 e7e40005 istore 2 ,contw 
+5cc4 efe20006 ifetch 1 ,contr 
+5cc5 1fe27200 copy pdata ,loopcnt 
+5cc6 20407cdc call memcpy 
+5cc7 20407c7d call store_contw 
+5cc8 196097ff increase -1 ,timeup 
+5cc9 2022dcd0 branch le_send_att_find_information_res_end ,zero 
+
+le_send_att_find_information_res_cont:
+5cca efe20006 ifetch 1 ,contr 
+5ccb 98c08c00 iadd contr ,contr 
+5ccc 20205cb1 branch le_send_att_find_information_res_loop 
+
+le_send_att_find_information_res_next:
+5ccd efe20006 ifetch 1 ,contr 
+5cce 98c08c00 iadd contr ,contr 
+5ccf 20205cca branch le_send_att_find_information_res_cont 
+
+le_send_att_find_information_res_end:
+5cd0 20345e56 branch le_send_att_error_response_notfound ,user 
+5cd1 20205e85 branch le_send_auto_len_by_mem 
+
+le_parse_att_find_by_type_value_request:
+5cd2 20405e91 call le_get_search_handle_start_end_common 
+5cd3 efe40006 ifetch 2 ,contr 
+5cd4 67e44444 store 2 ,mem_le_search_uuid 
+5cd5 20407c80 call store_contr 
+5cd6 d8a04430 arg mem_le_search_att_type_length ,contw 
+5cd7 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5cd8 1fe0fff9 increase -7 ,pdata 
+5cd9 20405ab7 call le_get_search_common2 
+5cda 20205ce5 branch le_send_att_find_by_type_value_response 
+
+le_start_end_handle_check_1:
+5cdb 78547c00 disable user 
+5cdc 6844442c fetcht 2 ,mem_le_search_handle_start 
+5cdd 6fe4442e fetch 2 ,mem_le_search_handle_end 
+5cde 98467c00 isub temp ,null 
+5cdf 24215ce2 nbranch le_start_end_handle_check_1_fail ,positive 
+5ce0 18427e00 deposit temp 
+5ce1 c1800000 rtnne 0 
+
+le_start_end_handle_check_1_fail:
+5ce2 78347c00 enable user 
+5ce3 70047601 jam att_err_invalid_handle ,mem_le_err_code 
+5ce4 20205e57 branch le_send_att_error_response 
+
+le_send_att_find_by_type_value_response:
+5ce5 20405cdb call le_start_end_handle_check_1 
+5ce6 20740000 rtn user 
+5ce7 68444444 fetcht 2 ,mem_le_search_uuid 
+5ce8 58002800 setarg uuid_gatt_primary_service 
+5ce9 98467c00 isub temp ,null 
+5cea 2022dcec branch le_send_att_find_by_type_value_res_primary ,zero 
+5ceb 20205e56 branch le_send_att_error_response_notfound 
+
+le_send_att_find_by_type_value_res_primary:
+5cec 7004b000 jam le_find_by_type_val_res_not_found ,mem_le_search_res 
+5ced 6844442c fetcht 2 ,mem_le_search_handle_start 
+5cee 60440a9e storet 2 ,mem_temp 
+5cef 20405b6c call le_att_get_handle_info 
+5cf0 243a5e56 nbranch le_send_att_error_response_notfound ,blank 
+
+le_send_att_find_primary_search_loop:
+5cf1 68440a9e fetcht 2 ,mem_temp 
+5cf2 20405b6c call le_att_get_handle_info 
+5cf3 243a5d05 nbranch le_send_att_error_response_notfound2 ,blank 
+5cf4 18c22200 copy contr ,rega 
+5cf5 6fe204af fetch 1 ,mem_le_curr_att_len 
+5cf6 1fe27200 copy pdata ,loopcnt 
+5cf7 68424430 fetcht 1 ,mem_le_search_att_type_length 
+5cf8 98467c00 isub temp ,null 
+5cf9 2422dd01 nbranch le_send_att_find_primary_search_loop1 ,zero 
+5cfa da404431 arg mem_le_search_att_type ,regb 
+5cfb 20407d63 call string_compare 
+5cfc 2022dd08 branch le_send_att_find_primary_search_end_start_handle_found ,zero 
+5cfd 6fe4049f fetch 2 ,mem_le_cur_uuid 
+5cfe 68444444 fetcht 2 ,mem_le_search_uuid 
+5cff 98467c00 isub temp ,null 
+5d00 2022dd10 branch le_send_att_find_primary_search_end_ending_handle_found ,zero 
+
+le_send_att_find_primary_search_loop1:
+5d01 6fe40a9e fetch 2 ,mem_temp 
+5d02 1fe0fe01 increase 1 ,pdata 
+5d03 67e40a9e store 2 ,mem_temp 
+5d04 20205cf1 branch le_send_att_find_primary_search_loop 
+
+le_send_att_error_response_notfound2:
+5d05 6fe204b0 fetch 1 ,mem_le_search_res 
+5d06 c000dd10 beq le_find_by_type_val_res_found_starting_handle ,le_send_att_find_primary_search_end_ending_handle_found 
+5d07 20205e56 branch le_send_att_error_response_notfound 
+
+le_send_att_find_primary_search_end_start_handle_found:
+5d08 6fe4049f fetch 2 ,mem_le_cur_uuid 
+5d09 68444444 fetcht 2 ,mem_le_search_uuid 
+5d0a 98467c00 isub temp ,null 
+5d0b 2422dd01 nbranch le_send_att_find_primary_search_loop1 ,zero 
+5d0c 7004b001 jam le_find_by_type_val_res_found_starting_handle ,mem_le_search_res 
+5d0d 68440a9e fetcht 2 ,mem_temp 
+5d0e 6044049a storet 2 ,mem_le_cur_handle_start 
+5d0f 20205d01 branch le_send_att_find_primary_search_loop1 
+
+le_send_att_find_primary_search_end_ending_handle_found:
+5d10 6fe204b0 fetch 1 ,mem_le_search_res 
+5d11 c0005d01 beq le_find_by_type_val_res_not_found ,le_send_att_find_primary_search_loop1 
+5d12 7004b002 jam le_find_by_type_val_res_found_ending_handle ,mem_le_search_res 
+5d13 68440a9e fetcht 2 ,mem_temp 
+5d14 184085ff increase -1 ,temp 
+5d15 6044049c storet 2 ,mem_le_cur_handle_end 
+
+le_send_att_find_primary_search_end:
+5d16 da200005 arg 5 ,rega 
+5d17 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5d18 58000007 setarg attop_find_by_type_value_response 
+5d19 e7e20005 istore 1 ,contw 
+5d1a 6fe4049a fetch 2 ,mem_le_cur_handle_start 
+5d1b e7e40005 istore 2 ,contw 
+5d1c 6fe4049c fetch 2 ,mem_le_cur_handle_end 
+5d1d e7e40005 istore 2 ,contw 
+5d1e 20600000 rtn 
+
+le_parse_att_read_by_type_request:
+5d1f 20405e91 call le_get_search_handle_start_end_common 
+5d20 20405abb call le_get_search_att_uuid 
+5d21 20205d22 branch le_send_att_read_by_type_response 
+
+le_send_att_read_by_type_response:
+5d22 6844442c fetcht 2 ,mem_le_search_handle_start 
+5d23 60440a9e storet 2 ,mem_temp 
+5d24 20405b36 call le_init_attlist_search 
+5d25 20405b4d call le_att_get_handle_ptr2 
+5d26 18c08dfe increase -2 ,contr 
+5d27 18c27e00 copy contr ,pdata 
+5d28 67e40498 store 2 ,mem_le_cur_attlist_start_ptr 
+5d29 68444444 fetcht 2 ,mem_le_search_uuid 
+5d2a 58002a00 setarg uuid_chrctr_device_name 
+5d2b 98467c00 isub temp ,null 
+5d2c 2022dd88 branch le_send_att_read_by_type_res_device_name ,zero 
+5d2d 58002803 setarg uuid_gatt_characteristic 
+5d2e 98467c00 isub temp ,null 
+5d2f 2422dd70 nbranch le_send_att_read_by_type_res_not_characteristic ,zero 
+5d30 d9600002 arg 2 ,timeup 
+
+le_send_att_read_by_type_response_loop:
+5d31 20405e68 call le_att_check_handle_end 
+5d32 24215d4d nbranch le_send_att_read_by_type_response_end ,positive 
+5d33 68440a9e fetcht 2 ,mem_temp 
+5d34 20405b6a call le_att_get_handle_info_from_ptr 
+5d35 c000dd4d beq 1 ,le_send_att_read_by_type_response_end 
+5d36 20405e74 call le_att_same_uuid 
+5d37 2422dd4b nbranch le_send_att_read_by_type_response_next_handle ,zero 
+5d38 24345d4f nbranch le_send_att_read_by_type_res_found_next ,user 
+5d39 78547c00 disable user 
+5d3a da200014 arg 20 ,rega 
+5d3b 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5d3c 58000009 setarg attop_read_by_type_response 
+5d3d e7e20005 istore 1 ,contw 
+5d3e 18a26000 copy contw ,alarm 
+5d3f 18a08a01 increase 1 ,contw 
+5d40 20405d5d call le_send_att_read_by_type_write_properties 
+5d41 20405e64 call le_att_next_handle 
+5d42 20405b6a call le_att_get_handle_info_from_ptr 
+5d43 20405d64 call le_send_att_read_by_type_write_uuid 
+5d44 6fe2049e fetch 1 ,mem_le_cur_uuid_length 
+5d45 1fe0fe05 increase 5 ,pdata 
+5d46 e7e20030 istore 1 ,alarm 
+5d47 6fe2049e fetch 1 ,mem_le_cur_uuid_length 
+5d48 c0085d4d beq 16 ,le_send_att_read_by_type_response_end 
+5d49 196097ff increase -1 ,timeup 
+5d4a 2022dd4d branch le_send_att_read_by_type_response_end ,zero 
+
+le_send_att_read_by_type_response_next_handle:
+5d4b 20405e64 call le_att_next_handle 
+5d4c 20205d31 branch le_send_att_read_by_type_response_loop 
+
+le_send_att_read_by_type_response_end:
+5d4d 20345e56 branch le_send_att_error_response_notfound ,user 
+5d4e 20205e85 branch le_send_auto_len_by_mem 
+
+le_send_att_read_by_type_res_found_next:
+5d4f 20405e77 call le_store_att_record 
+5d50 20405e64 call le_att_next_handle 
+5d51 20405b6a call le_att_get_handle_info_from_ptr 
+5d52 6fe2049e fetch 1 ,mem_le_cur_uuid_length 
+5d53 c0085d4d beq 16 ,le_send_att_read_by_type_response_end 
+5d54 20407c77 call get_contw 
+5d55 6fe40a9e fetch 2 ,mem_temp 
+5d56 1fe0ffff increase -1 ,pdata 
+5d57 e7e40005 istore 2 ,contw 
+5d58 20405e81 call le_write_att_record_common 
+5d59 20405d64 call le_send_att_read_by_type_write_uuid 
+5d5a 196097ff increase -1 ,timeup 
+5d5b 2022dd4d branch le_send_att_read_by_type_response_end ,zero 
+5d5c 20205d4b branch le_send_att_read_by_type_response_next_handle 
+
+le_send_att_read_by_type_write_properties:
+5d5d 6fe40a9e fetch 2 ,mem_temp 
+5d5e e7e40005 istore 2 ,contw 
+5d5f 6fe204af fetch 1 ,mem_le_curr_att_len 
+5d60 1fe27200 copy pdata ,loopcnt 
+5d61 20407c7a call get_contr 
+5d62 20407ccf call memcpy_fast 
+5d63 20207c7d branch store_contw 
+
+le_send_att_read_by_type_write_uuid:
+5d64 20407c77 call get_contw 
+5d65 6fe40a9e fetch 2 ,mem_temp 
+5d66 e7e40005 istore 2 ,contw 
+5d67 20407c7d call store_contw 
+5d68 6fe2049e fetch 1 ,mem_le_cur_uuid_length 
+5d69 1fe27200 copy pdata ,loopcnt 
+5d6a 20407c77 call get_contw 
+5d6b 20407c7a call get_contr 
+5d6c 9f260c00 isub loopcnt ,contr 
+5d6d 18c08dff increase -1 ,contr 
+5d6e 20407ccf call memcpy_fast 
+5d6f 20207c7d branch store_contw 
+
+le_send_att_read_by_type_res_not_characteristic:
+5d70 6844442c fetcht 2 ,mem_le_search_handle_start 
+5d71 60440a9e storet 2 ,mem_temp 
+
+le_send_att_read_by_type_res_not_char_loop:
+5d72 20405e68 call le_att_check_handle_end 
+5d73 24215e56 nbranch le_send_att_error_response_notfound ,positive 
+5d74 20405b6a call le_att_get_handle_info_from_ptr 
+5d75 c000de56 beq 1 ,le_send_att_error_response_notfound 
+5d76 20405e74 call le_att_same_uuid 
+5d77 2422dd86 nbranch le_send_att_read_by_type_res_not_char_next ,zero 
+
+le_send_att_read_by_type_res_not_char_common:
+5d78 da200014 arg 20 ,rega 
+5d79 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5d7a 58000009 setarg attop_read_by_type_response 
+5d7b e7e20005 istore 1 ,contw 
+5d7c 6fe204af fetch 1 ,mem_le_curr_att_len 
+5d7d 1fe27200 copy pdata ,loopcnt 
+5d7e 1fe0fe02 increase 2 ,pdata 
+5d7f e7e20005 istore 1 ,contw 
+5d80 6fe40a9e fetch 2 ,mem_temp 
+5d81 e7e40005 istore 2 ,contw 
+5d82 20407c7a call get_contr 
+5d83 20407ccf call memcpy_fast 
+5d84 20407c7d call store_contw 
+5d85 20205e85 branch le_send_auto_len_by_mem 
+
+le_send_att_read_by_type_res_not_char_next:
+5d86 20405e64 call le_att_next_handle 
+5d87 20205d72 branch le_send_att_read_by_type_res_not_char_loop 
+
+le_send_att_read_by_type_res_device_name:
+5d88 d8402a00 arg uuid_chrctr_device_name ,temp 
+5d89 20405b5c call le_att_get_short_uuid_ptr 
+5d8a 207a0000 rtn blank 
+5d8b 18c08dfb increase -5 ,contr 
+5d8c efe40006 ifetch 2 ,contr 
+5d8d 67e40a9e store 2 ,mem_temp 
+5d8e da200014 arg 20 ,rega 
+5d8f 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5d90 58000009 setarg attop_read_by_type_response 
+5d91 e7e20005 istore 1 ,contw 
+5d92 6fe24381 fetch 1 ,mem_le_name_len 
+5d93 1fe27200 copy pdata ,loopcnt 
+5d94 1fe0fe02 increase 2 ,pdata 
+5d95 e7e20005 istore 1 ,contw 
+5d96 6fe40a9e fetch 2 ,mem_temp 
+5d97 e7e40005 istore 2 ,contw 
+5d98 d8c04382 arg mem_le_name ,contr 
+5d99 20407ccf call memcpy_fast 
+5d9a 20407c7d call store_contw 
+5d9b 20205e85 branch le_send_auto_len_by_mem 
+
+le_parse_att_read_request:
+5d9c 68440474 fetcht 2 ,mem_le_att_handle 
+5d9d 6fe244bb fetch 1 ,mem_le_configuration 
+5d9e c281ddbd bbit1 bit_ble_read_auth ,le_send_att_read_response_check_auth 
+
+le_send_att_read_response:
+5d9f 20405b4a call le_att_get_handle_ptr 
+5da0 203a5e56 branch le_send_att_error_response_notfound ,blank 
+5da1 18c08dfe increase -2 ,contr 
+5da2 efe40006 ifetch 2 ,contr 
+5da3 d8402a00 arg uuid_chrctr_device_name ,temp 
+5da4 98467c00 isub temp ,null 
+5da5 2022ddb3 branch le_send_device_name ,zero 
+5da6 efe20006 ifetch 1 ,contr 
+5da7 1fe67c16 sub pdata ,22 ,null 
+5da8 20215daa branch le_send_att_read_response_less ,positive 
+5da9 18007e16 force 22 ,pdata 
+
+le_send_att_read_response_less:
+5daa 1fe22600 copy pdata ,regc 
+5dab 20407c80 call store_contr 
+5dac 1a60a201 add regc ,1 ,rega 
+5dad 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5dae 5800000b setarg attop_read_response 
+5daf e7e20005 istore 1 ,contw 
+5db0 1a627200 copy regc ,loopcnt 
+5db1 20407c7a call get_contr 
+5db2 20207cdc branch memcpy 
+
+le_send_device_name:
+5db3 20407c80 call store_contr 
+5db4 6fe24381 fetch 1 ,mem_le_name_len 
+5db5 1fe0a201 add pdata ,1 ,rega 
+5db6 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5db7 5800000b setarg attop_read_response 
+5db8 e7e20005 istore 1 ,contw 
+5db9 6fe24381 fetch 1 ,mem_le_name_len 
+5dba 1fe27200 copy pdata ,loopcnt 
+5dbb d8c04382 arg mem_le_name ,contr 
+5dbc 20207cdc branch memcpy 
+
+le_send_att_read_response_check_auth:
+5dbd 6fe444cc fetch 2 ,mem_le_pairing_handle 
+5dbe 98467c00 isub temp ,null 
+5dbf 2422dd9f nbranch le_send_att_read_response ,zero 
+5dc0 20405e22 call le_check_encrypt_state 
+5dc1 24345d9f nbranch le_send_att_read_response ,user 
+5dc2 70047605 jam att_err_insufficient_authentication ,mem_le_err_code 
+5dc3 20205e57 branch le_send_att_error_response 
+
+le_parse_att_read_blob_request:
+5dc4 efe40006 ifetch 2 ,contr 
+5dc5 67e44430 store 2 ,mem_le_att_offset 
+
+le_send_att_read_blob_response:
+5dc6 da200014 arg 20 ,rega 
+5dc7 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5dc8 5800000d setarg attop_read_blob_response 
+5dc9 e7e20005 istore 1 ,contw 
+5dca 6fe44430 fetch 2 ,mem_le_att_offset 
+5dcb 98002200 iforce rega 
+5dcc 68440474 fetcht 2 ,mem_le_att_handle 
+5dcd 20405b4a call le_att_get_handle_ptr 
+5dce 203a5e56 branch le_send_att_error_response_notfound ,blank 
+5dcf efe20006 ifetch 1 ,contr 
+5dd0 9a267200 isub rega ,loopcnt 
+5dd1 24215e56 nbranch le_send_att_error_response_notfound ,positive 
+5dd2 1f267c16 sub loopcnt ,22 ,null 
+5dd3 20215dd5 branch le_send_att_read_blob_response_less ,positive 
+5dd4 18007216 force 22 ,loopcnt 
+
+le_send_att_read_blob_response_less:
+5dd5 1a227e00 deposit rega 
+5dd6 98c08c00 iadd contr ,contr 
+5dd7 20407ccf call memcpy_fast 
+5dd8 20407c7d call store_contw 
+5dd9 20205e85 branch le_send_auto_len_by_mem 
+
+le_parse_att_read_by_group_type_request:
+5dda 20405e91 call le_get_search_handle_start_end_common 
+5ddb 20405ab3 call le_get_search_att_type 
+5ddc 20205ddd branch le_send_att_read_by_group_type_response 
+
+le_send_att_read_by_group_type_response:
+5ddd d9600002 arg 2 ,timeup 
+5dde 6844442c fetcht 2 ,mem_le_search_handle_start 
+5ddf 60440a9e storet 2 ,mem_temp 
+5de0 20405b36 call le_init_attlist_search 
+5de1 20405b4d call le_att_get_handle_ptr2 
+5de2 18c08dfe increase -2 ,contr 
+5de3 18c27e00 copy contr ,pdata 
+5de4 67e40498 store 2 ,mem_le_cur_attlist_start_ptr 
+
+le_send_att_read_by_group_type_response_loop:
+5de5 20405e68 call le_att_check_handle_end 
+5de6 24215e05 nbranch le_send_att_read_by_group_type_end0 ,positive 
+5de7 68440a9e fetcht 2 ,mem_temp 
+5de8 20405b6a call le_att_get_handle_info_from_ptr 
+5de9 c000de08 beq 1 ,le_send_att_read_by_group_type_end1 
+5dea 20405e6c call le_att_same_type 
+5deb 2422de03 nbranch le_send_att_read_by_group_type_next_handle ,zero 
+5dec 19627e00 copy timeup ,pdata 
+5ded c0005e08 beq 0 ,le_send_att_read_by_group_type_end1 
+5dee 24345df9 nbranch le_send_att_read_by_group_type_store_write_record ,user 
+5def 78547c00 disable user 
+5df0 da200014 arg 20 ,rega 
+5df1 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5df2 58000011 setarg attop_read_by_group_type_response 
+5df3 e7e20005 istore 1 ,contw 
+5df4 6fe204af fetch 1 ,mem_le_curr_att_len 
+5df5 1fe0fe04 increase 4 ,pdata 
+5df6 e7e20005 istore 1 ,contw 
+5df7 20407c7d call store_contw 
+5df8 20205dff branch le_send_att_read_by_group_type_store_record 
+
+le_send_att_read_by_group_type_store_write_record:
+5df9 6fe204af fetch 1 ,mem_le_curr_att_len 
+5dfa c0085e08 beq 16 ,le_send_att_read_by_group_type_end1 
+5dfb 6fe40a9e fetch 2 ,mem_temp 
+5dfc 1fe0ffff increase -1 ,pdata 
+5dfd 67e4049c store 2 ,mem_le_cur_handle_end 
+5dfe 20405e7c call le_write_att_record 
+
+le_send_att_read_by_group_type_store_record:
+5dff 6fe40a9e fetch 2 ,mem_temp 
+5e00 67e4049a store 2 ,mem_le_cur_handle_start 
+5e01 20405e77 call le_store_att_record 
+5e02 196097ff increase -1 ,timeup 
+
+le_send_att_read_by_group_type_next_handle:
+5e03 20405e64 call le_att_next_handle 
+5e04 20205de5 branch le_send_att_read_by_group_type_response_loop 
+
+le_send_att_read_by_group_type_end0:
+5e05 6fe40a9e fetch 2 ,mem_temp 
+5e06 67e4049c store 2 ,mem_le_cur_handle_end 
+5e07 20205e0c branch le_send_att_read_by_group_type_end_common 
+
+le_send_att_read_by_group_type_end1:
+5e08 6fe40a9e fetch 2 ,mem_temp 
+5e09 1fe0ffff increase -1 ,pdata 
+5e0a 67e4049c store 2 ,mem_le_cur_handle_end 
+5e0b 20205e0c branch le_send_att_read_by_group_type_end_common 
+
+le_send_att_read_by_group_type_end_common:
+5e0c 20345e56 branch le_send_att_error_response_notfound ,user 
+5e0d 20405e7c call le_write_att_record 
+5e0e 20205e85 branch le_send_auto_len_by_mem 
+
+le_parse_att_write_request:
+5e0f 18c22200 copy contr ,rega 
+5e10 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5e11 1fe0a5fd add pdata ,-3 ,regb 
+5e12 20405abe call le_writeatt_cb 
+
+le_send_att_write_response_check_auth:
+5e13 6fe244bb fetch 1 ,mem_le_configuration 
+5e14 c3025e1d bbit0 bit_ble_write_auth ,le_send_att_write_response 
+5e15 68440474 fetcht 2 ,mem_le_att_handle 
+5e16 6fe444cc fetch 2 ,mem_le_pairing_handle 
+5e17 98467c00 isub temp ,null 
+5e18 2422de1d nbranch le_send_att_write_response ,zero 
+5e19 20405e22 call le_check_encrypt_state 
+5e1a 24345e1d nbranch le_send_att_write_response ,user 
+5e1b 70047605 jam att_err_insufficient_authentication ,mem_le_err_code 
+5e1c 20205e57 branch le_send_att_error_response 
+
+le_send_att_write_response:
+5e1d 18002201 force 1 ,rega 
+5e1e 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5e1f 58000013 setarg attop_write_response 
+5e20 e7e20005 istore 1 ,contw 
+5e21 20600000 rtn 
+
+le_check_encrypt_state:
+5e22 20407dc1 call disable_user 
+5e23 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5e24 c1000000 rtneq le_pairing_mode_none 
+5e25 6fe24040 fetch 1 ,mem_context 
+5e26 c3820000 rtnbit1 lestate_encryption 
+5e27 20207dbf branch enable_user 
+
+le_parse_att_prepare_write_request:
+5e28 18c0a202 add contr ,2 ,rega 
+5e29 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5e2a 1fe0a5fb add pdata ,-5 ,regb 
+5e2b 20405abe call le_writeatt_cb 
+5e2c 20205e2d branch le_send_att_prepare_write_response 
+
+le_send_att_prepare_write_response:
+5e2d 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5e2e 1fe22200 copy pdata ,rega 
+5e2f 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5e30 58000017 setarg attop_prepare_write_response 
+5e31 e7e20005 istore 1 ,contw 
+5e32 6fe40474 fetch 2 ,mem_le_att_handle 
+5e33 e7e40005 istore 2 ,contw 
+5e34 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5e35 1fe0f3fb add pdata ,-5 ,loopcnt 
+5e36 6fe444df fetch 2 ,mem_le_payload_ptr 
+5e37 1fe08c07 add pdata ,7 ,contr 
+5e38 efe40006 ifetch 2 ,contr 
+5e39 e7e40005 istore 2 ,contw 
+5e3a 20207ccf branch memcpy_fast 
+
+le_parse_att_execute_write_request:
+
+le_send_att_execute_write_response:
+5e3b 18002201 force 1 ,rega 
+5e3c 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5e3d 58000019 setarg attop_execute_write_response 
+5e3e e7e20005 istore 1 ,contw 
+5e3f 20600000 rtn 
+
+le_parse_att_write_command:
+5e40 18c22200 copy contr ,rega 
+5e41 6fe444ce fetch 2 ,mem_le_l2cap_size 
+5e42 1fe0a5fd add pdata ,-3 ,regb 
+5e43 20205abe branch le_writeatt_cb 
+
+le_att_malloc_tx_notify:
+5e44 18422600 copy temp ,regc 
+5e45 1a20a203 increase 3 ,rega 
+5e46 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5e47 1a20a3fd increase -3 ,rega 
+5e48 5800001b setarg attop_handle_value_notification 
+5e49 e7e20005 istore 1 ,contw 
+5e4a 1a620400 copy regc ,temp 
+5e4b e0440005 istoret 2 ,contw 
+5e4c 20600000 rtn 
+
+le_att_malloc_tx_indication:
+5e4d 18422600 copy temp ,regc 
+5e4e 1a20a203 increase 3 ,rega 
+5e4f 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5e50 1a20a3fd increase -3 ,rega 
+5e51 5800001d setarg attop_handle_value_indication 
+5e52 e7e20005 istore 1 ,contw 
+5e53 1a620400 copy regc ,temp 
+5e54 e0440005 istoret 2 ,contw 
+5e55 20600000 rtn 
+
+le_send_att_error_response_notfound:
+5e56 7004760a jam att_err_attribute_not_found ,mem_le_err_code 
+
+le_send_att_error_response:
+5e57 18002205 force 5 ,rega 
+5e58 20405e62 call le_fifo_malloc_tx_l2cap_gatt 
+5e59 58000001 setarg attop_error_response 
+5e5a e7e20005 istore 1 ,contw 
+5e5b 6fe20473 fetch 1 ,mem_le_att_opcode 
+5e5c e7e20005 istore 1 ,contw 
+5e5d 6fe40474 fetch 2 ,mem_le_att_handle 
+5e5e e7e40005 istore 2 ,contw 
+5e5f 6fe20476 fetch 1 ,mem_le_err_code 
+5e60 e7e20005 istore 1 ,contw 
+5e61 20600000 rtn 
+
+le_fifo_malloc_tx_l2cap_gatt:
+5e62 18002404 force le_l2cap_cid_att ,regb 
+5e63 20205c27 branch le_fifo_malloc_tx_l2cap 
+
+le_att_next_handle:
+5e64 68440a9e fetcht 2 ,mem_temp 
+5e65 18408401 increase 1 ,temp 
+5e66 60440a9e storet 2 ,mem_temp 
+5e67 20600000 rtn 
+
+le_att_check_handle_end:
+5e68 68440a9e fetcht 2 ,mem_temp 
+5e69 6fe4442e fetch 2 ,mem_le_search_handle_end 
+5e6a 98467c00 isub temp ,null 
+5e6b 20600000 rtn 
+
+le_att_same_type:
+5e6c 68424430 fetcht 1 ,mem_le_search_att_type_length 
+5e6d da204431 arg mem_le_search_att_type ,rega 
+
+le_att_check_same_common:
+5e6e 6fe2049e fetch 1 ,mem_le_cur_uuid_length 
+5e6f 1fe27200 copy pdata ,loopcnt 
+5e70 98467c00 isub temp ,null 
+5e71 24628000 nrtn zero 
+5e72 da40049f arg mem_le_cur_uuid ,regb 
+5e73 20207d63 branch string_compare 
+
+le_att_same_uuid:
+5e74 68424443 fetcht 1 ,mem_le_search_uuid_length 
+5e75 da204444 arg mem_le_search_uuid ,rega 
+5e76 20205e6e branch le_att_check_same_common 
+
+le_store_att_record:
+5e77 6fe204af fetch 1 ,mem_le_curr_att_len 
+5e78 67e200ff store 1 ,mem_tmp_buffer 
+5e79 1fe27200 copy pdata ,loopcnt 
+5e7a 20407c7a call get_contr 
+5e7b 20207ccf branch memcpy_fast 
+
+le_write_att_record:
+5e7c 20407c77 call get_contw 
+5e7d 6fe4049a fetch 2 ,mem_le_cur_handle_start 
+5e7e e7e40005 istore 2 ,contw 
+5e7f 6fe4049c fetch 2 ,mem_le_cur_handle_end 
+5e80 e7e40005 istore 2 ,contw 
+
+le_write_att_record_common:
+5e81 6fe200ff fetch 1 ,mem_tmp_buffer 
+5e82 1fe27200 copy pdata ,loopcnt 
+5e83 20407ccf call memcpy_fast 
+5e84 20207c7d branch store_contw 
+
+le_send_auto_len_by_mem:
+5e85 20407c77 call get_contw 
+5e86 20405c6a call le_fifo_get_last_att_ptr 
+5e87 18a27e00 copy contw ,pdata 
+5e88 98c62200 isub contr ,rega 
+5e89 20405c6d call le_fifo_get_last_l2cap_ptr 
+5e8a 1a227e00 copy rega ,pdata 
+5e8b e7e40006 istore 2 ,contr 
+5e8c 1a20a204 increase 4 ,rega 
+5e8d 20405c59 call le_fifo_get_last_tx_ptr 
+5e8e 1a227e00 copy rega ,pdata 
+5e8f e7e20006 istore 1 ,contr 
+5e90 20600000 rtn 
+
+le_get_search_handle_start_end_common:
+5e91 1fecfe00 rshift8 pdata ,pdata 
+5e92 67e4442c store 2 ,mem_le_search_handle_start 
+5e93 efe40006 ifetch 2 ,contr 
+5e94 67e4442e store 2 ,mem_le_search_handle_end 
+5e95 20600000 rtn 
+
+le_parse_signaling:
+5e96 efe20006 ifetch 1 ,contr 
+5e97 e8420006 ifetcht 1 ,contr 
+5e98 e8440006 ifetcht 2 ,contr 
+5e99 c009de9b beq l2cap_connection_parameter_update_response ,le_l2cap_parse_conn_parameter_update_rsp 
+5e9a 20600000 rtn 
+
+le_l2cap_parse_conn_parameter_update_rsp:
+5e9b efe40006 ifetch 2 ,contr 
+5e9c 67e444db store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+5e9d 700a9540 jam bt_evt_le_parse_conn_papa_update_rsp ,mem_fifo_temp 
+5e9e 20207bab branch ui_ipc_send_event 
+
+le_l2cap_tx_update_req:
+5e9f da20000c arg 0x0c ,rega 
+5ea0 da600012 arg l2cap_connection_parameter_update_request ,regc 
+5ea1 20405ea7 call le_fifo_malloc_tx_l2cap_signaling 
+5ea2 58000008 setarg 0x08 
+5ea3 e7e40005 istore 2 ,contw 
+5ea4 6ff04468 fetch 8 ,mem_le_interval_min 
+5ea5 e7f00005 istore 8 ,contw 
+5ea6 20600000 rtn 
+
+le_fifo_malloc_tx_l2cap_signaling:
+5ea7 20405eaf call le_l2cap_update_signaling_identifier 
+5ea8 da400005 arg le_l2cap_cid_signal ,regb 
+5ea9 20405c27 call le_fifo_malloc_tx_l2cap 
+5eaa 1a627e00 copy regc ,pdata 
+5eab e7e20005 istore 1 ,contw 
+5eac 6fe244da fetch 1 ,mem_le_signaling_identifier 
+5ead e7e20005 istore 1 ,contw 
+5eae 20600000 rtn 
+
+le_l2cap_update_signaling_identifier:
+5eaf 6fe244da fetch 1 ,mem_le_signaling_identifier 
+5eb0 1fe0fe01 pincrease 1 
+5eb1 67e244da store 1 ,mem_le_signaling_identifier 
+5eb2 c1800000 rtnne 0 
+
+le_l2cap_reset_signaling_identifier:
+5eb3 7044da01 jam 1 ,mem_le_signaling_identifier 
+5eb4 20600000 rtn 
+
+le_pairing_mode_init:
+5eb5 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5eb6 c0005ec4 beq le_pairing_mode_none ,le_set_no_pairing 
+5eb7 c000dec7 beq le_pairing_mode_lagacy_justwork ,le_set_pairing_mode_lagacy_just_work 
+5eb8 c0015ec9 beq le_pairing_mode_lagacy_passkey ,le_set_pairing_mode_lagacy_passkey 
+5eb9 c040debd beq le_pairing_mode_secure_connect_justwork ,le_set_pairing_mode_secure_justwork 
+5eba c0415ebf beq le_pairing_mode_secure_connect_numeric ,le_set_pairing_mode_secure_numeric 
+5ebb c041dec2 beq le_pairing_mode_secure_connect_passkey ,le_set_pairing_mode_secure_passkey 
+5ebc 20600000 rtn 
+
+le_set_pairing_mode_secure_justwork:
+5ebd 7044280d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+5ebe 20205ec5 branch le_set_noinputnooutput 
+
+le_set_pairing_mode_secure_numeric:
+5ebf 7044280d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+5ec0 70442601 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+5ec1 20600000 rtn 
+
+le_set_pairing_mode_secure_passkey:
+5ec2 7044280d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+5ec3 20205eca branch le_set_displayonly 
+
+le_set_no_pairing:
+5ec4 70442800 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+
+le_set_noinputnooutput:
+5ec5 70442603 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+5ec6 20600000 rtn 
+
+le_set_pairing_mode_lagacy_just_work:
+5ec7 70442805 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+5ec8 20205ec5 branch le_set_noinputnooutput 
+
+le_set_pairing_mode_lagacy_passkey:
+5ec9 70442805 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+
+le_set_displayonly:
+5eca 70442600 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+5ecb 20600000 rtn 
+
+le_secure_connection_enable:
+5ecc 6fe24428 fetch 1 ,mem_le_pres_auth 
+5ecd 79207e03 set1 le_auth_secure_connection_pairing_bit ,pdata 
+5ece 67e24428 store 1 ,mem_le_pres_auth 
+5ecf 20600000 rtn 
+
+le_secure_connection_disable:
+5ed0 6fe24428 fetch 1 ,mem_le_pres_auth 
+5ed1 793ffe03 set0 le_auth_secure_connection_pairing_bit ,pdata 
+5ed2 67e24428 store 1 ,mem_le_pres_auth 
+5ed3 20600000 rtn 
+
+le_parse_smp:
+5ed4 efe20006 ifetch 1 ,contr 
+5ed5 c000dee9 beq smp_pairing_request ,le_parse_smp_pairing_request 
+5ed6 c001df10 beq smp_pairing_confirm ,le_parse_smp_pairing_confirm 
+5ed7 c0025f2d beq smp_pairing_random ,le_parse_smp_pairing_random 
+5ed8 c002df3a beq smp_pairing_failed ,le_parse_smp_pairing_failed 
+5ed9 c0035f60 beq smp_encryption_information ,le_parse_smp_encryption_information 
+5eda c003dfa4 beq smp_master_identification ,le_parse_smp_master_identification 
+5edb c0045f8f beq smp_identity_information ,le_parse_smp_identity_information 
+5edc c004dfa0 beq smp_identity_address_information ,le_parse_smp_identity_address_information 
+5edd c0055fa4 beq smp_signing_information ,le_parse_smp_signing_information 
+5ede c005dfa4 beq smp_security_request ,le_parse_smp_security_request 
+5edf c0065fa5 beq smp_pairing_public_key ,le_parse_smp_public_key 
+5ee0 c006dfaa beq smp_pairing_dhkey_check ,le_parse_smp_dhkey_check 
+5ee1 20600000 rtn 
+
+le_send_smp_security_request:
+5ee2 18002202 force 2 ,rega 
+5ee3 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5ee4 5800000b setarg smp_security_request 
+5ee5 e7e20005 istore 1 ,contw 
+5ee6 6fe24428 fetch 1 ,mem_le_pres_auth 
+5ee7 e7e20005 istore 1 ,contw 
+5ee8 20600000 rtn 
+
+le_parse_smp_pairing_request:
+5ee9 67e2441e store 1 ,mem_le_preq 
+5eea efec0006 ifetch 6 ,contr 
+5eeb e7ec0005 istore 6 ,contw 
+5eec 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5eed c0005f3f beq le_pairing_mode_none ,le_smp_pairing_fail_reason_not_support_pairing 
+5eee 20405f0b call le_send_smp_pairing_response 
+5eef 20405f06 call le_check_master_support_secure_connect 
+5ef0 70449603 jam flag_le_pairing_rcv_pairing_req ,mem_le_pairing_state 
+5ef1 6fe2441f fetch 1 ,mem_le_preq_iocap 
+5ef2 c0005ef8 beq flag_iocap_displayonly ,le_set_tk_0 
+5ef3 c000def8 beq flag_iocap_displayyesno ,le_set_tk_0 
+5ef4 c001def8 beq flag_iocap_noinputnooutput ,le_set_tk_0 
+5ef5 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5ef6 c0015efb beq le_pairing_mode_lagacy_passkey ,le_parse_smp_pairing_req_passkey 
+5ef7 c1418000 rtneq le_pairing_mode_secure_connect_passkey 
+
+le_set_tk_0:
+5ef8 dfe00000 arg 0 ,pdata 
+5ef9 67e84499 store 4 ,mem_le_tk 
+5efa 20600000 rtn 
+
+le_parse_smp_pairing_req_passkey:
+5efb 6fe244bb fetch 1 ,mem_le_configuration 
+5efc c2805f04 bbit1 bit_ble_passkey_fixed_key ,le_parse_smp_pairing_req_fixed_passkey 
+
+le_genernate_tk:
+5efd da204499 arg mem_le_tk ,rega 
+5efe 1a220a00 copy rega ,contw 
+5eff df200003 arg 3 ,loopcnt 
+5f00 204066ef call generate_random_loop 
+5f01 6fe4449b fetch 2 ,mem_le_tk + 2 
+5f02 1fe17e07 and_into 0x7 ,pdata 
+5f03 67e4449b store 2 ,mem_le_tk + 2 
+
+le_parse_smp_pairing_req_fixed_passkey:
+5f04 700a9534 jam bt_evt_le_tk_generate ,mem_fifo_temp 
+5f05 20207bab branch ui_ipc_send_event 
+
+le_check_master_support_secure_connect:
+5f06 6fe24421 fetch 1 ,mem_le_preq_auth 
+5f07 c3818000 rtnbit1 le_auth_secure_connection_pairing_bit 
+5f08 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5f09 c4038000 rtnbit0 le_pairing_mode_secure_connect_bit 
+5f0a 20204d7d branch app_ble_disconnect 
+
+le_send_smp_pairing_response:
+5f0b 18002207 force 7 ,rega 
+5f0c 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f0d 6fee4425 fetch 7 ,mem_le_pres 
+5f0e e7ee0005 istore 7 ,contw 
+5f0f 20600000 rtn 
+
+le_parse_smp_pairing_confirm:
+5f10 18c22200 copy contr ,rega 
+5f11 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5f12 c041df17 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_confirm_secure_passkey 
+5f13 1a220c00 copy rega ,contr 
+5f14 d8a043fc arg mem_le_rconfirm ,contw 
+5f15 20407c9a call memcpy16 
+5f16 20205f1d branch le_send_smp_pairing_confirm 
+
+le_parse_smp_pairing_confirm_secure_passkey:
+5f17 1a220c00 copy rega ,contr 
+5f18 d8a043fc arg mem_le_rconfirm ,contw 
+5f19 20407c9a call memcpy16 
+5f1a 70449102 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5f1b 70449308 jam le_sc_stat_passkey_wait_confirm ,mem_le_secure_connect_state 
+5f1c 20600000 rtn 
+
+le_send_smp_pairing_confirm:
+5f1d 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5f1e c283df25 bbit1 le_pairing_mode_secure_connect_bit ,le_send_smp_pairing_confirm_sc 
+5f1f 20407252 call generate_confirm 
+5f20 18002211 force 17 ,rega 
+5f21 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f22 58000003 setarg smp_pairing_confirm 
+5f23 e7e20005 istore 1 ,contw 
+5f24 2020734c branch store_aes_result 
+
+le_send_smp_pairing_confirm_sc:
+5f25 d8a0440c arg mem_le_srand ,contw 
+5f26 204066ee call generate_random 
+5f27 20407084 call function_f4_cb 
+5f28 18002211 force 17 ,rega 
+5f29 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f2a 58000003 setarg smp_pairing_confirm 
+5f2b e7e20005 istore 1 ,contw 
+5f2c 202070c0 branch load_inverse_result 
+
+le_parse_smp_pairing_random:
+5f2d 18c22200 copy contr ,rega 
+5f2e 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5f2f c283df41 bbit1 le_pairing_mode_secure_connect_bit ,le_parse_smp_pairing_random_sc 
+5f30 1a220c00 copy rega ,contr 
+5f31 2040724a call authenticate_rconfirm 
+5f32 2022df55 branch le_parse_smp_pairing_random_success ,zero 
+
+le_send_pairing_confirm_value_failed:
+5f33 70047704 jam pairing_failed_confirm_value_failed ,mem_le_ll_pairing_fail_reason 
+
+le_send_pairing_failed:
+5f34 18002202 force 2 ,rega 
+5f35 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f36 58000005 setarg smp_pairing_failed 
+5f37 e7e20005 istore 1 ,contw 
+5f38 6fe20477 fetch 1 ,mem_le_ll_pairing_fail_reason 
+5f39 e7e20005 istore 1 ,contw 
+
+le_parse_smp_pairing_failed:
+5f3a 18000e0a force smp_pairing_timer ,queue 
+5f3b 20407ce2 call timer_stop 
+5f3c 70449600 jam flag_le_pairing_null ,mem_le_pairing_state 
+5f3d 700a9530 jam bt_evt_le_pairing_fail ,mem_fifo_temp 
+5f3e 20207bab branch ui_ipc_send_event 
+
+le_smp_pairing_fail_reason_not_support_pairing:
+5f3f 70047705 jam pairing_failed_pairing_not_supported ,mem_le_ll_pairing_fail_reason 
+5f40 20205f34 branch le_send_pairing_failed 
+
+le_parse_smp_pairing_random_sc:
+5f41 d8a0042b arg mem_le_mrand ,contw 
+5f42 1a220c00 copy rega ,contr 
+5f43 20407c9a call memcpy16 
+5f44 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5f45 c041df4c beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_random_sc_passkey 
+5f46 2040700e call function_g2 
+5f47 20405f5a call le_send_smp_pairing_random 
+5f48 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5f49 c1c10000 rtnne le_pairing_mode_secure_connect_numeric 
+5f4a 700a953b jam bt_evt_le_gkey_generate ,mem_fifo_temp 
+5f4b 20207bab branch ui_ipc_send_event 
+
+le_parse_smp_pairing_random_sc_passkey:
+5f4c 20407079 call function_f4_ca 
+5f4d d8a00aee arg mem_aes_cmac_temp ,contw 
+5f4e 204070c0 call load_inverse_result 
+5f4f da200aee arg mem_aes_cmac_temp ,rega 
+5f50 da4043fc arg mem_le_rconfirm ,regb 
+5f51 df200010 arg 16 ,loopcnt 
+5f52 20407d63 call string_compare 
+5f53 2422df33 nbranch le_send_pairing_confirm_value_failed ,zero 
+5f54 20205f5a branch le_send_smp_pairing_random 
+
+le_parse_smp_pairing_random_success:
+5f55 20407246 call generate_stk 
+5f56 700a9531 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+5f57 20407bab call ui_ipc_send_event 
+5f58 7043fb01 jam 1 ,mem_ltk_exists 
+5f59 70449605 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+
+le_send_smp_pairing_random:
+5f5a 18002211 force 17 ,rega 
+5f5b 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f5c 58000004 setarg smp_pairing_random 
+5f5d e7e20005 istore 1 ,contw 
+5f5e d8c0440c arg mem_le_srand ,contr 
+5f5f 20207c9a branch memcpy16 
+
+le_parse_smp_encryption_information:
+5f60 d8a0041b arg mem_le_peer_ltk ,contw 
+5f61 20207c9a branch memcpy16 
+
+le_send_smp_encryption_information:
+5f62 18002211 force 17 ,rega 
+5f63 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f64 58000006 setarg smp_encryption_information 
+5f65 e7e20005 istore 1 ,contw 
+5f66 6fe244bb fetch 1 ,mem_le_configuration 
+5f67 c280df6a bbit1 bit_ble_pairing_fixed_ltk ,le_send_fixed_ltk 
+5f68 d8c043eb arg mem_le_ltk ,contr 
+5f69 20207c9a branch memcpy16 
+
+le_send_fixed_ltk:
+5f6a d8c044bc arg mem_le_fixed_ltk ,contr 
+5f6b 20207c9a branch memcpy16 
+
+le_send_smp_master_identification:
+5f6c d8a0449d arg mem_le_ediv ,contw 
+5f6d 1800720a force 10 ,loopcnt 
+5f6e 204066ef call generate_random_loop 
+5f6f 1800220b force 11 ,rega 
+5f70 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f71 58000007 setarg smp_master_identification 
+5f72 e7e20005 istore 1 ,contw 
+5f73 6fe4449d fetch 2 ,mem_le_ediv 
+5f74 e7e40005 istore 2 ,contw 
+5f75 6ff0449f fetch 8 ,mem_le_rand 
+5f76 e7f00005 istore 8 ,contw 
+5f77 20600000 rtn 
+
+le_send_smp_identity_information:
+5f78 18002211 force 17 ,rega 
+5f79 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f7a 58000008 setarg smp_identity_information 
+5f7b e7e20005 istore 1 ,contw 
+5f7c 58000000 setarg 0 
+5f7d e7f00005 istore 8 ,contw 
+5f7e e7f00005 istore 8 ,contw 
+5f7f 20600000 rtn 
+
+le_send_smp_identity_address_information:
+5f80 18002208 force 8 ,rega 
+5f81 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5f82 58000009 setarg smp_identity_address_information 
+5f83 e7e20005 istore 1 ,contw 
+5f84 6fe24467 fetch 1 ,mem_le_conn_own_addr_type 
+5f85 e7e20005 istore 1 ,contw 
+5f86 6fec4472 fetch 6 ,mem_le_lap 
+5f87 e7ec0005 istore 6 ,contw 
+5f88 20600000 rtn 
+
+le_send_pairing_fail_unspecified_reason:
+5f89 70047708 jam pairing_failed_unspecified_reason ,mem_le_ll_pairing_fail_reason 
+5f8a 20205f34 branch le_send_pairing_failed 
+
+le_check_init_key_distribution:
+5f8b 6fe2442a fetch 1 ,mem_le_pres_init_key_distribution 
+5f8c 6842442a fetcht 1 ,mem_le_pres_init_key_distribution 
+5f8d 98417e00 iand temp ,pdata 
+5f8e 20600000 rtn 
+
+le_parse_smp_identity_information:
+5f8f d8a044a7 arg mem_le_irk ,contw 
+5f90 20407c9a call memcpy16 
+5f91 20405f8b call le_check_init_key_distribution 
+5f92 2fec0001 isolate0 le_initator_irk_bit ,pdata 
+5f93 2020df89 branch le_send_pairing_fail_unspecified_reason ,true 
+5f94 6fe24092 fetch 1 ,mem_device_option 
+5f95 c1850000 rtnne dvc_op_module 
+5f96 20405f99 call le_check_master_addr_type 
+5f97 24740000 nrtn user 
+5f98 20204d8b branch app_ble_store_reconn_info 
+
+le_check_master_addr_type:
+5f99 20407dc1 call disable_user 
+5f9a 6fe24460 fetch 1 ,mem_le_conn_peer_addr_type 
+5f9b c1000000 rtneq master_public_addr 
+5f9c 6fe20450 fetch 1 ,mem_le_plap + 5 
+5f9d 2fe180c0 compare 0xc0 ,pdata ,0xc0 
+5f9e 20608000 rtn true 
+5f9f 20207dbf branch enable_user 
+
+le_parse_smp_identity_address_information:
+5fa0 20405f8b call le_check_init_key_distribution 
+5fa1 2fec0001 isolate0 le_initator_irk_bit ,pdata 
+5fa2 2020df89 branch le_send_pairing_fail_unspecified_reason ,true 
+5fa3 20600000 rtn 
+
+le_parse_smp_master_identification:
+
+le_parse_smp_signing_information:
+
+le_parse_smp_security_request:
+5fa4 20600000 rtn 
+
+le_parse_smp_public_key:
+5fa5 d8a009ba arg mem_le_pubkey_remote_x_256 ,contw 
+5fa6 20407c8e call memcpy64 
+5fa7 70449102 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5fa8 70449301 jam le_sc_stat_receive_public_key ,mem_le_secure_connect_state 
+5fa9 20600000 rtn 
+
+le_parse_smp_dhkey_check:
+5faa d8a00a6a arg mem_sp_confirm_remote ,contw 
+5fab 20407c9a call memcpy16 
+5fac 70449306 jam le_sc_stat_receive_dhkey ,mem_le_secure_connect_state 
+5fad 70449102 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5fae 20600000 rtn 
+
+le_send_smp_pairing_public_key:
+5faf 18002241 force 65 ,rega 
+5fb0 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5fb1 5800000c setarg smp_pairing_public_key 
+5fb2 e7e20005 istore 1 ,contw 
+5fb3 d8c045a4 arg mem_le_pubkey_local_x_256 ,contr 
+5fb4 20207c8e branch memcpy64 
+
+le_send_smp_pairing_dhkey_check:
+5fb5 20407025 call function_f6_eb 
+5fb6 18002211 force 17 ,rega 
+5fb7 20406042 call le_fifo_malloc_tx_l2cap_smp 
+5fb8 5800000d setarg smp_pairing_dhkey_check 
+5fb9 e7e20005 istore 1 ,contw 
+5fba 202070c0 branch load_inverse_result 
+
+le_check_paring_time:
+5fbb 6fe24496 fetch 1 ,mem_le_pairing_state 
+5fbc c17f8000 rtneq flag_le_pairing_end 
+5fbd d8400003 arg flag_le_pairing_rcv_pairing_req ,temp 
+5fbe 98467c00 isub temp ,null 
+5fbf 24610000 nrtn positive 
+5fc0 d8e0000a arg smp_pairing_timer ,queue 
+5fc1 20407cf1 call timer_check 
+5fc2 247a0000 nrtn blank 
+5fc3 20205f89 branch le_send_pairing_fail_unspecified_reason 
+
+le_pairing_sm:
+5fc4 4719c026 bpatchx patch26_3 ,mem_patch26 
+5fc5 6fe24496 fetch 1 ,mem_le_pairing_state 
+5fc6 c0005fcf beq flag_le_pairing_null ,le_pairing_sm_null 
+5fc7 c000dfd5 beq flag_le_pairing_start ,le_pairing_sm_start 
+5fc8 c0015fcf beq flag_le_pairing_send_recurity_req ,le_pairing_sm_send_sec_req 
+5fc9 c001dfd7 beq flag_le_pairing_rcv_pairing_req ,le_pairing_sm_rcv_pairing_req 
+5fca c002dfdb beq flag_le_pairing_after_auth ,le_pairing_sm_after_auth 
+5fcb c003dfe7 beq flag_le_paring_send_enc_information ,le_pairng_sm_send_enc_information 
+5fcc c0045fe9 beq flag_le_paring_send_master_identification ,le_pairng_sm_send_master_indentification 
+5fcd c004dff0 beq flag_le_paring_send_indentity_information ,le_pairng_sm_send_indentity_information 
+5fce 20600000 rtn 
+
+le_pairing_sm_null:
+
+le_pairing_sm_send_sec_req:
+5fcf 6fe24497 fetch 1 ,mem_le_enc_state 
+5fd0 c1820000 rtnne flag_le_send_start_enc_rsp 
+5fd1 704497ff jam flag_le_enc_end ,mem_le_enc_state 
+5fd2 704496ff jam flag_le_pairing_end ,mem_le_pairing_state 
+5fd3 700a953f jam bt_evt_le_reconnect_complete ,mem_fifo_temp 
+5fd4 20207bab branch ui_ipc_send_event 
+
+le_pairing_sm_start:
+5fd5 70449602 jam flag_le_pairing_send_recurity_req ,mem_le_pairing_state 
+5fd6 20205ee2 branch le_send_smp_security_request 
+
+le_pairing_sm_rcv_pairing_req:
+5fd7 70449604 jam flag_le_pairing_auth ,mem_le_pairing_state 
+5fd8 58017700 setarg timer_smp_pairing_timeout 
+5fd9 d8e0000a arg smp_pairing_timer ,queue 
+5fda 20207ce3 branch timer_init 
+
+le_pairing_sm_after_auth:
+5fdb 6fe24497 fetch 1 ,mem_le_enc_state 
+5fdc c0025fde beq flag_le_send_start_enc_rsp ,le_pairing_sm_after_auth_start_enc 
+5fdd 20600000 rtn 
+
+le_pairing_sm_after_auth_start_enc:
+5fde 70449607 jam flag_le_paring_send_enc_information ,mem_le_pairing_state 
+5fdf 700a9529 jam bt_evt_le_enc_info ,mem_fifo_temp 
+5fe0 20407bab call ui_ipc_send_event 
+5fe1 20405f62 call le_send_smp_encryption_information 
+5fe2 6fe24092 fetch 1 ,mem_device_option 
+5fe3 c1850000 rtnne dvc_op_module 
+5fe4 20405f99 call le_check_master_addr_type 
+5fe5 20740000 rtn user 
+5fe6 20204d8b branch app_ble_store_reconn_info 
+
+le_pairng_sm_send_enc_information:
+5fe7 70449608 jam flag_le_paring_send_master_identification ,mem_le_pairing_state 
+5fe8 20205f6c branch le_send_smp_master_identification 
+
+le_pairng_sm_send_master_indentification:
+5fe9 6fe24424 fetch 1 ,mem_le_preq_resp_key_distribution 
+5fea 6842442b fetcht 1 ,mem_le_pres_resp_key_distribution 
+5feb 98417e00 iand temp ,pdata 
+5fec 2fec0001 isolate0 le_initator_irk_bit ,pdata 
+5fed 2020dff2 branch le_parse_start_enc_rsp_after_auth_end ,true 
+5fee 70449609 jam flag_le_paring_send_indentity_information ,mem_le_pairing_state 
+5fef 20205f78 branch le_send_smp_identity_information 
+
+le_pairng_sm_send_indentity_information:
+5ff0 20405f80 call le_send_smp_identity_address_information 
+5ff1 20205ff2 branch le_parse_start_enc_rsp_after_auth_end 
+
+le_parse_start_enc_rsp_after_auth_end:
+5ff2 18000e0a force smp_pairing_timer ,queue 
+5ff3 20407ce2 call timer_stop 
+5ff4 704497ff jam flag_le_enc_end ,mem_le_enc_state 
+5ff5 704496ff jam flag_le_pairing_end ,mem_le_pairing_state 
+5ff6 700a953e jam bt_evt_le_pairing_complete ,mem_fifo_temp 
+5ff7 20207bab branch ui_ipc_send_event 
+
+le_secure_connect_sm:
+5ff8 471a4026 bpatchx patch26_4 ,mem_patch26 
+5ff9 6fe24498 fetch 1 ,mem_le_pairing_mode 
+5ffa c4038000 rtnbit0 le_pairing_mode_secure_connect_bit 
+5ffb 6fe24491 fetch 1 ,mem_le_secure_connect_flag 
+5ffc c1810000 rtnne le_sp_flag_commit_256 
+5ffd 70449100 jam sp_flag_standby ,mem_le_secure_connect_flag 
+5ffe 6fe24493 fetch 1 ,mem_le_secure_connect_state 
+5fff c000e038 beq le_sc_stat_receive_public_key ,le_sc_sm_receive_public_key 
+6000 c001603f beq le_sc_stat_wait_send_public_key ,le_sc_sm_wait_send_public_key 
+6001 c001e032 beq le_sc_stat_send_public_key ,le_sc_sm_send_public_key 
+6002 c0036019 beq le_sc_stat_receive_dhkey ,le_sc_sm_receive_dhkey 
+6003 c003e010 beq le_sc_stat_wait_confirm_gkey ,le_sc_sm_wait_confirm_gkey 
+6004 c0046006 beq le_sc_stat_passkey_wait_confirm ,le_sc_sm_passkey_wait_confirm 
+6005 20600000 rtn 
+
+le_sc_sm_passkey_wait_confirm:
+6006 6fe24635 fetch 1 ,mem_authentication_passkey_times 
+6007 1fe20e00 copy pdata ,queue 
+6008 1fe0fe01 increase 1 ,pdata 
+6009 67e24635 store 1 ,mem_authentication_passkey_times 
+600a 6fe84499 fetch 4 ,mem_le_tk 
+600b afefffff qisolate1 pdata 
+600c 58000080 setarg 0x80 
+600d 7920fe00 setflag true ,0 ,pdata 
+600e 67e24636 store 1 ,mem_passkey_1bit 
+600f 20206035 branch le_sc_sm_ready_send_pairing_confirm 
+
+le_sc_sm_wait_confirm_gkey:
+6010 6fe24494 fetch 1 ,mem_le_sc_confirm_gkey_flag 
+6011 70449400 jam flag_le_sc_confrim_null ,mem_le_sc_confirm_gkey_flag 
+6012 c000e015 beq flag_le_sc_confrim_gkey_ok ,le_sc_confirm_gkey_ok 
+6013 70449102 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+6014 20600000 rtn 
+
+le_sc_confirm_gkey_ok:
+6015 700a9531 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+6016 20407bab call ui_ipc_send_event 
+6017 70449605 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+6018 20205fb5 branch le_send_smp_pairing_dhkey_check 
+
+le_sc_sm_receive_dhkey:
+6019 6fe209b5 fetch 1 ,mem_sp_dhkey_invalid 
+601a c001e01d beq sp_key_valid_256 ,le_dhkey_ready 
+601b 70449102 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+601c 20600000 rtn 
+
+le_dhkey_ready:
+601d 2040704c call function_f5 
+601e 6fe24498 fetch 1 ,mem_le_pairing_mode 
+601f c041e021 beq le_pairing_mode_secure_connect_passkey ,le_dhkey_ready_common 
+6020 20405ef8 call le_set_tk_0 
+
+le_dhkey_ready_common:
+6021 20407039 call function_f6_ea 
+6022 da200aee arg mem_aes_cmac_temp ,rega 
+6023 da400a6a arg mem_sp_confirm_remote ,regb 
+6024 df200010 arg 16 ,loopcnt 
+6025 20407d63 call string_compare 
+6026 2022e029 branch le_dhkey_check_ok ,zero 
+
+le_dhkey_check_fail:
+6027 7004770b jam pairing_failed_dhkey_check_failed ,mem_le_ll_pairing_fail_reason 
+6028 20205f34 branch le_send_pairing_failed 
+
+le_dhkey_check_ok:
+6029 2040744a call sp_calc_check_publickey_256 
+602a 2422e027 nbranch le_dhkey_check_fail ,zero 
+602b 7043fb01 jam 1 ,mem_ltk_exists 
+602c 6fe24498 fetch 1 ,mem_le_pairing_mode 
+602d c040e015 beq le_pairing_mode_secure_connect_justwork ,le_sc_confirm_gkey_ok 
+602e c041e015 beq le_pairing_mode_secure_connect_passkey ,le_sc_confirm_gkey_ok 
+602f 70449102 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+6030 70449307 jam le_sc_stat_wait_confirm_gkey ,mem_le_secure_connect_state 
+6031 20600000 rtn 
+
+le_sc_sm_send_public_key:
+6032 6fe24498 fetch 1 ,mem_le_pairing_mode 
+6033 c041e036 beq le_pairing_mode_secure_connect_passkey ,le_sc_sm_send_public_key_passkey 
+6034 70463600 jam 0 ,mem_passkey_1bit 
+
+le_sc_sm_ready_send_pairing_confirm:
+6035 20205f1d branch le_send_smp_pairing_confirm 
+
+le_sc_sm_send_public_key_passkey:
+6036 70463500 jam 0 ,mem_authentication_passkey_times 
+6037 20205efb branch le_parse_smp_pairing_req_passkey 
+
+le_sc_sm_receive_public_key:
+6038 70449102 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+6039 6fe24495 fetch 1 ,mem_le_sc_local_key_invalid 
+603a c001e03c beq sp_key_valid_256 ,le_public_key_ready 
+603b 20600000 rtn 
+
+le_public_key_ready:
+603c 70449302 jam le_sc_stat_wait_send_public_key ,mem_le_secure_connect_state 
+603d 7009b500 jam sp_key_invalid ,mem_sp_dhkey_invalid 
+603e 2020794e branch sp_dhkey_calc_256 
+
+le_sc_sm_wait_send_public_key:
+603f 70449102 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+6040 70449303 jam le_sc_stat_send_public_key ,mem_le_secure_connect_state 
+6041 20205faf branch le_send_smp_pairing_public_key 
+
+le_fifo_malloc_tx_l2cap_smp:
+6042 18002406 force le_l2cap_cid_smp ,regb 
+6043 20205c27 branch le_fifo_malloc_tx_l2cap 
+
+le_parse_ll:
+6044 471ac026 bpatchx patch26_5 ,mem_patch26 
+6045 6fe202d7 fetch 1 ,mem_le_rxbuf + 2 
+6046 c000605c beq ll_connection_update_req ,le_parse_connection_update_req 
+6047 c000e064 beq ll_channel_map_req ,le_parse_channel_map_req 
+6048 c001606f beq ll_terminate_ind ,le_parse_terminate_ind 
+6049 c001e08b beq ll_enc_req ,le_parse_enc_req 
+604a c00260c2 beq ll_enc_rsp ,le_parse_enc_rsp 
+604b c002e0c7 beq ll_start_enc_req ,le_parse_start_enc_req 
+604c c00360cb beq ll_start_enc_rsp ,le_parse_start_enc_rsp 
+604d c003e0d6 beq ll_unknown_rsp ,le_parse_unknown_rsp 
+604e c004607a beq ll_feature_req ,le_parse_feature_req 
+604f c004e0d6 beq ll_feature_rsp ,le_parse_feature_rsp 
+6050 c00560d0 beq ll_pause_enc_req ,le_parse_pause_enc_req 
+6051 c005e0d6 beq ll_pause_enc_rsp ,le_parse_pause_enc_rsp 
+6052 c0066080 beq ll_version_ind ,le_parse_version_ind 
+6053 c006e0d6 beq ll_reject_ind ,le_parse_reject_ind 
+6054 c0096087 beq ll_ping_req ,le_parse_ping_req 
+6055 c009e0d6 beq ll_ping_rsp ,le_parse_ping_rsp 
+6056 da200002 arg 2 ,rega 
+6057 da400007 arg ll_unknown_rsp ,regb 
+6058 20405c22 call le_fifo_malloc_tx_ll 
+6059 6fe202d7 fetch 1 ,mem_le_rxbuf + 2 
+605a e7e20005 istore 1 ,contw 
+605b 20600000 rtn 
+
+le_parse_connection_update_req:
+605c eff20006 ifetch 9 ,contr 
+605d 67f243a5 store 9 ,mem_le_new_param 
+605e efe40006 ifetch 2 ,contr 
+605f 67e4045b store 2 ,mem_le_instant 
+6060 6fe2043b fetch 1 ,mem_le_state 
+6061 79207e05 set1 lestate_update_param ,pdata 
+6062 67e2043b store 1 ,mem_le_state 
+6063 20600000 rtn 
+
+le_parse_channel_map_req:
+6064 efea0006 ifetch 5 ,contr 
+6065 67ea43a0 store 5 ,mem_le_new_map 
+6066 efe40006 ifetch 2 ,contr 
+6067 67e4045b store 2 ,mem_le_instant 
+6068 68440455 fetcht 2 ,mem_le_event_count 
+6069 98467c00 isub temp ,null 
+606a 2421606f nbranch le_parse_terminate_ind ,positive 
+606b 6fe2043b fetch 1 ,mem_le_state 
+606c 79207e06 set1 lestate_update_map ,pdata 
+606d 67e2043b store 1 ,mem_le_state 
+606e 20600000 rtn 
+
+le_parse_terminate_ind:
+606f 58000014 setarg 20 
+6070 67e40469 store 2 ,mem_le_superto 
+6071 67e4448c store 2 ,mem_le_init_superto 
+6072 20600000 rtn 
+
+le_send_terminate_ind_user_terminated:
+6073 da600013 arg error_remote_user_terminated_connection ,regc 
+
+le_send_terminate_ind:
+6074 da200002 arg 2 ,rega 
+6075 da400002 arg ll_terminate_ind ,regb 
+6076 20405c22 call le_fifo_malloc_tx_ll 
+6077 1a627e00 copy regc ,pdata 
+6078 e7e20005 istore 1 ,contw 
+6079 20600000 rtn 
+
+le_parse_feature_req:
+
+le_send_feature_rsp:
+607a da200009 arg 9 ,rega 
+607b da400009 arg ll_feature_rsp ,regb 
+607c 20405c22 call le_fifo_malloc_tx_ll 
+607d 58000001 setarg param_le_features 
+607e e7f00005 istore 8 ,contw 
+607f 20600000 rtn 
+
+le_parse_version_ind:
+6080 20748000 rtn master 
+
+le_send_version_ind:
+6081 da200006 arg 6 ,rega 
+6082 da40000c arg ll_version_ind ,regb 
+6083 20405c22 call le_fifo_malloc_tx_ll 
+6084 6fea44e2 fetch 5 ,mem_lmp_version 
+6085 e7ea0005 istore 5 ,contw 
+6086 20600000 rtn 
+
+le_parse_ping_req:
+6087 da400013 arg ll_ping_rsp ,regb 
+6088 20206089 branch le_send_ll_one_lenth 
+
+le_send_ll_one_lenth:
+6089 da200001 arg 1 ,rega 
+608a 20205c22 branch le_fifo_malloc_tx_ll 
+
+le_parse_enc_req:
+608b eff00006 ifetch 8 ,contr 
+608c 67f0449f store 8 ,mem_le_rand 
+608d efe40006 ifetch 2 ,contr 
+608e 67e4449d store 2 ,mem_le_ediv 
+608f eff00006 ifetch 8 ,contr 
+6090 67f0447c store 8 ,mem_le_skdm 
+6091 efe80006 ifetch 4 ,contr 
+6092 67e843e3 store 4 ,mem_le_ivm 
+6093 204060b0 call le_send_enc_rsp 
+6094 471b4026 bpatchx patch26_6 ,mem_patch26 
+6095 6fe24496 fetch 1 ,mem_le_pairing_state 
+6096 c002e09d beq flag_le_pairing_after_auth ,le_parse_enc_req_after_auth 
+6097 6fe244bb fetch 1 ,mem_le_configuration 
+6098 c280e0a0 bbit1 bit_ble_pairing_fixed_ltk ,le_parse_enc_req_fixed_ltk 
+6099 6fe24216 fetch 1 ,mem_nv_data_number 
+609a 245a68b0 ncall load_device_list_mode_4 ,blank 
+609b 6fe243fb fetch 1 ,mem_ltk_exists 
+609c c00060a5 beq 0 ,le_ltk_lost 
+
+le_parse_enc_req_after_auth:
+609d 70449701 jam flag_le_rcv_enc_start ,mem_le_enc_state 
+609e 204060be call le_send_start_enc_req 
+609f 20207258 branch generate_sk 
+
+le_parse_enc_req_fixed_ltk:
+60a0 7043fb01 jam 1 ,mem_ltk_exists 
+60a1 d8c044bc arg mem_le_fixed_ltk ,contr 
+60a2 d8a043eb arg mem_le_ltk ,contw 
+60a3 20407c9a call memcpy16 
+60a4 2020609d branch le_parse_enc_req_after_auth 
+
+le_ltk_lost:
+60a5 471bc026 bpatchx patch26_7 ,mem_patch26 
+60a6 70449700 jam flag_le_enc_null ,mem_le_enc_state 
+60a7 70449600 jam flag_le_enc_null ,mem_le_pairing_state 
+60a8 700a9541 jam bt_evt_le_ltk_lost ,mem_fifo_temp 
+60a9 20207bab branch ui_ipc_send_event 
+
+le_send_reject_ind:
+60aa da200002 arg 2 ,rega 
+60ab da40000d arg ll_reject_ind ,regb 
+60ac 20405c22 call le_fifo_malloc_tx_ll 
+60ad 58000006 setarg le_err_pin_or_key_missing 
+60ae e7e20005 istore 1 ,contw 
+60af 20600000 rtn 
+
+le_send_enc_rsp:
+60b0 d8a04484 arg mem_le_skds ,contw 
+60b1 18007208 force 8 ,loopcnt 
+60b2 204066ef call generate_random_loop 
+60b3 d8a043e7 arg mem_le_ivs ,contw 
+60b4 18007204 force 4 ,loopcnt 
+60b5 204066ef call generate_random_loop 
+60b6 da20000d arg 13 ,rega 
+60b7 da400004 arg ll_enc_rsp ,regb 
+60b8 20405c22 call le_fifo_malloc_tx_ll 
+60b9 6ff04484 fetch 8 ,mem_le_skds 
+60ba e7f00005 istore 8 ,contw 
+60bb 6fe843e7 fetch 4 ,mem_le_ivs 
+60bc e7e80005 istore 4 ,contw 
+60bd 20600000 rtn 
+
+le_send_start_enc_req:
+60be da400005 arg ll_start_enc_req ,regb 
+60bf 20206089 branch le_send_ll_one_lenth 
+
+le_send_start_enc_rsp:
+60c0 da400006 arg ll_start_enc_rsp ,regb 
+60c1 20206089 branch le_send_ll_one_lenth 
+
+le_parse_enc_rsp:
+60c2 eff00006 ifetch 8 ,contr 
+60c3 67f04484 store 8 ,mem_le_skds 
+60c4 efe80006 ifetch 4 ,contr 
+60c5 67e843e7 store 4 ,mem_le_ivs 
+60c6 20207258 branch generate_sk 
+
+le_parse_start_enc_req:
+60c7 6fe2043b fetch 1 ,mem_le_state 
+60c8 79207e04 set1 lestate_encryption ,pdata 
+60c9 67e2043b store 1 ,mem_le_state 
+60ca 20600000 rtn 
+
+le_parse_start_enc_rsp:
+60cb 20748000 rtn master 
+60cc 700a9532 jam bt_evt_le_start_enc ,mem_fifo_temp 
+60cd 20407bab call ui_ipc_send_event 
+60ce 70449704 jam flag_le_send_start_enc_rsp ,mem_le_enc_state 
+60cf 202060c0 branch le_send_start_enc_rsp 
+
+le_parse_pause_enc_req:
+60d0 70449702 jam flag_le_enc_pause ,mem_le_enc_state 
+60d1 204060d4 call le_send_pause_enc_rsp 
+60d2 700a9533 jam bt_evt_le_pause_enc ,mem_fifo_temp 
+60d3 20207bab branch ui_ipc_send_event 
+
+le_send_pause_enc_rsp:
+60d4 da40000b arg ll_pause_enc_rsp ,regb 
+60d5 20206089 branch le_send_ll_one_lenth 
+
+le_parse_feature_rsp:
+
+le_parse_unknown_rsp:
+
+le_parse_pause_enc_rsp:
+
+le_parse_reject_ind:
+
+le_parse_ping_rsp:
+60d6 20600000 rtn 
+
+init_lmp:
+60d7 20758000 rtn wake 
+
+init_lmp_work:
+60d8 471c4027 bpatchx patch27_0 ,mem_patch27 
+60d9 58000000 setarg 0 
+60da 67e20048 store 1 ,mem_lmp_to_send 
+60db 67e20055 store 1 ,mem_conn_sm 
+60dc 67e20078 store 1 ,mem_lmo_opcode1 
+60dd 67e2007c store 1 ,mem_lmo_opcode2 
+60de 67e24159 store 1 ,mem_esco_addr 
+60df 67e204d3 store 1 ,mem_auth_enable 
+60e0 67e2016b store 1 ,mem_connection_options 
+60e1 67e209b1 store 1 ,mem_pairing_auth 
+60e2 70452d00 jam switch_flag_init ,mem_switch_flag 
+60e3 70022700 jam 0 ,mem_switch_fail_master_count 
+60e4 7004d400 jam null_encryp ,mem_wait_encryption 
+
+init_lmp_reinit:
+60e5 7009b100 jam 0 ,mem_pairing_auth 
+60e6 7009b000 jam 0 ,mem_sp_localsm 
+60e7 7004cd00 jam 0 ,mem_lmp_conn_state 
+
+parse_rx_done:
+60e8 20600000 rtn 
+
+parse_lmp:
+60e9 471cc027 bpatchx patch27_1 ,mem_patch27 
+60ea 2054e6e1 call setlocalsm_master ,master 
+60eb 2454e6e5 ncall setlocalsm_slave ,master 
+60ec 2040669e call lmo_fifo_check 
+60ed 247a0000 nrtn blank 
+60ee 6fe2004c fetch 1 ,mem_state_map 
+60ef c4030000 rtnbit0 smap_rxlmp 
+60f0 793ffe06 set0 smap_rxlmp ,pdata 
+60f1 793f8001 set0 mark_rxbuf_inuse ,mark 
+60f2 67e2004c store 1 ,mem_state_map 
+60f3 6fe2054d fetch 1 ,mem_rxbuf 
+60f4 6842004c fetcht 1 ,mem_state_map 
+60f5 2feffe00 isolate1 smap_lmptidinit ,pdata 
+60f6 79208401 setflag true ,smap_lmptid ,temp 
+60f7 6042004c storet 1 ,mem_state_map 
+60f8 18410402 and_into 0x2 ,temp 
+60f9 6042007f storet 1 ,mem_lmo_tid2 
+60fa 6842004c fetcht 1 ,mem_state_map 
+60fb 1fe37e00 rshift pdata ,pdata 
+60fc 67e2007d store 1 ,mem_lmi_opcode2 
+60fd 471d4027 bpatchx patch27_2 ,mem_patch27 
+60fe 6fe2007d fetch 1 ,mem_lmi_opcode2 
+60ff c03fe147 beq lmp_escape ,parse_lmp_escape 
+6100 c001e192 beq lmp_accepted ,parse_lmp_accepted 
+6101 c00261a3 beq lmp_not_accepted ,parse_lmp_not_accepted 
+6102 c01e613a beq lmp_set_afh ,parse_lmp_set_afh 
+6103 c002e136 beq lmp_clkoffset_req ,parse_lmp_clkoffset_req 
+6104 c007e38a beq lmp_encryption_mode_req ,parse_lmp_encryption_mode_req 
+6105 c0086205 beq lmp_encryption_key_size_req ,parse_lmp_crypt_key 
+6106 c011e223 beq lmp_auto_rate ,parse_lmp_auto_rate 
+6107 c01ce3a3 beq lmp_test_control ,parse_lmp_test_control 
+6108 c01c639e beq lmp_test_activate ,parse_lmp_test_activate 
+6109 c018e208 beq lmp_setup_complete ,parse_lmp_setup_complete 
+610a c01be291 beq lmp_supervision_timeout ,parse_lmp_supervision_timeout 
+610b c013e28d beq lmp_features_req ,parse_lmp_features_req 
+610c c019e28a beq lmp_host_connection_req ,parse_lmp_conn_req 
+610d c012e28f beq lmp_version_req ,parse_lmp_version_req 
+610e c013621f beq lmp_version_res ,parse_lmp_version_res 
+610f c003e217 beq lmp_detach ,parse_lmp_detach 
+6110 c016e20e beq lmp_max_slot ,parse_lmp_max_slot 
+6111 c017620f beq lmp_max_slot_req ,parse_lmp_max_slot_req 
+6112 c000e286 beq lmp_name_req ,parse_lmp_name_req 
+6113 c0016271 beq lmp_name_res ,parse_lmp_name_res 
+6114 c0146395 beq lmp_features_res ,parse_lmp_features_res 
+6115 c004e267 beq lmp_comb_key ,parse_lmp_comb_key 
+6116 c005e240 beq lmp_au_rand ,parse_lmp_au_rand 
+6117 c0046224 beq lmp_in_rand ,parse_lmp_in_rand 
+6118 c006624b beq lmp_sres ,parse_lmp_sres 
+6119 c00fe21b beq lmp_incr_power_req ,parse_lmp_incr_power 
+611a c010621d beq lmp_decr_power_req ,parse_lmp_decr_power 
+611b c010e2ab beq lmp_max_power ,parse_lmp_max_power 
+611c c01162ab beq lmp_min_power ,parse_lmp_min_power 
+611d c01ae2ac beq lmp_page_mode_req ,parse_lmp_page_mode_req 
+611e c01b62ad beq lmp_page_scan_mode_req ,parse_lmp_page_scan_mode_req 
+611f c01262ab beq lmp_preferred_rate ,parse_lmp_preferred_rate 
+6120 c01a62ae beq lmp_slot_offset ,parse_lmp_slot_offset 
+6121 c00be2b7 beq lmp_sniff_req ,parse_lmp_sniff_req 
+6122 c008e2d4 beq lmp_start_encryption_req ,parse_lmp_start_encryption_req 
+6123 c00962d8 beq lmp_stop_encryption_req ,parse_lmp_stop_encryption_req 
+6124 c009e2da beq lmp_switch_req ,parse_lmp_switch_req 
+6125 c006e2ec beq lmp_temp_rand ,parse_lmp_temp_rand 
+6126 c00762ec beq lmp_temp_key ,parse_lmp_temp_key 
+6127 c017e28b beq lmp_timing_accuracy_req ,parse_lmp_timing_accuracy_req 
+6128 c01862ec beq lmp_timing_accuracy_res ,parse_lmp_timing_accuracy_res 
+6129 c00562ec beq lmp_unit_key ,parse_lmp_unit_key 
+612a c00c62ed beq lmp_unsniff_req ,parse_lmp_unsniff_req 
+612b c01962ec beq lmp_use_semi_permanent_key ,parse_lmp_use_semi_permanend_key 
+612c c01ee2f2 beq lmp_encapsulated_header ,parse_lmp_encapsulated_header 
+612d c01f6333 beq lmp_encapsulated_payload ,parse_lmp_encapsulated_payload 
+612e c01fe32d beq lmp_simple_pairing_confirm ,parse_simple_pairing_confirm 
+612f c020635a beq lmp_simple_pairing_number ,parse_lmp_simple_pairing_number 
+6130 c020e36c beq lmp_dhkey_check ,parse_dhkey_check 
+6131 c0036389 beq lmp_clkoffset_res ,parse_lmp_clkoffset_res 
+6132 c01d6138 beq lmp_enc_key_size_mask_req ,parse_enc_key_size_mask_req 
+
+reject_unknown_packet:
+6133 70007e19 jam unknown_lmp_pdu ,mem_lmo_reason2 
+
+reject_lmp_packet:
+6134 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+6135 20600000 rtn 
+
+parse_lmp_clkoffset_req:
+6136 70007c06 jam lmp_clkoffset_res ,mem_lmo_opcode2 
+6137 20600000 rtn 
+
+parse_enc_key_size_mask_req:
+6138 70007c3b jam lmp_enc_key_size_mask_res ,mem_lmo_opcode2 
+6139 20600000 rtn 
+
+parse_lmp_set_afh:
+613a 6fe8054e fetch 4 ,mem_rxbuf + 1 
+613b 1fe3fe00 lshift pdata ,pdata 
+613c 67e840d2 store 4 ,mem_afh_instant 
+613d 6fe20552 fetch 1 ,mem_rxbuf + 5 
+613e 67e240d9 store 1 ,mem_afh_new_mod 
+613f 6fea0553 fetch 5 ,mem_rxbuf + 6 
+6140 67ea40e7 store 5 ,mem_afh_map_new 
+6141 6fea0558 fetch 5 ,mem_rxbuf + 11 
+6142 e7ea0005 istore 5 ,contw 
+6143 6fe20031 fetch 1 ,mem_mode 
+6144 79207e03 set1 afh_change ,pdata 
+6145 67e20031 store 1 ,mem_mode 
+6146 20600000 rtn 
+
+parse_lmp_escape:
+6147 471dc027 bpatchx patch27_3 ,mem_patch27 
+6148 6fe2054e fetch 1 ,mem_rxbuf + 1 
+6149 79207e07 set1 7 ,pdata 
+614a 67e2007d store 1 ,mem_lmi_opcode2 
+614b c040e169 beq lmp_ext_accepted ,parse_lmpext_accepted 
+614c c041616e beq lmp_not_accepted_ext ,parse_lmpext_not_accepted 
+614d c04ae292 beq lmp_sniff_subrating_req ,parse_lmp_sniff_subrating_req 
+614e c04b62ab beq lmp_sniff_subrating_res ,parse_lmp_sniff_subrating_res 
+614f c045e2a0 beq lmp_packet_type_table_req ,parse_lmpext_packet_type_table_req 
+6150 c041e186 beq lmp_ext_features_req ,parse_lmpext_features_req 
+6151 c0426188 beq lmp_ext_features_res ,parse_lmpext_features_res 
+6152 c048615b beq lmp_ext_chn_classification_req ,parse_lmpext_chn_classification_req 
+6153 c04be17f beq lmp_pause_encryption_req ,parse_lmpext_pause_encrypt 
+6154 c04c6184 beq lmp_resume_encryption_req ,parse_lmpext_resume_encrypt 
+6155 c04ce15e beq lmp_io_cap_req ,parse_lmpext_iocap_req 
+6156 c04d6161 beq lmp_io_cap_res ,parse_lmpext_iocap_res 
+6157 c1420000 rtneq lmp_ext_features_res 
+
+reject_unknown_ext_packet:
+6158 70007c82 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+6159 70007e19 jam unknown_lmp_pdu ,mem_lmo_reason2 
+615a 20600000 rtn 
+
+parse_lmpext_chn_classification_req:
+615b 70007c82 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+615c 70007e2e jam not_support_chn_classification ,mem_lmo_reason2 
+615d 20600000 rtn 
+
+parse_lmpext_iocap_req:
+615e 20406163 call iocap_lmpext_load 
+615f 70007c9a jam lmp_io_cap_res ,mem_lmo_opcode2 
+6160 20600000 rtn 
+
+parse_lmpext_iocap_res:
+6161 20406163 call iocap_lmpext_load 
+6162 20206167 branch iocap_lmpext_common 
+
+iocap_lmpext_load:
+6163 d8a04630 arg mem_sp_iocap_remote ,contw 
+6164 6fe6054f fetch 3 ,mem_rxbuf + 2 
+6165 e7e60005 istore 3 ,contw 
+6166 20600000 rtn 
+
+iocap_lmpext_common:
+6167 2020f58d branch master_set_mem_master_sp_flag ,true 
+6168 20600000 rtn 
+
+parse_lmpext_accepted:
+6169 6fe20550 fetch 1 ,mem_rxbuf + 3 
+616a 79207e07 set1 7 ,pdata 
+616b 67e204c5 store 1 ,mem_lmi_accepted_opcode 
+616c c045e173 beq lmp_packet_type_table_req ,parse_lmpext_accepted_ptt 
+616d 20600000 rtn 
+
+parse_lmpext_not_accepted:
+616e 6fe20550 fetch 1 ,mem_rxbuf + 3 
+616f 79207e07 set1 7 ,pdata 
+6170 67e204c5 store 1 ,mem_lmi_accepted_opcode 
+6171 c045e177 beq lmp_packet_type_table_req ,parse_lmpext_not_accepted_ptt 
+6172 20600000 rtn 
+
+parse_lmpext_accepted_ptt:
+6173 6fe2415b fetch 1 ,mem_ptt 
+6174 6842004c fetcht 1 ,mem_state_map 
+6175 7d3a0405 nsetflag blank ,smap_edr ,temp 
+6176 6042004c storet 1 ,mem_state_map 
+
+parse_lmpext_not_accepted_ptt:
+6177 6fe20030 fetch 1 ,mem_state 
+6178 c4028000 rtnbit0 state_init_seq 
+6179 793ffe05 set0 state_init_seq ,pdata 
+617a 67e20030 store 1 ,mem_state 
+617b 6fe204d3 fetch 1 ,mem_auth_enable 
+617c 247a0000 nrtn blank 
+617d 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+617e 20600000 rtn 
+
+parse_lmpext_pause_encrypt:
+617f 2434e182 nbranch parse_lmpext_pause_encrypt_slave ,master 
+6180 70007c12 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+6181 202066cd branch tid_reply 
+
+parse_lmpext_pause_encrypt_slave:
+6182 70007c97 jam lmp_pause_encryption_req ,mem_lmo_opcode2 
+6183 20600000 rtn 
+
+parse_lmpext_resume_encrypt:
+6184 204066cd call tid_reply 
+6185 202063e0 branch lmp_start_encryption 
+
+parse_lmpext_features_req:
+6186 70007c84 jam lmp_ext_features_res ,mem_lmo_opcode2 
+6187 20600000 rtn 
+
+parse_lmpext_features_res:
+6188 68420551 fetcht 1 ,mem_rxbuf + 4 
+6189 18410401 and temp ,0x1 ,temp 
+618a 604204cc storet 1 ,mem_remote_sppcap 
+618b 6fe241cf fetch 1 ,mem_hci_cmd 
+618c c0a8e18e bne hci_cmd_wait_remote_ext_feature ,parse_lmpext_features_res_not_hci 
+618d 7041cf00 jam 0 ,mem_hci_cmd 
+
+parse_lmpext_features_res_not_hci:
+618e 6fe20055 fetch 1 ,mem_conn_sm 
+618f c18a8000 rtnne conn_sm_wait_features_ext 
+6190 70005504 jam conn_sm_send_conn_req ,mem_conn_sm 
+6191 202066fd branch process_conn_sm 
+
+parse_lmp_accepted:
+6192 471e4027 bpatchx patch27_4 ,mem_patch27 
+6193 6fe2054e fetch 1 ,mem_rxbuf + 1 
+6194 67e204c5 store 1 ,mem_lmi_accepted_opcode 
+6195 c019e1b9 beq lmp_host_connection_req ,parse_lmp_accepted_hostconn 
+6196 c00461c8 beq lmp_in_rand ,parse_lmp_accepted_inrand 
+6197 c007e1cf beq lmp_encryption_mode_req ,parse_lmp_accepted_enc_mode 
+6198 c00861d5 beq lmp_encryption_key_size_req ,parse_lmp_accepted_enc_keysize 
+6199 c008e1d6 beq lmp_start_encryption_req ,parse_lmp_accepted_start_enc 
+619a c00961de beq lmp_stop_encryption_req ,parse_lmp_accepted_stop_enc 
+619b c00c61f4 beq lmp_unsniff_req ,parse_lmp_accepted_unsniff_req 
+619c c00be1f7 beq lmp_sniff_req ,parse_lmp_accepted_sniff_req 
+619d c009e1b0 beq lmp_switch_req ,parse_lmp_accepted_switch 
+619e c01ee300 beq lmp_encapsulated_header ,parse_lmp_accepted_encapsulated_header 
+619f c01f634c beq lmp_encapsulated_payload ,parse_lmp_accepted_encapsulated_payload 
+61a0 c0206302 beq lmp_simple_pairing_number ,parse_lmp_accepted_simple_pairing_number 
+61a1 c020e31f beq lmp_dhkey_check ,parse_lmp_accepted_dhkey_check 
+61a2 20600000 rtn 
+
+parse_lmp_not_accepted:
+61a3 471ec027 bpatchx patch27_5 ,mem_patch27 
+61a4 6fe2054e fetch 1 ,mem_rxbuf + 1 
+61a5 67e204c5 store 1 ,mem_lmi_accepted_opcode 
+61a6 c000e1eb beq lmp_name_req ,parse_lmp_not_accepted_name_req 
+61a7 c019e1c3 beq lmp_host_connection_req ,parse_lmp_not_accepted_hostconn 
+61a8 c005e1df beq lmp_au_rand ,parse_lmp_not_accepted_aurand 
+61a9 c00461e2 beq lmp_in_rand ,parse_lmp_not_accepted_inrand 
+61aa c009e1b3 beq lmp_switch_req ,parse_lmp_not_accepted_switch 
+61ab c02061ec beq lmp_simple_pairing_number ,parse_lmp_not_accepted_simple_pairing_number 
+61ac c020e1ef beq lmp_dhkey_check ,parse_lmp_not_accepted_dhkey_check 
+61ad c00c61f2 beq lmp_unsniff_req ,parse_lmp_not_accepted_unsniff_req 
+61ae c00be203 beq lmp_sniff_req ,parse_lmp_not_acdcept_sniff_req 
+61af 20600000 rtn 
+
+parse_lmp_accepted_switch:
+61b0 700a9520 jam bt_evt_switch_accept ,mem_fifo_temp 
+61b1 20407bab call ui_ipc_send_event 
+61b2 202041d8 branch role_switch_prepare0 
+
+parse_lmp_not_accepted_switch:
+61b3 700a9519 jam bt_evt_switch_not_accept ,mem_fifo_temp 
+61b4 20407bab call ui_ipc_send_event 
+61b5 70452d02 jam switch_flag_not_accept ,mem_switch_flag 
+61b6 58000050 setarg timer_switch_waite 
+61b7 d8e00006 arg switch_wait_timer ,queue 
+61b8 20207ce3 branch timer_init 
+
+parse_lmp_accepted_hostconn:
+61b9 6fe204cd fetch 1 ,mem_lmp_conn_state 
+61ba 79207e00 set1 received_conn_req ,pdata 
+61bb 67e204cd store 1 ,mem_lmp_conn_state 
+61bc 700a9501 jam bt_evt_bb_connected ,mem_fifo_temp 
+61bd 20407bab call ui_ipc_send_event 
+61be 70007c8b jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+
+parse_lmp_accepted_hostconn_ctn:
+61bf 6fe20055 fetch 1 ,mem_conn_sm 
+61c0 c082e0e8 bne conn_sm_wait_conn_accept ,parse_rx_done 
+61c1 70005506 jam conn_sm_auth_pair ,mem_conn_sm 
+61c2 20600000 rtn 
+
+parse_lmp_not_accepted_hostconn:
+61c3 7004c60b jam acl_connection_already_exists ,mem_disconn_reason_send 
+61c4 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+61c5 70005500 jam conn_sm_standby ,mem_conn_sm 
+61c6 2020e0e8 branch parse_rx_done ,true 
+61c7 20600000 rtn 
+
+parse_lmp_accepted_inrand:
+61c8 6fe241be fetch 1 ,mem_link_key_exists 
+61c9 247a0000 nrtn blank 
+61ca 2040444b call clear_linkkey 
+61cb 204063de call lmp_generate_key 
+61cc 20748000 rtn master 
+61cd 79200021 set1 mark_slave_in_rand_accepted ,mark 
+61ce 20600000 rtn 
+
+parse_lmp_accepted_enc_mode:
+61cf 24748000 nrtn master 
+61d0 70007c10 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+61d1 6fe2004c fetch 1 ,mem_state_map 
+61d2 c4010000 rtnbit0 smap_encryption 
+61d3 70007c12 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+61d4 20600000 rtn 
+
+parse_lmp_accepted_enc_keysize:
+61d5 202063e0 branch lmp_start_encryption 
+
+parse_lmp_accepted_start_enc:
+61d6 2040643b call send_create_conn_start_l2cap_timer_sm 
+61d7 6fe20030 fetch 1 ,mem_state 
+61d8 c3820000 rtnbit1 state_conn_comp 
+61d9 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+61da 6fe20055 fetch 1 ,mem_conn_sm 
+61db c1850000 rtnne conn_sm_encrypt_wait 
+61dc 7000550b jam conn_sm_encrypt_wait_clear ,mem_conn_sm 
+61dd 20600000 rtn 
+
+parse_lmp_accepted_stop_enc:
+61de 20600000 rtn 
+
+parse_lmp_not_accepted_aurand:
+
+parse_lmp_not_accepted_aurand_send_detach:
+61df 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+61e0 7004c613 jam other_end_terminated ,mem_disconn_reason_send 
+61e1 20600000 rtn 
+
+parse_lmp_not_accepted_inrand:
+61e2 6fe2054f fetch 1 ,mem_rxbuf + 2 
+61e3 c00361e8 beq key_missing ,parse_lmp_inrand_key_missing 
+61e4 c18c0000 rtnne pairing_not_allowed 
+61e5 7004c618 jam pairing_not_allowed ,mem_disconn_reason_send 
+61e6 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+61e7 20600000 rtn 
+
+parse_lmp_inrand_key_missing:
+61e8 7004c606 jam key_missing ,mem_disconn_reason_send 
+61e9 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+61ea 20600000 rtn 
+
+parse_lmp_not_accepted_name_req:
+61eb 20600000 rtn 
+
+parse_lmp_not_accepted_simple_pairing_number:
+61ec 7009aa00 jam sp_stat_null ,mem_sp_state 
+61ed 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+61ee 202060e8 branch parse_rx_done 
+
+parse_lmp_not_accepted_dhkey_check:
+61ef 7009aa00 jam sp_stat_null ,mem_sp_state 
+61f0 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+61f1 202060e8 branch parse_rx_done 
+
+parse_lmp_not_accepted_unsniff_req:
+61f2 700a9524 jam bt_evt_unsniff_not_accept ,mem_fifo_temp 
+61f3 20207bab branch ui_ipc_send_event 
+
+parse_lmp_accepted_unsniff_req:
+61f4 700a9523 jam bt_evt_unsniff_accept ,mem_fifo_temp 
+61f5 20407bab call ui_ipc_send_event 
+61f6 202046e5 branch sniff_exit 
+
+parse_lmp_accepted_sniff_req:
+61f7 700a9522 jam bt_evt_sniff_accept ,mem_fifo_temp 
+61f8 20407bab call ui_ipc_send_event 
+61f9 58000000 setarg 0 
+61fa 67e40075 store 2 ,mem_dsniff 
+61fb 6fe441e4 fetch 2 ,mem_sniff_param_interval 
+61fc 1fe3fe00 lshift pdata ,pdata 
+61fd 67e40032 store 2 ,mem_tsniff 
+61fe 6fe241e6 fetch 1 ,mem_sniff_param_attempt 
+61ff 67e20073 store 1 ,mem_sniff_attempt 
+6200 6fe241e8 fetch 1 ,mem_sniff_param_timeout 
+6201 67e20074 store 1 ,mem_sniff_timeout 
+6202 202046c2 branch sniff_init 
+
+parse_lmp_not_acdcept_sniff_req:
+6203 700a9521 jam bt_evt_sniff_not_accept ,mem_fifo_temp 
+6204 20207bab branch ui_ipc_send_event 
+
+parse_lmp_crypt_key:
+6205 6842054e fetcht 1 ,mem_rxbuf + 1 
+6206 60420054 storet 1 ,mem_key_size 
+6207 20206219 branch accept_lmp_msg 
+
+parse_lmp_setup_complete:
+6208 6fe204cd fetch 1 ,mem_lmp_conn_state 
+6209 79207e02 set1 received_setup_complete ,pdata 
+620a 67e204cd store 1 ,mem_lmp_conn_state 
+620b c3818000 rtnbit1 sent_setup_complete 
+620c 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+620d 202060e8 branch parse_rx_done 
+
+parse_lmp_max_slot:
+620e 20600000 rtn 
+
+parse_lmp_max_slot_req:
+620f 6fe240d0 fetch 1 ,mem_max_slot 
+6210 6842054e fetcht 1 ,mem_rxbuf + 1 
+6211 98467c00 isub temp ,null 
+6212 20216219 branch accept_lmp_msg ,positive 
+6213 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+6214 70007e1f jam unspecified_error ,mem_lmo_reason2 
+6215 70007d2e jam lmp_max_slot_req ,mem_lmi_opcode2 
+6216 20600000 rtn 
+
+parse_lmp_detach:
+6217 20406539 call prepare_disconnect 
+6218 20206219 branch accept_lmp_msg 
+
+accept_lmp_msg:
+6219 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+621a 20600000 rtn 
+
+parse_lmp_incr_power:
+621b 70007c21 jam lmp_max_power ,mem_lmo_opcode2 
+621c 20600000 rtn 
+
+parse_lmp_decr_power:
+621d 70007c22 jam lmp_min_power ,mem_lmo_opcode2 
+621e 20600000 rtn 
+
+parse_lmp_version_res:
+621f 6fe20055 fetch 1 ,mem_conn_sm 
+6220 c1098000 rtneq conn_sm_wait_version 
+6221 70005502 jam conn_sm_send_features ,mem_conn_sm 
+6222 20600000 rtn 
+
+parse_lmp_auto_rate:
+6223 20600000 rtn 
+
+parse_lmp_in_rand:
+6224 204063db call lmp_copy_rand 
+6225 7004d001 jam pincode_state_wait_pincode ,mem_pincode_state 
+6226 700a950a jam bt_evt_pincode_req ,mem_fifo_temp 
+6227 20407bab call ui_ipc_send_event 
+6228 204066d5 call tid_check 
+6229 2420e3e3 nbranch lmp_accept_inrand ,true 
+622a 2434e22f nbranch parse_lmp_inrand_res ,master 
+622b 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+622c 70007d08 jam lmp_in_rand ,mem_lmi_opcode2 
+622d 70007e23 jam transaction_collision ,mem_lmo_reason2 
+622e 20600000 rtn 
+
+parse_lmp_inrand_res:
+622f 6fe2004b fetch 1 ,mem_op 
+6230 79207e02 set1 op_inrand_req ,pdata 
+6231 67e2004b store 1 ,mem_op 
+6232 20600000 rtn 
+
+pop_tid_follow:
+6233 6842004c fetcht 1 ,mem_state_map 
+6234 7d3a0401 nsetflag blank ,smap_lmptid ,temp 
+6235 6042004c storet 1 ,mem_state_map 
+6236 20600000 rtn 
+
+push_tid_follow:
+6237 6fe2007f fetch 1 ,mem_lmo_tid2 
+6238 1fe37e00 rshift pdata ,pdata 
+6239 1fe17e01 and_into 1 ,pdata 
+623a 20600000 rtn 
+
+parse_lmp_au_rand_moudle:
+623b 6fe24216 fetch 1 ,mem_nv_data_number 
+623c 207a0000 rtn blank 
+623d 6fe209b1 fetch 1 ,mem_pairing_auth 
+623e 205a68a4 call load_device_list ,blank 
+623f 20600000 rtn 
+
+parse_lmp_au_rand:
+6240 2040623b call parse_lmp_au_rand_moudle 
+6241 20406237 call push_tid_follow 
+6242 67e204d1 store 1 ,mem_sres_tid 
+6243 204063db call lmp_copy_rand 
+6244 70007c0c jam lmp_sres ,mem_lmo_opcode2 
+6245 6fe241be fetch 1 ,mem_link_key_exists 
+6246 247a0000 nrtn blank 
+6247 6fe20030 fetch 1 ,mem_state 
+6248 c3830000 rtnbit1 state_combkey 
+6249 70007e06 jam key_missing ,mem_lmo_reason2 
+624a 20206134 branch reject_lmp_packet 
+
+parse_lmp_sres:
+624b da200040 arg mem_plap ,rega 
+624c 20407147 call function_e1 
+624d 6fe8054e fetch 4 ,mem_rxbuf + 1 
+624e 6848058e fetcht 4 ,mem_input_store 
+624f 98467c00 isub temp ,null 
+6250 2022e254 branch authentication_ok ,zero 
+6251 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+6252 7004c605 jam authentication_failure_error ,mem_disconn_reason_send 
+6253 20600000 rtn 
+
+authentication_ok:
+6254 20406258 call authentication_ok_common 
+6255 6fe2462c fetch 1 ,mem_ssp_enable 
+6256 203a6320 branch pairing_success ,blank 
+6257 20600000 rtn 
+
+authentication_ok_common:
+6258 2040723c call copy_aco 
+6259 204041ae call linkkey_ready 
+625a 6fe2004b fetch 1 ,mem_op 
+625b 2feffe01 isolate1 op_auth_req ,pdata 
+625c 793ffe01 set0 op_auth_req ,pdata 
+625d 67e2004b store 1 ,mem_op 
+625e 6fe20055 fetch 1 ,mem_conn_sm 
+625f c00ce262 beq conn_sm_auth_wait ,authentication_ok_conn_sm 
+6260 c00c6262 beq conn_sm_pairing_wait ,authentication_ok_conn_sm 
+6261 20600000 rtn 
+
+authentication_ok_conn_sm:
+6262 6fe209b1 fetch 1 ,mem_pairing_auth 
+6263 c1800000 rtnne defalt_pairing_auth 
+6264 6fe2004c fetch 1 ,mem_state_map 
+6265 c3810000 rtnbit1 smap_encryption 
+6266 20206793 branch host_create_conn_encrypt 
+
+parse_lmp_comb_key:
+6267 da20054e arg mem_rxbuf + 1 ,rega 
+6268 da40057e arg mem_kinit ,regb 
+6269 d8a0055e arg mem_random_number ,contw 
+626a 20407208 call xor16 
+626b da200040 arg mem_plap ,rega 
+626c 204066f3 call generate_linkkey 
+626d 70007c0b jam lmp_au_rand ,mem_lmo_opcode2 
+626e 6fe20030 fetch 1 ,mem_state 
+626f c30363de bbit0 state_combkey ,lmp_generate_key 
+6270 20600000 rtn 
+
+parse_lmp_name_res:
+6271 6fe4015d fetch 2 ,mem_len 
+6272 1fe0f3fd add pdata ,-3 ,loopcnt 
+6273 6842054e fetcht 1 ,mem_rxbuf + 1 
+6274 580000ff setarg mem_tmp_buffer 
+6275 98408a00 iadd temp ,contw 
+6276 d8c00550 arg mem_rxbuf + 3 ,contr 
+6277 20407cdc call memcpy 
+6278 68420053 fetcht 1 ,mem_name_offset 
+6279 6fe2054f fetch 1 ,mem_rxbuf + 2 
+627a 98467e00 isub temp ,pdata 
+627b 1fe67c0e sub pdata ,14 ,null 
+627c 20216281 branch parse_lmp_name_res_end ,positive 
+627d 1840fe0e add temp ,14 ,pdata 
+627e 67e20053 store 1 ,mem_name_offset 
+627f 70007c01 jam lmp_name_req ,mem_lmo_opcode2 
+6280 20600000 rtn 
+
+parse_lmp_name_res_end:
+6281 6fe2004c fetch 1 ,mem_state_map 
+6282 79207e03 set1 smap_name_res ,pdata 
+6283 67e2004c store 1 ,mem_state_map 
+6284 c28263e8 bbit1 smap_name_req ,lmp_disconnect 
+6285 20600000 rtn 
+
+parse_lmp_name_req:
+6286 6fe2054e fetch 1 ,mem_rxbuf + 1 
+6287 67e2007d store 1 ,mem_lmi_opcode2 
+6288 70007c02 jam lmp_name_res ,mem_lmo_opcode2 
+6289 20600000 rtn 
+
+parse_lmp_conn_req:
+628a 20206219 branch accept_lmp_msg 
+
+parse_lmp_timing_accuracy_req:
+628b 70007c30 jam lmp_timing_accuracy_res ,mem_lmo_opcode2 
+628c 20600000 rtn 
+
+parse_lmp_features_req:
+628d 70007c28 jam lmp_features_res ,mem_lmo_opcode2 
+628e 20600000 rtn 
+
+parse_lmp_version_req:
+628f 70007c26 jam lmp_version_res ,mem_lmo_opcode2 
+6290 20600000 rtn 
+
+parse_lmp_supervision_timeout:
+6291 20600000 rtn 
+
+parse_lmp_sniff_subrating_req:
+6292 6fe40032 fetch 2 ,mem_tsniff 
+6293 98000400 iforce temp 
+6294 6fe2054f fetch 1 ,mem_rxbuf + 2 
+6295 67e20095 store 1 ,mem_subsniff_rate 
+6296 984f8400 imul32 temp ,temp 
+6297 6fe40550 fetch 2 ,mem_rxbuf + 3 
+6298 1fe3fe00 lshift pdata ,pdata 
+6299 67e40096 store 2 ,mem_subsniff_tcmax 
+629a 6fe80552 fetch 4 ,mem_rxbuf + 5 
+629b 1fe3fe00 lshift pdata ,pdata 
+629c 67e80091 store 4 ,mem_subsniff_instant 
+629d 18427e00 deposit temp 
+629e 67e40098 store 2 ,mem_subsniff_tsniff 
+629f 20600000 rtn 
+
+parse_lmpext_packet_type_table_req:
+62a0 6842415b fetcht 1 ,mem_ptt 
+62a1 6fe2054f fetch 1 ,mem_rxbuf + 2 
+62a2 9842fc00 ixor temp ,null 
+62a3 2422e158 nbranch reject_unknown_ext_packet ,zero 
+62a4 2feffe00 isolate1 0 ,pdata 
+62a5 6fe2004c fetch 1 ,mem_state_map 
+62a6 7920fe05 setflag true ,smap_edr ,pdata 
+62a7 67e2004c store 1 ,mem_state_map 
+62a8 70007c81 jam lmp_ext_accepted ,mem_lmo_opcode2 
+62a9 70007d8b jam lmp_packet_type_table_req ,mem_lmi_opcode2 
+62aa 20600000 rtn 
+
+parse_lmp_sniff_subrating_res:
+
+parse_lmp_preferred_rate:
+
+parse_lmp_max_power:
+
+parse_lmp_min_power:
+62ab 20600000 rtn 
+
+parse_lmp_page_mode_req:
+62ac 20206219 branch accept_lmp_msg 
+
+parse_lmp_page_scan_mode_req:
+62ad 20206219 branch accept_lmp_msg 
+
+parse_lmp_slot_offset:
+62ae 6fe4054e fetch 2 ,mem_rxbuf + 1 
+62af 67e4016f store 2 ,mem_slot_offset 
+62b0 20600000 rtn 
+
+parse_lmp_sniff_req_check_sniff_para:
+62b1 6fe40551 fetch 2 ,mem_rxbuf + 4 
+62b2 68424173 fetcht 1 ,mem_lpm_mult 
+62b3 984ffe00 imul32 temp ,pdata 
+62b4 d8400640 arg 0x640 ,temp 
+62b5 98467c00 isub temp ,null 
+62b6 20600000 rtn 
+
+parse_lmp_sniff_req:
+62b7 202062d2 branch lmp_reject_sniff 
+62b8 6fe40553 fetch 2 ,mem_rxbuf + 6 
+62b9 203a62d2 branch lmp_reject_sniff ,blank 
+62ba 204062b1 call parse_lmp_sniff_req_check_sniff_para 
+62bb 202162d2 branch lmp_reject_sniff ,positive 
+62bc 6fe24092 fetch 1 ,mem_device_option 
+62bd 1fe67c0a sub pdata ,dvc_op_module ,null 
+62be 2042d0c1 call module_set_lpm_mult_2 ,zero 
+62bf 6fe20030 fetch 1 ,mem_state 
+62c0 c280e2d2 bbit1 state_insniff ,lmp_reject_sniff 
+62c1 6fe4054f fetch 2 ,mem_rxbuf + 2 
+62c2 1fe3fe00 lshift pdata ,pdata 
+62c3 67e40075 store 2 ,mem_dsniff 
+62c4 6fe40551 fetch 2 ,mem_rxbuf + 4 
+62c5 1fe3fe00 lshift pdata ,pdata 
+62c6 67e40032 store 2 ,mem_tsniff 
+62c7 6fe40553 fetch 2 ,mem_rxbuf + 6 
+62c8 67e20073 store 1 ,mem_sniff_attempt 
+62c9 98000400 iforce temp 
+62ca 6fe40555 fetch 2 ,mem_rxbuf + 8 
+62cb 67e20074 store 1 ,mem_sniff_timeout 
+62cc 98467c00 isub temp ,null 
+62cd 242162cf nbranch set_big_value_to_attempt ,positive 
+62ce 67e20073 store 1 ,mem_sniff_attempt 
+
+set_big_value_to_attempt:
+62cf 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+62d0 70007d17 jam lmp_sniff_req ,mem_lmi_opcode2 
+62d1 20600000 rtn 
+
+lmp_reject_sniff:
+62d2 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+62d3 20206134 branch reject_lmp_packet 
+
+parse_lmp_start_encryption_req:
+62d4 20406219 call accept_lmp_msg 
+62d5 204063db call lmp_copy_rand 
+62d6 2040714a call function_e3 
+62d7 202046b4 branch start_encryption 
+
+parse_lmp_stop_encryption_req:
+62d8 20406219 call accept_lmp_msg 
+62d9 202046bc branch stop_encryption 
+
+parse_lmp_switch_req:
+62da 6fe8054e fetch 4 ,mem_rxbuf + 1 
+62db 1fe3fe00 lshift pdata ,pdata 
+62dc 2034e2e6 branch parse_lmp_switch_accept ,master 
+62dd 684241be fetcht 1 ,mem_link_key_exists 
+62de 243a62e3 nbranch parse_lmp_switch_req_clear_mark ,blank 
+
+parse_lmp_switch_req_not_accept:
+62df 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+62e0 70007d13 jam lmp_switch_req ,mem_lmi_opcode2 
+62e1 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+62e2 20600000 rtn 
+
+parse_lmp_switch_req_clear_mark:
+62e3 70007c34 jam lmp_slot_offset ,mem_lmo_opcode2 
+62e4 70005500 jam 0 ,mem_conn_sm 
+62e5 202041d5 branch role_switch_prepare 
+
+parse_lmp_switch_accept:
+62e6 204041d5 call role_switch_prepare 
+62e7 79200022 set1 mark_reconn_recieve_switch ,mark 
+62e8 6fe2016b fetch 1 ,mem_connection_options 
+62e9 793ffe02 set0 connection_switch ,pdata 
+62ea 67e2016b store 1 ,mem_connection_options 
+62eb 20206219 branch accept_lmp_msg 
+
+parse_lmp_temp_rand:
+
+parse_lmp_temp_key:
+
+parse_lmp_timing_accuracy_res:
+
+parse_lmp_unit_key:
+
+parse_lmp_use_semi_permanend_key:
+62ec 20600000 rtn 
+
+parse_lmp_unsniff_req:
+62ed 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+62ee 70007d18 jam lmp_unsniff_req ,mem_lmi_opcode2 
+62ef 700a952e jam bt_evt_remote_unsniff ,mem_fifo_temp 
+62f0 20407bab call ui_ipc_send_event 
+62f1 202046e5 branch sniff_exit 
+
+parse_lmp_encapsulated_header:
+62f2 6fe2054e fetch 1 ,mem_rxbuf + 1 
+62f3 c080e2fe bne encapsulated_major_type_p192 ,parse_lmp_encapsulated_header_reject 
+62f4 6fe2054f fetch 1 ,mem_rxbuf + 2 
+62f5 c080e2fe bne encapsulated_minor_type_p192 ,parse_lmp_encapsulated_header_reject 
+62f6 6fe20550 fetch 1 ,mem_rxbuf + 3 
+62f7 c09862fe bne encapsulated_len_p192 ,parse_lmp_encapsulated_header_reject 
+62f8 204066de call check_localsm 
+62f9 2020e2fb branch parse_lmp_encapsulated_header_master ,true 
+62fa 7009aa01 jam sp_stat_key_recv ,mem_sp_state 
+
+parse_lmp_encapsulated_header_master:
+62fb 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+62fc 70007d3d jam lmp_encapsulated_header ,mem_lmi_opcode2 
+62fd 202060e8 branch parse_rx_done 
+
+parse_lmp_encapsulated_header_reject:
+62fe 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+62ff 20206134 branch reject_lmp_packet 
+
+parse_lmp_accepted_encapsulated_header:
+6300 70007c3e jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+6301 20600000 rtn 
+
+parse_lmp_accepted_simple_pairing_number:
+6302 6fe24634 fetch 1 ,mem_ssp_mode_flag 
+6303 c000e309 beq ssp_mode_ssp_pin_flag ,parse_lmp_accepted_simple_pairing_number_ssp_pin 
+6304 c001630d beq ssp_mode_passkey_entry_flag ,parse_lmp_accepted_simple_pairing_number_passkey 
+
+parse_lmp_accepted_simple_pairing_number_common:
+6305 204066de call check_localsm 
+6306 20608000 rtn true 
+6307 7009aa08 jam sp_stat_confirm_recv ,mem_sp_state 
+6308 20600000 rtn 
+
+parse_lmp_accepted_simple_pairing_number_ssp_pin:
+6309 20407817 call g_noninit_number_confirm 
+630a 700a9535 jam bt_evt_bt_gkey_generate ,mem_fifo_temp 
+630b 20407bab call ui_ipc_send_event 
+630c 20206305 branch parse_lmp_accepted_simple_pairing_number_common 
+
+parse_lmp_accepted_simple_pairing_number_passkey:
+630d 204066de call check_localsm 
+630e 20608000 rtn true 
+630f 6fe24635 fetch 1 ,mem_authentication_passkey_times 
+6310 c009e31d beq 19 ,authentication_passkey_end 
+6311 1fe0fe01 increase 1 ,pdata 
+6312 67e24635 store 1 ,mem_authentication_passkey_times 
+
+authentication_passkey:
+6313 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+6314 7009aa04 jam sp_stat_commit_calc ,mem_sp_state 
+6315 6fe24635 fetch 1 ,mem_authentication_passkey_times 
+6316 1fe20e00 copy pdata ,queue 
+6317 6fec4658 fetch 6 ,mem_pin 
+6318 afefffff qisolate1 pdata 
+6319 58000080 setarg 0x80 
+631a 7920fe00 setflag true ,0 ,pdata 
+631b 67e24636 store 1 ,mem_passkey_1bit 
+631c 20600000 rtn 
+
+authentication_passkey_end:
+631d 7009aa08 jam sp_stat_confirm_recv ,mem_sp_state 
+631e 20600000 rtn 
+
+parse_lmp_accepted_dhkey_check:
+631f 20406325 call parse_lmp_accepted_dhkey_check_common 
+
+pairing_success:
+6320 6fe24637 fetch 1 ,mem_flag_pairing_state 
+6321 207a0000 rtn blank 
+6322 70463700 jam flag_pairing_state_not_pairing ,mem_flag_pairing_state 
+6323 700a9538 jam bt_evt_bt_pairing_success ,mem_fifo_temp 
+6324 20207bab branch ui_ipc_send_event 
+
+parse_lmp_accepted_dhkey_check_common:
+6325 204066de call check_localsm 
+6326 2440f81a ncall g_noninit ,true 
+6327 2040f82a call g_init ,true 
+6328 204066de call check_localsm 
+6329 20608000 rtn true 
+632a 7009aa0c jam sp_stat_link_key_calc ,mem_sp_state 
+632b 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+632c 20600000 rtn 
+
+parse_simple_pairing_confirm:
+632d d8a00a6a arg mem_sp_confirm_remote ,contw 
+632e d8c0054e arg mem_rxbuf + 1 ,contr 
+632f 20407c9a call memcpy16 
+6330 6fe24634 fetch 1 ,mem_ssp_mode_flag 
+6331 c1010000 rtneq ssp_mode_passkey_entry_flag 
+6332 2020758d branch master_set_mem_master_sp_flag 
+
+parse_lmp_encapsulated_payload:
+6333 6fe209ab fetch 1 ,mem_master_sp_state 
+6334 c003e337 beq sp_stat_random_send ,parse_encapsulated_payload_master 
+6335 6fe209aa fetch 1 ,mem_sp_state 
+6336 c080e34a bne sp_stat_key_recv ,parse_lmp_encapsulated_payload_reject 
+
+parse_encapsulated_payload_master:
+6337 6fe209b3 fetch 1 ,mem_sp_remote_key_recv_count 
+6338 1fe60a20 sub pdata ,0x20 ,contw 
+6339 2421634a nbranch parse_lmp_encapsulated_payload_reject ,positive 
+633a d8a009c2 arg mem_sp_pubkey_remote ,contw 
+633b 98a08a00 iadd contw ,contw 
+633c 6ff0054e fetch 8 ,mem_rxbuf + 1 
+633d e7f00005 istore 8 ,contw 
+633e 6ff00556 fetch 8 ,mem_rxbuf + 9 
+633f e7f00005 istore 8 ,contw 
+6340 6fe209b3 fetch 1 ,mem_sp_remote_key_recv_count 
+6341 1fe0fe10 increase 16 ,pdata 
+6342 67e209b3 store 1 ,mem_sp_remote_key_recv_count 
+6343 c0986219 bne encapsulated_len_p192 ,accept_lmp_msg 
+
+parse_lmp_encapsulated_payload_completed:
+6344 204066de call check_localsm 
+6345 2020e219 branch accept_lmp_msg ,true 
+6346 7009b401 jam sp_key_valid ,mem_sp_remote_key_invalid 
+6347 7009aa02 jam sp_stat_key_generate ,mem_sp_state 
+6348 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+6349 20206219 branch accept_lmp_msg 
+
+parse_lmp_encapsulated_payload_reject:
+634a 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+634b 20206134 branch reject_lmp_packet 
+
+parse_lmp_accepted_encapsulated_payload:
+634c 6fe209b2 fetch 1 ,mem_sp_local_key_send_count 
+634d c0186350 beq encapsulated_len_p192 ,parse_lmp_encapsulated_payload_all_accepted 
+634e 70007c3e jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+634f 202060e8 branch parse_rx_done 
+
+parse_lmp_encapsulated_payload_all_accepted:
+6350 204066de call check_localsm 
+6351 2020e359 branch parse_lmp_encapsulated_payload_all_accepted_master ,true 
+6352 6fe24634 fetch 1 ,mem_ssp_mode_flag 
+6353 c0016357 beq ssp_mode_passkey_entry_flag ,parse_lmp_encapsulated_payload_all_accepted_get_passkey 
+6354 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+6355 7009aa04 jam sp_stat_commit_calc ,mem_sp_state 
+6356 202060e8 branch parse_rx_done 
+
+parse_lmp_encapsulated_payload_all_accepted_get_passkey:
+6357 700a9536 jam bt_evt_bt_get_passkey ,mem_fifo_temp 
+6358 20207bab branch ui_ipc_send_event 
+
+parse_lmp_encapsulated_payload_all_accepted_master:
+6359 202060e8 branch parse_rx_done 
+
+parse_lmp_simple_pairing_number:
+635a 6fe209ab fetch 1 ,mem_master_sp_state 
+635b c003e35e beq sp_stat_random_send ,parse_lmp_simple_pairing_number_master 
+635c 6fe209aa fetch 1 ,mem_sp_state 
+635d c083636a bne sp_stat_random_recv ,parse_lmp_simple_pairing_number_reject 
+
+parse_lmp_simple_pairing_number_master:
+635e d8a00a2a arg mem_sp_random_remote ,contw 
+635f 6ff0054e fetch 8 ,mem_rxbuf + 1 
+6360 e7f00005 istore 8 ,contw 
+6361 6ff00556 fetch 8 ,mem_rxbuf + 9 
+6362 e7f00005 istore 8 ,contw 
+6363 204066de call check_localsm 
+6364 2020e368 branch parse_lmp_simple_pairing_number_master0 ,true 
+6365 7009aa07 jam sp_stat_random_send ,mem_sp_state 
+6366 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+6367 20206219 branch accept_lmp_msg 
+
+parse_lmp_simple_pairing_number_master0:
+6368 7009ab04 jam sp_stat_commit_calc ,mem_master_sp_state 
+6369 2020758d branch master_set_mem_master_sp_flag 
+
+parse_lmp_simple_pairing_number_reject:
+636a 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+636b 20206134 branch reject_lmp_packet 
+
+parse_dhkey_check:
+636c 6fe209ab fetch 1 ,mem_master_sp_state 
+636d c005e370 beq sp_stat_confirm_send ,parse_dhkey_check_master 
+636e 6fe209aa fetch 1 ,mem_sp_state 
+636f c084637f bne sp_stat_confirm_recv ,parse_lmp_dhkey_check_reject 
+
+parse_dhkey_check_master:
+6370 d8a00a5a arg mem_sp_check_result ,contw 
+6371 d8c0054e arg mem_rxbuf + 1 ,contr 
+6372 20407c9a call memcpy16 
+6373 204066de call check_localsm 
+6374 2020e37c branch parse_dhkey_check_master0 ,true 
+6375 6fe24634 fetch 1 ,mem_ssp_mode_flag 
+6376 c000e381 beq ssp_mode_ssp_pin_flag ,number_comparison_mode 
+
+number_comparison_successed:
+6377 70463300 jam 0 ,mem_flag_mode_ssp_pin 
+6378 7009aa09 jam sp_stat_confirm_check ,mem_sp_state 
+6379 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+637a 70007d41 jam lmp_dhkey_check ,mem_lmi_opcode2 
+637b 202060e8 branch parse_rx_done 
+
+parse_dhkey_check_master0:
+637c 7009ab09 jam sp_stat_confirm_check ,mem_master_sp_state 
+637d 7009ad01 jam sp_flag_commit ,mem_master_sp_flag 
+637e 202060e8 branch parse_rx_done 
+
+parse_lmp_dhkey_check_reject:
+637f 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+6380 20206134 branch reject_lmp_packet 
+
+number_comparison_mode:
+6381 6fe24633 fetch 1 ,mem_flag_mode_ssp_pin 
+6382 c283e386 bbit1 flag_mode_ssp_pin_reviceve_comparison_bit ,comparison_result 
+6383 79207e06 set1 flag_mode_ssp_pin_recieve_dhkey_bit ,pdata 
+6384 67e24633 store 1 ,mem_flag_mode_ssp_pin 
+6385 20600000 rtn 
+
+comparison_result:
+6386 c2806377 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+6387 70463300 jam 0 ,mem_flag_mode_ssp_pin 
+6388 2020637f branch parse_lmp_dhkey_check_reject 
+
+parse_lmp_clkoffset_res:
+6389 202060e8 branch parse_rx_done 
+
+parse_lmp_encryption_mode_req:
+638a 6fe2016b fetch 1 ,mem_connection_options 
+638b 793ffe01 set0 connection_encrypt 
+638c 67e2016b store 1 ,mem_connection_options 
+638d 20406219 call accept_lmp_msg 
+638e 24748000 nrtn master 
+638f 6fe2054e fetch 1 ,mem_rxbuf + 1 
+6390 6842004b fetcht 1 ,mem_op 
+6391 793a0404 setflag blank ,op_stop_enc ,temp 
+6392 7d3a0405 nsetflag blank ,op_start_enc ,temp 
+6393 6042004b storet 1 ,mem_op 
+6394 20600000 rtn 
+
+parse_lmp_features_res:
+6395 6850054e fetcht 8 ,mem_rxbuf + 1 
+
+parse_lmp_features_res_not_hci:
+6396 6fe20055 fetch 1 ,mem_conn_sm 
+6397 c1818000 rtnne conn_sm_wait_features_res 
+6398 6fe2016b fetch 1 ,mem_connection_options 
+6399 c302639c bbit0 connection_feature_ext ,parse_lmp_send_conn 
+639a 70005514 jam conn_sm_send_features_ext ,mem_conn_sm 
+639b 20600000 rtn 
+
+parse_lmp_send_conn:
+639c 70005504 jam conn_sm_send_conn_req ,mem_conn_sm 
+639d 20600000 rtn 
+
+parse_lmp_test_activate:
+639e 6fe2017d fetch 1 ,mem_debug_config 
+639f 67e20159 store 1 ,mem_test_mode_old_debug_config 
+63a0 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+63a1 70007d38 jam lmp_test_activate ,mem_lmi_opcode2 
+63a2 20600000 rtn 
+
+parse_lmp_test_control:
+63a3 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+63a4 70007d39 jam lmp_test_control ,mem_lmi_opcode2 
+63a5 18007209 force 9 ,loopcnt 
+63a6 d8c0054e arg mem_rxbuf + 1 ,contr 
+63a7 d8a00150 arg mem_temp_payload ,contw 
+
+parse_lmp_test_xor:
+63a8 efe20006 ifetch 1 ,contr 
+63a9 1fe2fe55 xor_into 0x55 ,pdata 
+63aa e7e20005 istore 1 ,contw 
+63ab c20063a8 loop parse_lmp_test_xor 
+63ac 6fe20150 fetch 1 ,test_mode_scenario 
+63ad 6842014f fetcht 1 ,mem_tester_emulate 
+63ae 793f8407 set0 tester_no_whitening ,temp 
+63af 793f8404 set0 tester_pattern_test ,temp 
+63b0 c07fe3bc beq exit_test_mode ,parse_lmp_test_control_exit 
+63b1 c00063d5 beq pause_test_mode ,parse_lmp_test_control_pause 
+63b2 c002e3c9 beq closed_loop_back_acl ,parse_lmp_test_control_loopback 
+63b3 c003e3c8 beq acl_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+63b4 c00363c9 beq closed_loop_back_sco ,parse_lmp_test_control_loopback 
+63b5 c00463c8 beq sco_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+63b6 c000e3c1 beq zero_pattern ,parse_lmp_test_control_pattern 
+63b7 c00163c1 beq one_pattern ,parse_lmp_test_control_pattern 
+63b8 c001e3c1 beq alt_pattern ,parse_lmp_test_control_pattern 
+63b9 c004e3c1 beq alt2_pattern ,parse_lmp_test_control_pattern 
+63ba c00263c1 beq pseudorandom ,parse_lmp_test_control_pattern 
+63bb 20600000 rtn 
+
+parse_lmp_test_control_exit:
+63bc 6fe2014f fetch 1 ,mem_tester_emulate 
+63bd 79207e03 set1 tester_exit ,pdata 
+63be 79207e02 set1 tester_change ,pdata 
+63bf 67e2014f store 1 ,mem_tester_emulate 
+63c0 20600000 rtn 
+
+parse_lmp_test_control_pattern:
+63c1 79200404 set1 tester_pattern_test ,temp 
+63c2 70017e05 jam 5 ,mem_lch_code 
+63c3 6fe40157 fetch 2 ,test_mode_data_length 
+63c4 98007200 iforce loopcnt 
+63c5 67e4015d store 2 ,mem_len 
+63c6 d8a0054d arg mem_rxbuf ,contw 
+63c7 20407d4e call pn9 
+
+parse_lmp_test_control_loopback_nowhite:
+63c8 79200407 set1 tester_no_whitening ,temp 
+
+parse_lmp_test_control_loopback:
+63c9 79200402 set1 tester_change ,temp 
+63ca 18007e00 force 0 ,pdata 
+63cb 67e2000b store 1 ,mem_slave_rcvcnt 
+63cc 67e400f8 store 2 ,mem_tst_pktcnt_crc 
+63cd 67e400fa store 2 ,mem_tst_pktcnt_dmh 
+63ce 67e400f6 store 2 ,mem_tst_pktcnt_hec 
+63cf 67e400f4 store 2 ,mem_tst_pktcnt_sync 
+63d0 6fe20151 fetch 1 ,test_mode_hopping_mode 
+63d1 2fe1fe00 compare fixed_freq ,pdata ,0xff 
+63d2 79208406 setflag true ,tester_fixed_freq ,temp 
+63d3 6042014f storet 1 ,mem_tester_emulate 
+63d4 20600000 rtn 
+
+parse_lmp_test_control_pause:
+63d5 793f8011 set0 mark_testmode ,mark 
+63d6 70014f00 jam 0 ,mem_tester_emulate 
+63d7 6fe2017d fetch 1 ,mem_debug_config 
+63d8 793ffe06 set0 debug_tx_pattern ,pdata 
+63d9 67e2017d store 1 ,mem_debug_config 
+63da 20600000 rtn 
+
+lmp_copy_rand:
+63db d8c0054e arg mem_rxbuf + 1 ,contr 
+63dc d8a0055e arg mem_random_number ,contw 
+63dd 20207c9a branch memcpy16 
+
+lmp_generate_key:
+63de 70007c09 jam lmp_comb_key ,mem_lmo_opcode2 
+63df 20600000 rtn 
+
+lmp_start_encryption:
+63e0 24748000 nrtn master 
+63e1 70007c11 jam lmp_start_encryption_req ,mem_lmo_opcode2 
+63e2 20600000 rtn 
+
+lmp_accept_inrand:
+63e3 da2040a0 arg mem_lap ,rega 
+63e4 20407114 call generate_kinit 
+63e5 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+63e6 70007d08 jam lmp_in_rand ,mem_lmi_opcode2 
+63e7 20600000 rtn 
+
+lmp_disconnect:
+63e8 7000720a jam 10 ,mem_conn_timer 
+63e9 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+63ea 7004c616 jam local_host ,mem_disconn_reason_send 
+63eb 20600000 rtn 
+
+send_lmp:
+63ec 471f4027 bpatchx patch27_6 ,mem_patch27 
+63ed 78547c00 disable user 
+63ee 204066a3 call lmo_fifo_process 
+63ef 6fe20048 fetch 1 ,mem_lmp_to_send 
+63f0 207a0000 rtn blank 
+63f1 c283e421 bbit1 7 ,send_lmp_escape 
+
+send_lmp0:
+63f2 c000e551 beq lmp_name_req ,send_lmp_name_req 
+63f3 c00164c6 beq lmp_name_res ,send_lmp_name_res 
+63f4 c001e42c beq lmp_accepted ,send_lmp_accepted 
+63f5 c0026442 beq lmp_not_accepted ,send_lmp_not_accepted 
+63f6 c013e5bd beq lmp_features_req ,send_lmp_features_req 
+63f7 c01464ea beq lmp_features_res ,send_lmp_features_res 
+63f8 c01864d6 beq lmp_timing_accuracy_res ,send_lmp_timing_accuracy_res 
+63f9 c012e5b8 beq lmp_version_req ,send_lmp_version_req 
+63fa c01364e5 beq lmp_version_res ,send_lmp_version_res 
+63fb c018e5a5 beq lmp_setup_complete ,send_lmp_setup_complete 
+63fc c01be54c beq lmp_supervision_timeout ,send_lmp_superto 
+63fd c019e53e beq lmp_host_connection_req ,send_lmp_no_payload 
+63fe c004663b beq lmp_in_rand ,send_lmp_inrand 
+63ff c004e631 beq lmp_comb_key ,send_lmp_comb_key 
+6400 c005e646 beq lmp_au_rand ,send_lmp_aurand 
+6401 c006664f beq lmp_sres ,send_lmp_sres 
+6402 c007e544 beq lmp_encryption_mode_req ,send_lmp_encryption_mode_req 
+6403 c0086674 beq lmp_encryption_key_size_req ,send_lmp_encryption_key_size_req 
+6404 c008e66a beq lmp_start_encryption_req ,send_lmp_start_encryption 
+6405 c003e534 beq lmp_detach ,send_lmp_detach 
+6406 c0156560 beq lmp_quality_of_service_req ,send_lmp_quality_of_service_req 
+6407 c0056561 beq lmp_unit_key ,send_lmp_unit_key 
+6408 c00fe59e beq lmp_incr_power_req ,send_lmp_inc_power 
+6409 c00364db beq lmp_clkoffset_res ,send_lmp_clkoffset_res 
+640a c010e541 beq lmp_max_power ,send_lmp_nopayload_reply 
+640b c016e594 beq lmp_max_slot ,send_lmp_max_slot 
+640c c0176599 beq lmp_max_slot_req ,send_lmp_max_slot_req 
+640d c0116541 beq lmp_min_power ,send_lmp_nopayload_reply 
+640e c01a6562 beq lmp_slot_offset ,send_lmp_slot_offset 
+640f c009e577 beq lmp_switch_req ,send_lmp_switch_req 
+6410 c00be586 beq lmp_sniff_req ,send_lmp_sniff_req 
+6411 c0096671 beq lmp_stop_encryption_req ,send_lmp_stop_encryption_req 
+6412 c017e58c beq lmp_timing_accuracy_req ,send_lmp_timing_accuracy_req 
+6413 c00c6591 beq lmp_unsniff_req ,send_lmp_unsniff_req 
+6414 c01ee5e1 beq lmp_encapsulated_header ,send_lmp_encapsulated_header 
+6415 c01f65ed beq lmp_encapsulated_payload ,send_lmp_encapsulated_payload 
+6416 c01fe5ff beq lmp_simple_pairing_confirm ,send_lmp_simple_pairing_comfirm 
+6417 c0206609 beq lmp_simple_pairing_number ,send_lmp_simple_pairing_number 
+6418 c020e61e beq lmp_dhkey_check ,send_lmp_dhkey_check 
+6419 c011e62d beq lmp_auto_rate ,send_lmp_auto_rate 
+641a c01de628 beq lmp_enc_key_size_mask_res ,send_lmp_enc_key_size_mask_res 
+641b c002e62e beq lmp_clkoffset_req ,send_lmp_clkoffset_req 
+641c c014e62f beq lmp_quality_of_service ,send_lmp_quality_of_service 
+641d c01c6630 beq lmp_test_activate ,send_lmp_test_activate 
+641e c01ce557 beq lmp_test_control ,send_lmp_test_control 
+
+send_lmp_error:
+641f 20204a8b branch assert 
+6420 20600000 rtn 
+
+send_lmp_escape:
+6421 c040e44f beq lmp_ext_accepted ,send_lmpext_accepted 
+6422 c042647b beq lmp_ext_features_res ,send_lmpext_features_res 
+6423 c0416458 beq lmp_not_accepted_ext ,send_lmpext_not_accepted 
+6424 c041e4ef beq lmp_ext_features_req ,send_lmpext_features_req 
+6425 c045e4fa beq lmp_packet_type_table_req ,send_lmpext_packet_type_table_req 
+6426 c04be530 beq lmp_pause_encryption_req ,send_lmpext_pause_encryption_req 
+6427 c04ce4b7 beq lmp_io_cap_req ,send_lmp_io_cap_req 
+6428 c04d6486 beq lmp_io_cap_res ,send_lmpext_io_cap_res 
+6429 c04ae4bc beq lmp_sniff_subrating_req ,send_lmpext_sniff_subrating_req 
+642a c04b64bd beq lmp_sniff_subrating_res ,send_lmpext_sniff_subrating_res 
+642b 20204a8b branch assert 
+
+send_lmp_accepted:
+642c 18007e02 force 2 ,pdata 
+642d 2040667a call msg_send_lmp 
+642e 6fe20049 fetch 1 ,mem_lmi_opcode 
+642f e7e20005 istore 1 ,contw 
+6430 20406689 call send_lmp_follow 
+6431 471fc027 bpatchx patch27_7 ,mem_patch27 
+6432 6fe20049 fetch 1 ,mem_lmi_opcode 
+6433 c0046462 beq lmp_in_rand ,send_lmp_accepted_inrand 
+6434 c007e466 beq lmp_encryption_mode_req ,send_lmp_accepted_enc_mode 
+6435 c0086471 beq lmp_encryption_key_size_req ,send_lmp_accepted_enc_key 
+6436 c00be441 beq lmp_sniff_req ,send_lmp_accept_sniff_req 
+6437 c019e474 beq lmp_host_connection_req ,send_lmp_accepted_connection 
+6438 c020e47a beq lmp_dhkey_check ,send_lmp_accept_dhkey_check 
+6439 c008e43b beq lmp_start_encryption_req ,send_create_conn_start_l2cap_timer_sm 
+643a 20600000 rtn 
+
+send_create_conn_start_l2cap_timer_sm:
+643b 6fe20055 fetch 1 ,mem_conn_sm 
+643c 207a0000 rtn blank 
+643d 7000551b jam conn_sm_wait_done ,mem_conn_sm 
+643e 5800000c setarg timer_enpt_waite 
+643f d8e00007 arg enpt_delay_timer ,queue 
+6440 20207ce3 branch timer_init 
+
+send_lmp_accept_sniff_req:
+6441 202046c2 branch sniff_init 
+
+send_lmp_not_accepted:
+6442 18007e03 force 3 ,pdata 
+6443 2040667a call msg_send_lmp 
+6444 6fe20049 fetch 1 ,mem_lmi_opcode 
+6445 c005e44a beq lmp_au_rand ,send_not_accept_aurand 
+6446 e7e20005 istore 1 ,contw 
+6447 6fe2004a fetch 1 ,mem_lmo_reason 
+6448 e7e20005 istore 1 ,contw 
+6449 20206689 branch send_lmp_follow 
+
+send_not_accept_aurand:
+644a e7e20005 istore 1 ,contw 
+644b 6fe2004a fetch 1 ,mem_lmo_reason 
+644c e7e20005 istore 1 ,contw 
+644d d84004d1 arg mem_sres_tid ,temp 
+644e 202066c4 branch special_tid_store 
+
+send_lmpext_accepted:
+644f 18000e04 force 4 ,queue 
+6450 20406682 call send_lmpext 
+6451 5800007f setarg lmp_escape 
+6452 e7e20005 istore 1 ,contw 
+6453 6fe20049 fetch 1 ,mem_lmi_opcode 
+6454 793ffe07 set0 7 ,pdata 
+6455 e7e20005 istore 1 ,contw 
+6456 6fe20049 fetch 1 ,mem_lmi_opcode 
+6457 20206689 branch send_lmp_follow 
+
+send_lmpext_not_accepted:
+6458 18000e05 force 5 ,queue 
+6459 20406682 call send_lmpext 
+645a 5800007f setarg lmp_escape 
+645b e7e20005 istore 1 ,contw 
+645c 6fe20049 fetch 1 ,mem_lmi_opcode 
+645d 793ffe07 set0 7 ,pdata 
+645e e7e20005 istore 1 ,contw 
+645f 6fe2004a fetch 1 ,mem_lmo_reason 
+6460 e7e20005 istore 1 ,contw 
+6461 20206689 branch send_lmp_follow 
+
+send_lmp_accepted_inrand:
+6462 2040444b call clear_linkkey 
+6463 204066d5 call tid_check 
+6464 20608000 rtn true 
+6465 202063de branch lmp_generate_key 
+
+send_lmp_accepted_enc_mode:
+6466 6fe2004b fetch 1 ,mem_op 
+6467 c282e46d bbit1 op_start_enc ,send_lmp_accepted_enc_start 
+6468 c4020000 rtnbit0 op_stop_enc 
+6469 70007c12 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+646a 793ffe04 set0 op_stop_enc ,pdata 
+646b 204066cd call tid_reply 
+646c 2020646f branch send_lmp_accepted_enc_exit 
+
+send_lmp_accepted_enc_start:
+646d 70007c10 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+646e 793ffe05 set0 op_start_enc ,pdata 
+
+send_lmp_accepted_enc_exit:
+646f 67e2004b store 1 ,mem_op 
+6470 20600000 rtn 
+
+send_lmp_accepted_enc_key:
+6471 204066de call check_localsm 
+6472 2020e3e0 branch lmp_start_encryption ,true 
+6473 20600000 rtn 
+
+send_lmp_accepted_connection:
+6474 70007c8b jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+6475 6fe204cd fetch 1 ,mem_lmp_conn_state 
+6476 79207e00 set1 received_conn_req ,pdata 
+6477 67e204cd store 1 ,mem_lmp_conn_state 
+6478 700a9501 jam bt_evt_bb_connected ,mem_fifo_temp 
+6479 20207bab branch ui_ipc_send_event 
+
+send_lmp_accept_dhkey_check:
+647a 20600000 rtn 
+
+send_lmpext_features_res:
+647b 18000e0c force 12 ,queue 
+647c 20406682 call send_lmpext 
+647d 58000001 setarg 0x01 
+647e e7e20005 istore 1 ,contw 
+647f 6fe404ca fetch 2 ,mem_lmpext_ssp_enable 
+6480 e7e40005 istore 2 ,contw 
+6481 58000000 setarg 0 
+6482 e7e60005 istore 3 ,contw 
+6483 58000000 setarg 0x00 
+6484 e7e80005 istore 4 ,contw 
+6485 20206692 branch send_lmp_reply 
+
+send_lmpext_io_cap_res:
+6486 18000e05 force 5 ,queue 
+6487 20406682 call send_lmpext 
+6488 6fe6462d fetch 3 ,mem_sp_iocap_local 
+6489 e7e60005 istore 3 ,contw 
+648a 20406692 call send_lmp_reply 
+648b 70463701 jam flag_pairing_state_pairing ,mem_flag_pairing_state 
+648c 6fe2462d fetch 1 ,mem_sp_iocap_local 
+648d c000e497 beq display_yesno ,responder_iocap_display_yesno 
+648e c0016491 beq keyboard_only ,responder_iocap_keyboard_only 
+648f c001e49d beq no_input_no_output ,responder_iocap_no_input_no_output 
+6490 20600000 rtn 
+
+responder_iocap_keyboard_only:
+6491 6fe24630 fetch 1 ,mem_sp_iocap_remote 
+6492 c00064a9 beq display_only ,responder_iocap_keyboard_only_initiator_iocap_display_only 
+6493 c000e4a9 beq display_yesno ,responder_iocap_keyboard_only_initiator_iocap_display_yesno 
+6494 c00164a9 beq keyboard_only ,responder_iocap_keyboard_only_initiator_iocap_keyboard_only 
+6495 c001e4a3 beq no_input_no_output ,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output 
+6496 20600000 rtn 
+
+responder_iocap_display_yesno:
+6497 6fe24630 fetch 1 ,mem_sp_iocap_remote 
+6498 c00064a3 beq display_only ,responder_iocap_display_yesno_initiator_iocap_display_only 
+6499 c000e4a7 beq display_yesno ,responder_iocap_display_yesno_initiator_iocap_display_yesno 
+649a c00164a9 beq keyboard_only ,responder_iocap_display_yesno_initiator_iocap_keyboard_only 
+649b c001e4a3 beq no_input_no_output ,responder_iocap_display_yesno_initiator_iocap_no_input_no_output 
+649c 20600000 rtn 
+
+responder_iocap_no_input_no_output:
+649d 6fe24630 fetch 1 ,mem_sp_iocap_remote 
+649e c00064a3 beq display_only ,responder_iocap_no_input_no_output_initiator_iocap_display_only 
+649f c000e4a3 beq display_yesno ,responder_iocap_no_input_no_output_initiator_iocap_display_yesno 
+64a0 c00164a3 beq keyboard_only ,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only 
+64a1 c001e4a3 beq no_input_no_output ,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output 
+64a2 20600000 rtn 
+
+responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
+
+responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
+
+responder_iocap_display_yesno_initiator_iocap_display_only:
+
+responder_iocap_no_input_no_output_initiator_iocap_display_only:
+
+responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
+
+responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
+
+responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
+
+set_ssp_mode_justwork:
+64a3 70463403 jam ssp_mode_just_work_flag ,mem_ssp_mode_flag 
+64a4 6fe2452e fetch 1 ,mem_classic_bt_flag 
+64a5 c2804d64 bbit1 flag_ssp_reject_justwork ,app_bt_disconnect 
+64a6 20600000 rtn 
+
+responder_iocap_display_yesno_initiator_iocap_display_yesno:
+
+set_ssp_mode_numeric_comparison:
+64a7 70463401 jam ssp_mode_ssp_pin_flag ,mem_ssp_mode_flag 
+64a8 20600000 rtn 
+
+responder_iocap_keyboard_only_initiator_iocap_display_yesno:
+
+responder_iocap_keyboard_only_initiator_iocap_keyboard_only:
+
+responder_iocap_keyboard_only_initiator_iocap_display_only:
+
+responder_iocap_display_yesno_initiator_iocap_keyboard_only:
+
+set_ssp_mode_passkey:
+64a9 70463402 jam ssp_mode_passkey_entry_flag ,mem_ssp_mode_flag 
+64aa 20600000 rtn 
+
+classic_bt_set_reject_justwork_flag:
+64ab d8e00000 arg flag_ssp_reject_justwork ,queue 
+64ac 202064af branch classic_bluetooth_set_flag 
+
+classic_bt_clr_reject_justwork_flag:
+64ad d8e00000 arg flag_ssp_reject_justwork ,queue 
+64ae 202064b3 branch classic_bluetooth_clr_flag 
+
+classic_bluetooth_set_flag:
+64af 6fe2452e fetch 1 ,mem_classic_bt_flag 
+64b0 f9207e00 qset1 pdata 
+64b1 67e2452e store 1 ,mem_classic_bt_flag 
+64b2 20600000 rtn 
+
+classic_bluetooth_clr_flag:
+64b3 6fe2452e fetch 1 ,mem_classic_bt_flag 
+64b4 f93ffe00 qset0 pdata 
+64b5 67e2452e store 1 ,mem_classic_bt_flag 
+64b6 20600000 rtn 
+
+send_lmp_io_cap_req:
+64b7 18000e05 force 5 ,queue 
+64b8 20406682 call send_lmpext 
+64b9 6fe6462d fetch 3 ,mem_sp_iocap_local 
+64ba e7e60005 istore 3 ,contw 
+64bb 20206694 branch send_lmp_request 
+
+send_lmpext_sniff_subrating_req:
+64bc 20600000 rtn 
+
+send_lmpext_sniff_subrating_res:
+64bd 18000e09 force 9 ,queue 
+64be 20406682 call send_lmpext 
+64bf 6fe20095 fetch 1 ,mem_subsniff_rate 
+64c0 e7e20005 istore 1 ,contw 
+64c1 6fe40096 fetch 2 ,mem_subsniff_tcmax 
+64c2 e7e40005 istore 2 ,contw 
+64c3 6fe80091 fetch 4 ,mem_subsniff_instant 
+64c4 e7e80005 istore 4 ,contw 
+64c5 20206692 branch send_lmp_reply 
+
+send_lmp_name_res:
+64c6 18007e11 force 17 ,pdata 
+64c7 2040667a call msg_send_lmp 
+64c8 6fe20049 fetch 1 ,mem_lmi_opcode 
+64c9 1fe20400 copy pdata ,temp 
+64ca c00064ce beq 0x00 ,send_lmp_name_res_offset_ok 
+64cb c00764ce beq 0x0e ,send_lmp_name_res_offset_ok 
+64cc c00e64ce beq 0x1c ,send_lmp_name_res_offset_ok 
+64cd 20600000 rtn 
+
+send_lmp_name_res_offset_ok:
+64ce e7e20005 istore 1 ,contw 
+64cf 6fe244e7 fetch 1 ,mem_local_name_length 
+64d0 e7e20005 istore 1 ,contw 
+64d1 df20000e arg 14 ,loopcnt 
+64d2 580044e8 setarg mem_local_name 
+64d3 98408c00 iadd temp ,contr 
+64d4 20407cdc call memcpy 
+64d5 20206692 branch send_lmp_reply 
+
+send_lmp_timing_accuracy_res:
+64d6 18007e03 force 3 ,pdata 
+64d7 2040667a call msg_send_lmp 
+64d8 58000114 setarg 0x0114 
+64d9 e7e40005 istore 2 ,contw 
+64da 20206692 branch send_lmp_reply 
+
+send_lmp_clkoffset_res:
+64db 18007e03 force 3 ,pdata 
+64dc 2040667a call msg_send_lmp 
+64dd 6fe80163 fetch 4 ,mem_clke_bt 
+64de 9c467e00 isub clkn_bt ,pdata 
+64df 2034e4e1 branch send_lmp_clkoffset_res_master ,master 
+64e0 1fe67e00 sub pdata ,0 ,pdata 
+
+send_lmp_clkoffset_res_master:
+64e1 1feb7e00 rshift2 pdata ,pdata 
+64e2 793ffe0f set0 15 ,pdata 
+64e3 e7e40005 istore 2 ,contw 
+64e4 20206692 branch send_lmp_reply 
+
+send_lmp_version_res:
+64e5 18007e06 force 6 ,pdata 
+64e6 2040667a call msg_send_lmp 
+64e7 6fea44e2 fetch 5 ,mem_lmp_version 
+64e8 e7ea0005 istore 5 ,contw 
+64e9 20206692 branch send_lmp_reply 
+
+send_lmp_features_res:
+64ea 18007e09 force 9 ,pdata 
+64eb 2040667a call msg_send_lmp 
+64ec 6ff04098 fetch 8 ,mem_features 
+64ed e7f00005 istore 8 ,contw 
+64ee 20206692 branch send_lmp_reply 
+
+send_lmpext_features_req:
+64ef 18000e0c force 12 ,queue 
+64f0 20406682 call send_lmpext 
+64f1 58000001 setarg 0x01 
+64f2 e7e20005 istore 1 ,contw 
+64f3 6fe404ca fetch 2 ,mem_lmpext_ssp_enable 
+64f4 e7e40005 istore 2 ,contw 
+64f5 58000000 setarg 0 
+64f6 e7e60005 istore 3 ,contw 
+64f7 58000000 setarg 0x00 
+64f8 e7e80005 istore 4 ,contw 
+64f9 20206694 branch send_lmp_request 
+
+send_lmpext_packet_type_table_req:
+64fa 18000e03 force 3 ,queue 
+64fb 20406682 call send_lmpext 
+64fc 6fe2415b fetch 1 ,mem_ptt 
+64fd e7e20005 istore 1 ,contw 
+64fe 78547c00 disable user 
+64ff 20406694 call send_lmp_request 
+6500 24740000 nrtn user 
+6501 24748000 nrtn master 
+6502 6fe240d8 fetch 1 ,mem_afh_cfg 
+6503 c4000000 rtnbit0 afh_cfg_on 
+6504 20406514 call afh_init 
+6505 2020651e branch afh_open_all_channels 
+
+ssp_enable:
+6506 47204028 bpatchx patch28_0 ,mem_patch28 
+6507 6fe2409e fetch 1 ,mem_features + 6 
+6508 79207e03 set1 param_featrue_ssp ,pdata 
+6509 67e2409e store 1 ,mem_features + 6 
+650a 58000101 setarg param_lmpext_ssp_enable 
+650b 67e404ca store 2 ,mem_lmpext_ssp_enable 
+650c 20600000 rtn 
+
+ssp_disable:
+650d 4720c028 bpatchx patch28_1 ,mem_patch28 
+650e 6fe2409e fetch 1 ,mem_features + 6 
+650f 793ffe03 set0 param_featrue_ssp ,pdata 
+6510 67e2409e store 1 ,mem_features + 6 
+6511 58000000 setarg 0 
+6512 67e404ca store 2 ,mem_lmpext_ssp_enable 
+6513 20600000 rtn 
+
+afh_init:
+6514 7040d803 jam 0x3 ,mem_afh_cfg 
+6515 58000000 setarg 0 
+6516 67e84142 store 4 ,mem_afh_timer 
+6517 d8a040da arg mem_afh_map_lo ,contw 
+6518 20406522 call afh_reset_map 
+6519 d8a040e7 arg mem_afh_map_new ,contw 
+651a 20406522 call afh_reset_map 
+651b d8a04146 arg mem_afh_classify_channel_map ,contw 
+651c 20406522 call afh_reset_map 
+651d 20206529 branch afh_clear_error_counter 
+
+afh_open_all_channels:
+651e d8a040e7 arg mem_afh_map_new ,contw 
+651f 20406522 call afh_reset_map 
+6520 20406529 call afh_clear_error_counter 
+6521 2020652c branch afh_set_send_flag 
+
+afh_reset_map:
+6522 58ffffff setarg 0xffffff 
+6523 e7e60005 istore 3 ,contw 
+6524 e7e60005 istore 3 ,contw 
+6525 e7e60005 istore 3 ,contw 
+6526 5800007f setarg 0x7f 
+6527 e7e20005 istore 1 ,contw 
+6528 20600000 rtn 
+
+afh_clear_error_counter:
+6529 58000000 setarg 0 
+652a 67e440d6 store 2 ,mem_afh_error_total 
+652b 20600000 rtn 
+
+afh_set_send_flag:
+652c 6fe240d8 fetch 1 ,mem_afh_cfg 
+652d 79207e02 set1 send_lmp_set_afh ,pdata 
+652e 67e240d8 store 1 ,mem_afh_cfg 
+652f 20600000 rtn 
+
+send_lmpext_pause_encryption_req:
+6530 18000e02 force 2 ,queue 
+6531 20406682 call send_lmpext 
+6532 2434e692 nbranch send_lmp_reply ,master 
+6533 20206694 branch send_lmp_request 
+
+send_lmp_detach:
+6534 18007e02 force 2 ,pdata 
+6535 2040667a call msg_send_lmp 
+6536 6fe204c6 fetch 1 ,mem_disconn_reason_send 
+6537 e7e20005 istore 1 ,contw 
+6538 20406694 call send_lmp_request 
+
+prepare_disconnect:
+6539 6fe2004b fetch 1 ,mem_op 
+653a 79207e03 set1 op_disconn ,pdata 
+653b 67e2004b store 1 ,mem_op 
+653c 70007232 jam 50 ,mem_conn_timer 
+653d 20600000 rtn 
+
+send_lmp_no_payload:
+653e 18007e01 force 1 ,pdata 
+653f 2040667a call msg_send_lmp 
+6540 20206694 branch send_lmp_request 
+
+send_lmp_nopayload_reply:
+6541 18007e01 force 1 ,pdata 
+6542 2040667a call msg_send_lmp 
+6543 20206692 branch send_lmp_reply 
+
+send_lmp_encryption_mode_req:
+6544 18007e02 force 2 ,pdata 
+6545 2040667a call msg_send_lmp 
+6546 6fe2004c fetch 1 ,mem_state_map 
+6547 2fec0002 isolate0 smap_encryption ,pdata 
+6548 7920fe00 setflag true ,0 ,pdata 
+6549 1fe17e01 and_into 1 ,pdata 
+654a e7e20005 istore 1 ,contw 
+654b 20206694 branch send_lmp_request 
+
+send_lmp_superto:
+654c 18007e03 force 3 ,pdata 
+654d 2040667a call msg_send_lmp 
+654e 6fe40051 fetch 2 ,mem_supervision_to 
+654f e7e40005 istore 2 ,contw 
+6550 20206694 branch send_lmp_request 
+
+send_lmp_name_req:
+6551 700072fa jam 250 ,mem_conn_timer 
+6552 18007e02 force 2 ,pdata 
+6553 2040667a call msg_send_lmp 
+6554 6fe20053 fetch 1 ,mem_name_offset 
+6555 e7e20005 istore 1 ,contw 
+6556 20206694 branch send_lmp_request 
+
+send_lmp_test_control:
+6557 18007e0a force 10 ,pdata 
+6558 2040667a call msg_send_lmp 
+6559 d8c00150 arg mem_temp_payload ,contr 
+655a 18007209 force 9 ,loopcnt 
+
+send_lmp_test_control_loop:
+655b efe20006 ifetch 1 ,contr 
+655c 1fe2fe55 xor_into 0x55 ,pdata 
+655d e7e20005 istore 1 ,contw 
+655e c200655b loop send_lmp_test_control_loop 
+655f 20206694 branch send_lmp_request 
+
+send_lmp_quality_of_service_req:
+6560 20206694 branch send_lmp_request 
+
+send_lmp_unit_key:
+6561 20206694 branch send_lmp_request 
+
+send_lmp_slot_offset:
+6562 20748000 rtn master 
+6563 20404829 call calc_slot_offset 
+6564 18007e09 force 9 ,pdata 
+6565 2040667a call msg_send_lmp 
+6566 6fe4016f fetch 2 ,mem_slot_offset 
+6567 e7e40005 istore 2 ,contw 
+6568 6fe640a0 fetch 3 ,mem_lap 
+6569 e7e60005 istore 3 ,contw 
+656a 6fe240a3 fetch 1 ,mem_uap 
+656b e7e20005 istore 1 ,contw 
+656c 6fe440a4 fetch 2 ,mem_nap 
+656d e7e40005 istore 2 ,contw 
+656e c581e573 bmark0 mark_switch_initiated ,send_lmp_slot_offset_reply 
+656f 793f8003 set0 mark_switch_initiated ,mark 
+6570 20406694 call send_lmp_request 
+6571 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+6572 20600000 rtn 
+
+send_lmp_slot_offset_reply:
+6573 20406692 call send_lmp_reply 
+6574 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+6575 70007d13 jam lmp_switch_req ,mem_lmi_opcode2 
+6576 20600000 rtn 
+
+send_lmp_switch_req:
+6577 d8400200 arg 0x200 ,temp 
+6578 2034e57b branch switch_on_native ,master 
+6579 1d027e00 deposit clke_bt 
+657a 2020657c branch switch_slack 
+
+switch_on_native:
+657b 1c427e00 deposit clkn_bt 
+
+switch_slack:
+657c 1c227e00 deposit bt_clk 
+657d 9840fe00 iadd temp ,pdata 
+657e 1fe17ffc and_into 0x1fc ,pdata 
+657f 67e80034 store 4 ,mem_sniff_anchor 
+6580 18007e05 force 5 ,pdata 
+6581 2040667a call msg_send_lmp 
+6582 6fe80034 fetch 4 ,mem_sniff_anchor 
+6583 1fe37e00 rshift pdata ,pdata 
+6584 e7e80005 istore 4 ,contw 
+6585 20206694 branch send_lmp_request 
+
+send_lmp_sniff_req:
+6586 18007e0a force 10 ,pdata 
+6587 2040667a call msg_send_lmp 
+6588 d8c004d5 arg mem_sniff_payload ,contr 
+6589 eff20006 ifetch 9 ,contr 
+658a e7f20005 istore 9 ,contw 
+658b 20206694 branch send_lmp_request 
+
+send_lmp_timing_accuracy_req:
+658c 18007e03 force 3 ,pdata 
+658d 2040667a call msg_send_lmp 
+658e 58000114 setarg 0x0114 
+658f e7e40005 istore 2 ,contw 
+6590 20206694 branch send_lmp_request 
+
+send_lmp_unsniff_req:
+6591 18007e01 force 1 ,pdata 
+6592 2040667a call msg_send_lmp 
+6593 20206694 branch send_lmp_request 
+
+send_lmp_max_slot:
+6594 18007e02 force 2 ,pdata 
+6595 2040667a call msg_send_lmp 
+6596 6fe240d0 fetch 1 ,mem_max_slot 
+6597 e7e20005 istore 1 ,contw 
+6598 20206694 branch send_lmp_request 
+
+send_lmp_max_slot_req:
+6599 18007e02 force 2 ,pdata 
+659a 2040667a call msg_send_lmp 
+659b 58000005 setarg 0x05 
+659c e7e20005 istore 1 ,contw 
+659d 20206694 branch send_lmp_request 
+
+send_lmp_inc_power:
+659e 18007e02 force 2 ,pdata 
+659f 2040667a call msg_send_lmp 
+65a0 58000000 setarg 0x00 
+65a1 e7e20005 istore 1 ,contw 
+65a2 20206694 branch send_lmp_request 
+
+send_lmp_setup_complete_by_module:
+65a3 70007c2e jam lmp_max_slot_req ,mem_lmo_opcode2 
+65a4 20600000 rtn 
+
+send_lmp_setup_complete:
+65a5 6fe24092 fetch 1 ,mem_device_option 
+65a6 1fe67c0a sub pdata ,dvc_op_module ,null 
+65a7 2042e5a3 call send_lmp_setup_complete_by_module ,zero 
+65a8 6fe20030 fetch 1 ,mem_state 
+65a9 79207e04 set1 state_conn_comp ,pdata 
+65aa 67e20030 store 1 ,mem_state 
+65ab 1c427e00 copy clkn_bt ,pdata 
+65ac 67e804e5 store 4 ,mem_aurand_send_delay_time 
+65ad 6fe204cd fetch 1 ,mem_lmp_conn_state 
+65ae c281e5b6 bbit1 sent_setup_complete ,send_lmp_setup_complete_has_sent 
+65af 79207e03 set1 sent_setup_complete ,pdata 
+65b0 67e204cd store 1 ,mem_lmp_conn_state 
+65b1 700a9505 jam bt_evt_setup_complete ,mem_fifo_temp 
+65b2 20407bab call ui_ipc_send_event 
+65b3 18007e01 force 1 ,pdata 
+65b4 2040667a call msg_send_lmp 
+65b5 20206694 branch send_lmp_request 
+
+send_lmp_setup_complete_has_sent:
+65b6 70004800 jam 0 ,mem_lmp_to_send 
+65b7 20600000 rtn 
+
+send_lmp_version_req:
+65b8 18007e06 force 6 ,pdata 
+65b9 2040667a call msg_send_lmp 
+65ba 6fea44e2 fetch 5 ,mem_lmp_version 
+65bb e7ea0005 istore 5 ,contw 
+65bc 20206694 branch send_lmp_request 
+
+send_lmp_features_req:
+65bd 18007e09 force 9 ,pdata 
+65be 2040667a call msg_send_lmp 
+65bf 6ff04098 fetch 8 ,mem_features 
+65c0 e7f00005 istore 8 ,contw 
+65c1 20206694 branch send_lmp_request 
+
+sp_master_send_io_cap_get:
+65c2 7009ad01 jam sp_flag_commit ,mem_master_sp_flag 
+65c3 6fe24583 fetch 1 ,mem_sp_local_key_invalid 
+65c4 c1808000 rtnne sp_key_valid 
+65c5 7009ab13 jam sp_master_stat_start_done ,mem_master_sp_state 
+65c6 20600000 rtn 
+
+sp_master_send_io_cap_send:
+65c7 204066d1 call tid_initiate 
+65c8 70007c99 jam lmp_io_cap_req ,mem_lmo_opcode2 
+65c9 7009ab03 jam sp_stat_key_send ,mem_master_sp_state 
+65ca 20600000 rtn 
+
+sp_master_send_lmp_encapsulated_header:
+65cb 204066d1 call tid_initiate 
+65cc 70007c3d jam lmp_encapsulated_header ,mem_lmo_opcode2 
+65cd 7009ab07 jam sp_stat_random_send ,mem_master_sp_state 
+65ce 20600000 rtn 
+
+sp_master_commitment_compare:
+65cf da200a4a arg mem_sp_calc_result_high ,rega 
+65d0 da400a6a arg mem_sp_confirm_remote ,regb 
+65d1 df200010 arg 16 ,loopcnt 
+65d2 20407d63 call string_compare 
+65d3 2022e5d9 branch sp_master_commitment_compare_success ,zero 
+65d4 7009ab00 jam sp_stat_null ,mem_master_sp_state 
+65d5 2040758f call master_clear_mem_master_sp_flag 
+65d6 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+65d7 70007d40 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+65d8 20206134 branch reject_lmp_packet 
+
+sp_master_commitment_compare_success:
+65d9 7009ab0a jam sp_stat_confirm_calc ,mem_master_sp_state 
+65da 2040758d call master_set_mem_master_sp_flag 
+65db 70007d40 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+65dc 20206219 branch accept_lmp_msg 
+
+sp_master_send_lmp_simple_pairing_number:
+65dd 70007c40 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+65de 20600000 rtn 
+
+sp_send_lmp_encapsulated_header:
+65df 70007c3d jam lmp_encapsulated_header ,mem_lmo_opcode2 
+65e0 20600000 rtn 
+
+send_lmp_encapsulated_header:
+65e1 7009b200 jam 0 ,mem_sp_local_key_send_count 
+65e2 18007e04 force 4 ,pdata 
+65e3 2040667a call msg_send_lmp 
+65e4 18007e01 force encapsulated_major_type_p192 ,pdata 
+65e5 e7e20005 istore 1 ,contw 
+65e6 18007e01 force encapsulated_minor_type_p192 ,pdata 
+65e7 e7e20005 istore 1 ,contw 
+65e8 18007e30 force encapsulated_len_p192 ,pdata 
+65e9 e7e20005 istore 1 ,contw 
+65ea 204066de call check_localsm 
+65eb 2020e694 branch send_lmp_request ,true 
+65ec 20206692 branch send_lmp_reply 
+
+send_lmp_encapsulated_payload:
+65ed 18007e11 force 17 ,pdata 
+65ee 2040667a call msg_send_lmp 
+65ef 6fe209b2 fetch 1 ,mem_sp_local_key_send_count 
+65f0 d8c045fc arg mem_sp_pubkey_local ,contr 
+65f1 98c08c00 iadd contr ,contr 
+65f2 eff00006 ifetch 8 ,contr 
+65f3 e7f00005 istore 8 ,contw 
+65f4 eff00006 ifetch 8 ,contr 
+65f5 e7f00005 istore 8 ,contw 
+65f6 6fe209b2 fetch 1 ,mem_sp_local_key_send_count 
+65f7 1fe0fe10 increase 16 ,pdata 
+65f8 67e209b2 store 1 ,mem_sp_local_key_send_count 
+65f9 204066de call check_localsm 
+65fa 2020e694 branch send_lmp_request ,true 
+65fb 20206692 branch send_lmp_reply 
+
+sp_send_lmp_simple_pairing_comfirm:
+65fc 7009aa06 jam sp_stat_random_recv ,mem_sp_state 
+65fd 70007c3f jam lmp_simple_pairing_confirm ,mem_lmo_opcode2 
+65fe 20600000 rtn 
+
+send_lmp_simple_pairing_comfirm:
+65ff 18007e11 force 17 ,pdata 
+6600 2040667a call msg_send_lmp 
+6601 d8c00a4a arg mem_sp_calc_result_high ,contr 
+6602 eff00006 ifetch 8 ,contr 
+6603 e7f00005 istore 8 ,contw 
+6604 eff00006 ifetch 8 ,contr 
+6605 e7f00005 istore 8 ,contw 
+6606 20206692 branch send_lmp_reply 
+
+sp_send_lmp_simple_pairing_number:
+6607 70007c40 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+6608 20600000 rtn 
+
+send_lmp_simple_pairing_number:
+6609 204066de call check_localsm 
+660a 2040f4c7 call sp_local_random_key_generator ,true 
+660b 18007e11 force 17 ,pdata 
+660c 2040667a call msg_send_lmp 
+660d d8c00a1a arg mem_sp_random_local ,contr 
+660e eff00006 ifetch 8 ,contr 
+660f e7f00005 istore 8 ,contw 
+6610 eff00006 ifetch 8 ,contr 
+6611 e7f00005 istore 8 ,contw 
+6612 204066de call check_localsm 
+6613 2420e692 nbranch send_lmp_reply ,true 
+6614 2020e694 branch send_lmp_request ,true 
+
+master_sp_sm_end:
+6615 7009ab0f jam sp_stat_done ,mem_master_sp_state 
+
+sp_aurand_send:
+6616 204066d1 call tid_initiate 
+6617 70007c0b jam lmp_au_rand ,mem_lmo_opcode2 
+6618 204066e9 call check_localsm_master 
+6619 2020f503 branch sp_master_key_prarm_push ,true 
+661a 2020750d branch sp_link_key_prarm_push 
+
+master_sp_send_lmp_dhkey_check:
+661b 204066cd call tid_reply 
+
+sp_send_lmp_dhkey_check:
+661c 70007c41 jam lmp_dhkey_check ,mem_lmo_opcode2 
+661d 20600000 rtn 
+
+send_lmp_dhkey_check:
+661e 18007e11 force 17 ,pdata 
+661f 2040667a call msg_send_lmp 
+6620 d8c00a4a arg mem_sp_calc_result_high ,contr 
+6621 eff00006 ifetch 8 ,contr 
+6622 e7f00005 istore 8 ,contw 
+6623 eff00006 ifetch 8 ,contr 
+6624 e7f00005 istore 8 ,contw 
+6625 204066de call check_localsm 
+6626 2420e692 nbranch send_lmp_reply ,true 
+6627 2020e694 branch send_lmp_request ,true 
+
+send_lmp_enc_key_size_mask_res:
+6628 18007e03 force 3 ,pdata 
+6629 2040667a call msg_send_lmp 
+662a 5800fffe setarg 0xfffe 
+662b e7e40005 istore 2 ,contw 
+662c 20206692 branch send_lmp_reply 
+
+send_lmp_auto_rate:
+662d 20206694 branch send_lmp_request 
+
+send_lmp_clkoffset_req:
+662e 20206694 branch send_lmp_request 
+
+send_lmp_quality_of_service:
+662f 20206694 branch send_lmp_request 
+
+send_lmp_test_activate:
+6630 20206694 branch send_lmp_request 
+
+send_lmp_comb_key:
+6631 204066ed call generate_random_number 
+6632 da2040a0 arg mem_lap ,rega 
+6633 204066f3 call generate_linkkey 
+6634 18007e11 force 17 ,pdata 
+6635 2040667a call msg_send_lmp 
+6636 da20057e arg mem_kinit ,rega 
+6637 da40055e arg mem_random_number ,regb 
+6638 20407208 call xor16 
+6639 2434e689 nbranch send_lmp_follow ,master 
+663a 2020668f branch send_lmp_tid 
+
+send_lmp_inrand:
+663b 204066ed call generate_random_number 
+663c da200040 arg mem_plap ,rega 
+663d 20407114 call generate_kinit 
+
+send_lmp_rand:
+663e 18007e11 force 17 ,pdata 
+663f 2040667a call msg_send_lmp 
+6640 d8c0055e arg mem_random_number ,contr 
+6641 20407c9a call memcpy16 
+6642 6fe20055 fetch 1 ,mem_conn_sm 
+6643 c00ce694 beq conn_sm_auth_wait ,send_lmp_request 
+6644 c00c6694 beq conn_sm_pairing_wait ,send_lmp_request 
+6645 2020668f branch send_lmp_tid 
+
+send_lmp_aurand:
+6646 6fe209b1 fetch 1 ,mem_pairing_auth 
+6647 203a664c branch send_lmp_aurand_notpairing ,blank 
+6648 204066de call check_localsm 
+6649 2040e6d1 call tid_initiate ,true 
+664a 2440e6cd ncall tid_reply ,true 
+664b 2020664d branch send_lmp_aurand_common 
+
+send_lmp_aurand_notpairing:
+664c 204066d1 call tid_initiate 
+
+send_lmp_aurand_common:
+664d 204066ed call generate_random_number 
+664e 2020663e branch send_lmp_rand 
+
+send_lmp_sres:
+664f da2040a0 arg mem_lap ,rega 
+6650 20407147 call function_e1 
+6651 18007e05 force 5 ,pdata 
+6652 2040667a call msg_send_lmp 
+6653 6fe8058e fetch 4 ,mem_input_store 
+6654 e7e80005 istore 4 ,contw 
+6655 d84004d1 arg mem_sres_tid ,temp 
+6656 204066c4 call special_tid_store 
+6657 2040723c call copy_aco 
+6658 204066de call check_localsm 
+6659 2020e65e branch send_lmp_sres_master ,true 
+665a 7004d401 jam done_encryp ,mem_wait_encryption 
+665b 6fe209b1 fetch 1 ,mem_pairing_auth 
+665c 207a0000 rtn blank 
+665d 70007c0b jam lmp_au_rand ,mem_lmo_opcode2 
+
+send_lmp_sres_master:
+665e 6fe241be fetch 1 ,mem_link_key_exists 
+665f 207a0000 rtn blank 
+
+send_lmp_sres_startenc:
+6660 204066de call check_localsm 
+6661 2420e666 nbranch send_lmp_sres_startenc_slave ,true 
+6662 6fe204d3 fetch 1 ,mem_auth_enable 
+6663 207a0000 rtn blank 
+6664 70007c0f jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+6665 20600000 rtn 
+
+send_lmp_sres_startenc_slave:
+6666 c6908000 rtnmark0 mark_slave_in_rand_accepted 
+6667 793f8021 set0 mark_slave_in_rand_accepted ,mark 
+6668 70007c0f jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+6669 20600000 rtn 
+
+send_lmp_start_encryption:
+666a 204066ed call generate_random_number 
+666b 2040714a call function_e3 
+666c 18007e11 force 17 ,pdata 
+666d 2040667a call msg_send_lmp 
+666e d8c0055e arg mem_random_number ,contr 
+666f 20407c9a call memcpy16 
+6670 2020668f branch send_lmp_tid 
+
+send_lmp_stop_encryption_req:
+6671 18007e01 force 1 ,pdata 
+6672 2040667a call msg_send_lmp 
+6673 2020668f branch send_lmp_tid 
+
+send_lmp_encryption_key_size_req:
+6674 18007e02 force 2 ,pdata 
+6675 2040667a call msg_send_lmp 
+6676 18007e10 force 16 ,pdata 
+6677 e7e20005 istore 1 ,contw 
+6678 67e20054 store 1 ,mem_key_size 
+6679 2020668f branch send_lmp_tid 
+
+msg_send_lmp:
+667a 1fe9fe00 lshift3 pdata ,pdata 
+667b 1fe1fe07 or_into 0x07 ,pdata 
+667c 67e204b2 store 1 ,mem_lmo_header_length 
+667d df200011 arg 17 ,loopcnt 
+667e d8a004b4 arg mem_lmo_payload ,contw 
+667f 20407caf call clear_mem 
+6680 d8a004b4 arg mem_lmo_payload ,contw 
+6681 20600000 rtn 
+
+send_lmpext:
+6682 1fe1227f and pdata ,0x7f ,rega 
+6683 7000487f jam lmp_escape ,mem_lmp_to_send 
+6684 18e27e00 deposit queue 
+6685 2040667a call msg_send_lmp 
+6686 1a227e00 deposit rega 
+6687 e7e20005 istore 1 ,contw 
+6688 20600000 rtn 
+
+send_lmp_follow:
+6689 6fe20048 fetch 1 ,mem_lmp_to_send 
+668a 1fe3fe00 lshift pdata ,pdata 
+668b 6842004c fetcht 1 ,mem_state_map 
+668c 284ffe01 isolate1 smap_lmptid ,temp 
+668d 7920fe00 setflag true ,0 ,pdata 
+668e 20206699 branch send_lmp_exit 
+
+send_lmp_tid:
+668f 6842004c fetcht 1 ,mem_state_map 
+6690 18410401 and_into 1 ,temp 
+6691 20206695 branch send_lmp_end 
+
+send_lmp_reply:
+6692 18000400 force 0 ,temp 
+6693 20206695 branch send_lmp_end 
+
+send_lmp_request:
+6694 18000401 force 1 ,temp 
+
+send_lmp_end:
+6695 6fe20048 fetch 1 ,mem_lmp_to_send 
+6696 1fe3fe00 lshift pdata ,pdata 
+6697 7934fe00 setflag master ,0 ,pdata 
+6698 9842fe00 ixor temp ,pdata 
+
+send_lmp_exit:
+6699 67e204b3 store 1 ,mem_lmo_header_opcode 
+669a 70004800 jam 0 ,mem_lmp_to_send 
+669b 204066a9 call lmo_fifo_process_lmo0empty 
+669c 78347c00 enable user 
+669d 20600000 rtn 
+
+lmo_fifo_check:
+669e 6fe2007c fetch 1 ,mem_lmo_opcode2 
+669f 207a0000 rtn blank 
+66a0 204066a3 call lmo_fifo_process 
+66a1 6fe2007c fetch 1 ,mem_lmo_opcode2 
+66a2 20600000 rtn 
+
+lmo_fifo_process:
+66a3 47214028 bpatchx patch28_2 ,mem_patch28 
+66a4 6fe20048 fetch 1 ,mem_lmp_to_send 
+66a5 203a66a9 branch lmo_fifo_process_lmo0empty ,blank 
+66a6 6fe20078 fetch 1 ,mem_lmo_opcode1 
+66a7 247a0000 nrtn blank 
+66a8 202066b3 branch lmo_fifo_process_lmo2to1 
+
+lmo_fifo_process_lmo0empty:
+66a9 6fe20078 fetch 1 ,mem_lmo_opcode1 
+66aa 203a66b9 branch lmo_fifo_process_lmo1_empty ,blank 
+66ab 6fe60078 fetch 3 ,mem_lmo_opcode1 
+66ac 67e60048 store 3 ,mem_lmp_to_send 
+66ad 6842007b fetcht 1 ,mem_lmo_tid1 
+66ae 6fe2004c fetch 1 ,mem_state_map 
+66af 793ffe01 set0 smap_lmptid ,pdata 
+66b0 9841fe00 ior temp ,pdata 
+66b1 67e2004c store 1 ,mem_state_map 
+66b2 70007800 jam 0 ,mem_lmo_opcode1 
+
+lmo_fifo_process_lmo2to1:
+66b3 6fe2007c fetch 1 ,mem_lmo_opcode2 
+66b4 207a0000 rtn blank 
+66b5 6fe8007c fetch 4 ,mem_lmo_opcode2 
+66b6 67e80078 store 4 ,mem_lmo_opcode1 
+66b7 70007c00 jam 0 ,mem_lmo_opcode2 
+66b8 20600000 rtn 
+
+lmo_fifo_process_lmo1_empty:
+66b9 6fe2007c fetch 1 ,mem_lmo_opcode2 
+66ba 207a0000 rtn blank 
+66bb 6fe6007c fetch 3 ,mem_lmo_opcode2 
+66bc 67e60048 store 3 ,mem_lmp_to_send 
+66bd 6842007f fetcht 1 ,mem_lmo_tid2 
+66be 6fe2004c fetch 1 ,mem_state_map 
+66bf 793ffe01 set0 smap_lmptid ,pdata 
+66c0 9841fe00 ior temp ,pdata 
+66c1 67e2004c store 1 ,mem_state_map 
+66c2 70007c00 jam 0 ,mem_lmo_opcode2 
+66c3 20600000 rtn 
+
+special_tid_store:
+66c4 4721c028 bpatchx patch28_3 ,mem_patch28 
+66c5 6fe2004c fetch 1 ,mem_state_map 
+66c6 1fe22600 copy pdata ,regc 
+66c7 efe20002 ifetch 1 ,temp 
+66c8 20406233 call pop_tid_follow 
+66c9 20406689 call send_lmp_follow 
+66ca 1a627e00 copy regc ,pdata 
+66cb 67e2004c store 1 ,mem_state_map 
+66cc 20600000 rtn 
+
+tid_reply:
+66cd 6842004c fetcht 1 ,mem_state_map 
+66ce 793f8400 set0 smap_lmptidinit ,temp 
+66cf 6042004c storet 1 ,mem_state_map 
+66d0 20600000 rtn 
+
+tid_initiate:
+66d1 6842004c fetcht 1 ,mem_state_map 
+66d2 79200400 set1 smap_lmptidinit ,temp 
+66d3 6042004c storet 1 ,mem_state_map 
+66d4 20600000 rtn 
+
+tid_check:
+66d5 7d34fe01 nsetflag master ,smap_lmptid ,pdata 
+66d6 6842004c fetcht 1 ,mem_state_map 
+66d7 9842fe00 ixor temp ,pdata 
+66d8 2feffe01 isolate1 smap_lmptid ,pdata 
+66d9 20600000 rtn 
+
+tid_set_reply:
+66da 6fe2004c fetch 1 ,mem_state_map 
+66db 7934fe01 setflag master ,smap_lmptid ,pdata 
+66dc 67e2004c store 1 ,mem_state_map 
+66dd 20600000 rtn 
+
+check_localsm:
+66de 6fe209b0 fetch 1 ,mem_sp_localsm 
+66df 2fe0fe01 compare local_statemachine ,pdata ,0x7f 
+66e0 20600000 rtn 
+
+setlocalsm_master:
+66e1 6fe209b0 fetch 1 ,mem_sp_localsm 
+66e2 79207e07 set1 7 ,pdata 
+66e3 67e209b0 store 1 ,mem_sp_localsm 
+66e4 20600000 rtn 
+
+setlocalsm_slave:
+66e5 6fe209b0 fetch 1 ,mem_sp_localsm 
+66e6 793ffe07 set0 7 ,pdata 
+66e7 67e209b0 store 1 ,mem_sp_localsm 
+66e8 20600000 rtn 
+
+check_localsm_master:
+66e9 6fe209b0 fetch 1 ,mem_sp_localsm 
+66ea 2feffe07 isolate1 7 ,pdata 
+66eb 67e209b0 store 1 ,mem_sp_localsm 
+66ec 20600000 rtn 
+
+generate_random_number:
+66ed d8a0055e arg mem_random_number ,contw 
+
+generate_random:
+66ee 18007210 force 16 ,loopcnt 
+
+generate_random_another:
+
+generate_random_loop:
+66ef 180a7e00 random pdata 
+66f0 e7e20005 istore 1 ,contw 
+66f1 c20066ef loop generate_random_another 
+66f2 20600000 rtn 
+
+generate_linkkey:
+66f3 20407118 call function_e21 
+66f4 da2041bf arg mem_link_key ,rega 
+66f5 da40058e arg mem_input_store ,regb 
+66f6 eff00011 ifetch 8 ,rega 
+66f7 68420030 fetcht 1 ,mem_state 
+66f8 7d3a0406 nsetflag blank ,state_combkey ,temp 
+66f9 60420030 storet 1 ,mem_state 
+66fa 1a220a00 copy rega ,contw 
+66fb 20407208 call xor16 
+66fc 202041c0 branch generate_linkkey_continue 
+
+process_conn_sm:
+66fd 47224028 bpatchx patch28_4 ,mem_patch28 
+66fe 2040669e call lmo_fifo_check 
+66ff 247a0000 nrtn blank 
+
+process_conn_sm_continue:
+6700 6fe20055 fetch 1 ,mem_conn_sm 
+6701 207a0000 rtn blank 
+6702 c0026751 beq conn_sm_send_conn_req ,host_create_conn_send_conn_req 
+6703 c002e756 beq conn_sm_wait_conn_accept ,host_create_conn_wait_accept 
+6704 c0016748 beq conn_sm_send_features ,host_create_conn_send_features 
+6705 c001e75e beq conn_sm_wait_features_res ,host_create_conn_waiting 
+6706 c007674b beq conn_sm_send_switch ,host_create_conn_send_switch 
+6707 c003677a beq conn_sm_auth_pair ,host_create_conn_auth_pair 
+6708 c003e792 beq conn_sm_auth_pair_wait ,host_create_conn_auth_pair_wait 
+6709 c004e793 beq conn_sm_encrypt ,host_create_conn_encrypt 
+670a c005679c beq conn_sm_encrypt_wait ,host_create_conn_encrypt_wait 
+670b c005e7a0 beq conn_sm_encrypt_wait_clear ,host_create_conn_encrypt_wait_clear 
+670c c0066768 beq conn_sm_send_setup_complete ,host_create_conn_send_setup_complete 
+670d c006e76b beq conn_sm_wait_setup_complete ,host_create_conn_wait_setup_complete 
+670e c007e771 beq conn_sm_detach_delay ,host_create_conn_master_detach 
+670f c009673b beq conn_sm_send_version ,host_create_conn_send_version 
+6710 c009e75e beq conn_sm_wait_version ,host_create_conn_waiting 
+6711 c008673e beq conn_sm_wait_switch_after_host_connection ,host_creat_conn_wait_switch 
+6712 c00a6738 beq conn_sm_send_features_ext ,host_creat_conn_send_feat_ext 
+6713 c00ae75e beq conn_sm_wait_features_ext ,host_create_conn_waiting 
+6714 c00b6732 beq conn_sm_pairing ,host_create_conn_pairing 
+6715 c00c6737 beq conn_sm_pairing_wait ,host_create_conn_pairing_wait 
+6716 c00be72b beq conn_sm_auth ,host_create_conn_auth 
+6717 c00ce731 beq conn_sm_auth_wait ,host_create_conn_auth_wait 
+6718 c00d671c beq conn_sm_done ,host_create_conn_done 
+6719 c00de726 beq conn_sm_wait_done ,host_create_conn_done_wait 
+671a 70005500 jam conn_sm_standby ,mem_conn_sm 
+671b 20600000 rtn 
+
+host_create_conn_done:
+671c 6fe204cd fetch 1 ,mem_lmp_conn_state 
+671d c4010000 rtnbit0 received_setup_complete 
+671e c4018000 rtnbit0 sent_setup_complete 
+671f 70005500 jam conn_sm_standby ,mem_conn_sm 
+6720 20406722 call host_conn_judge_encrypt 
+6721 20206bae branch scheduler_start_upper_sm 
+
+host_conn_judge_encrypt:
+6722 6fe2016b fetch 1 ,mem_connection_options 
+6723 c4008000 rtnbit0 connection_encrypt 
+6724 7000550a jam conn_sm_encrypt_wait ,mem_conn_sm 
+6725 20600000 rtn 
+
+host_create_conn_done_wait:
+6726 d8e00007 arg enpt_delay_timer ,queue 
+6727 20407cf1 call timer_check 
+6728 247a0000 nrtn blank 
+6729 7000551a jam conn_sm_done ,mem_conn_sm 
+672a 20600000 rtn 
+
+host_create_conn_auth:
+672b 6fe2016b fetch 1 ,mem_connection_options 
+672c 793ffe00 set0 connection_auth ,pdata 
+672d 67e2016b store 1 ,mem_connection_options 
+672e 70005519 jam conn_sm_auth_wait ,mem_conn_sm 
+672f 70007c0b jam lmp_au_rand ,mem_lmo_opcode2 
+6730 20600000 rtn 
+
+host_create_conn_auth_wait:
+6731 20600000 rtn 
+
+host_create_conn_pairing:
+6732 6fe204d0 fetch 1 ,mem_pincode_state 
+6733 c1810000 rtnne pincode_state_pincode_ready 
+6734 204067a2 call host_auth 
+6735 70005518 jam conn_sm_pairing_wait ,mem_conn_sm 
+6736 20600000 rtn 
+
+host_create_conn_pairing_wait:
+6737 20600000 rtn 
+
+host_creat_conn_send_feat_ext:
+6738 70005515 jam conn_sm_wait_features_ext ,mem_conn_sm 
+6739 70007c83 jam lmp_ext_features_req ,mem_lmo_opcode2 
+673a 20600000 rtn 
+
+host_create_conn_send_version:
+673b 70005513 jam conn_sm_wait_version ,mem_conn_sm 
+673c 70007c25 jam lmp_version_req ,mem_lmo_opcode2 
+673d 20600000 rtn 
+
+host_creat_conn_wait_switch:
+673e 6fe2452d fetch 1 ,mem_switch_flag 
+673f c1000000 rtneq switch_flag_init 
+6740 c000e746 beq switch_flag_accept ,host_create_conn_switch_accept 
+6741 d8e00006 arg switch_wait_timer ,queue 
+6742 20407cf1 call timer_check 
+6743 247a0000 nrtn blank 
+6744 70452d00 jam switch_flag_init ,mem_switch_flag 
+6745 2020675f branch host_create_conn_switch 
+
+host_create_conn_switch_accept:
+6746 20748000 rtn master 
+6747 2020677a branch host_create_conn_auth_pair 
+
+host_create_conn_send_features:
+6748 70005503 jam conn_sm_wait_features_res ,mem_conn_sm 
+6749 70007c27 jam lmp_features_req ,mem_lmo_opcode2 
+674a 20600000 rtn 
+
+host_create_conn_send_switch:
+674b 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+674c 79200003 set1 mark_switch_initiated ,mark 
+674d 70005505 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+674e 580001ff setarg 0x1ff 
+674f 67e404ce store 2 ,mem_soft_timer 
+6750 20600000 rtn 
+
+host_create_conn_send_conn_req:
+6751 70005505 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+6752 7004ceff jam 0xff ,mem_soft_timer 
+6753 793f8022 set0 mark_reconn_recieve_switch ,mark 
+6754 70007c33 jam lmp_host_connection_req ,mem_lmo_opcode2 
+6755 202060e5 branch init_lmp_reinit 
+
+host_create_conn_wait_accept:
+6756 c6110000 rtnmark1 mark_reconn_recieve_switch 
+6757 6fe404ce fetch 2 ,mem_soft_timer 
+6758 1fe67e01 sub pdata ,1 ,pdata 
+6759 2022e75c branch host_create_conn_resend ,zero 
+675a 67e404ce store 2 ,mem_soft_timer 
+675b 20600000 rtn 
+
+host_create_conn_resend:
+675c 7000550e jam conn_sm_send_switch ,mem_conn_sm 
+675d 20600000 rtn 
+
+host_create_conn_waiting:
+675e 20600000 rtn 
+
+host_create_conn_switch:
+675f 6fe204cd fetch 1 ,mem_lmp_conn_state 
+6760 c4018000 rtnbit0 sent_setup_complete 
+6761 c4010000 rtnbit0 received_setup_complete 
+6762 6fe2016b fetch 1 ,mem_connection_options 
+6763 793ffe02 set0 connection_switch ,pdata 
+6764 67e2016b store 1 ,mem_connection_options 
+6765 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+6766 70005510 jam conn_sm_wait_switch_after_host_connection ,mem_conn_sm 
+6767 20600000 rtn 
+
+host_create_conn_send_setup_complete:
+6768 7000550d jam conn_sm_wait_setup_complete ,mem_conn_sm 
+6769 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+676a 20600000 rtn 
+
+host_create_conn_wait_setup_complete:
+676b 6fe204cd fetch 1 ,mem_lmp_conn_state 
+676c c4010000 rtnbit0 received_setup_complete 
+676d 70005500 jam conn_sm_standby ,mem_conn_sm 
+676e 20600000 rtn 
+
+host_create_conn_wait_setup_complete_rtn:
+676f 70005506 jam conn_sm_auth_pair ,mem_conn_sm 
+6770 20600000 rtn 
+
+host_create_conn_master_detach:
+6771 6fe204ce fetch 1 ,mem_soft_timer 
+6772 1fe0ffff increase -1 ,pdata 
+6773 203a6776 branch host_create_conn_send_detach ,blank 
+6774 67e204ce store 1 ,mem_soft_timer 
+6775 20600000 rtn 
+
+host_create_conn_send_detach:
+6776 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+6777 7004c616 jam local_host ,mem_disconn_reason_send 
+6778 70005500 jam 0 ,mem_conn_sm 
+6779 20600000 rtn 
+
+host_create_conn_auth_pair:
+677a 6fe2016b fetch 1 ,mem_connection_options 
+677b c281675f bbit1 connection_switch ,host_create_conn_switch 
+677c c280677f bbit1 connection_auth ,host_create_conn_auth_pair_true 
+
+host_create_conn_sm_done:
+677d 7000551a jam conn_sm_done ,mem_conn_sm 
+677e 20600000 rtn 
+
+host_create_conn_auth_pair_true:
+677f 6fe241be fetch 1 ,mem_link_key_exists 
+6780 203a678b branch host_create_conn_auth_pair_nokey ,blank 
+6781 6fe204cd fetch 1 ,mem_lmp_conn_state 
+6782 c4018000 rtnbit0 sent_setup_complete 
+6783 c4010000 rtnbit0 received_setup_complete 
+6784 6fe804e5 fetch 4 ,mem_aurand_send_delay_time 
+6785 d8400064 arg 100 ,temp 
+6786 98408400 iadd temp ,temp 
+6787 1c427e00 copy clkn_bt ,pdata 
+6788 98467c00 isub temp ,null 
+6789 24610000 nrtn positive 
+678a 2020672b branch host_create_conn_auth 
+
+host_create_conn_auth_pair_nokey:
+678b 70005516 jam conn_sm_pairing ,mem_conn_sm 
+678c 70465704 jam 4 ,mem_pin_length 
+678d 58003030 setarg 0x3030 
+678e 67e44658 store 2 ,mem_pin 
+678f e7e40005 istore 2 ,contw 
+6790 7004d002 jam pincode_state_pincode_ready ,mem_pincode_state 
+6791 20206732 branch host_create_conn_pairing 
+
+host_create_conn_auth_pair_wait:
+6792 20600000 rtn 
+
+host_create_conn_encrypt:
+6793 6fe2016b fetch 1 ,mem_connection_options 
+6794 c280e797 bbit1 connection_encrypt ,host_create_conn_encrypt_start 
+6795 7000551a jam conn_sm_done ,mem_conn_sm 
+6796 20600000 rtn 
+
+host_create_conn_encrypt_start:
+6797 6fe2016b fetch 1 ,mem_connection_options 
+6798 793ffe01 set0 connection_encrypt ,pdata 
+6799 67e2016b store 1 ,mem_connection_options 
+679a 70007c0f jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+679b 20600000 rtn 
+
+host_create_conn_encrypt_wait:
+679c 6fe204d4 fetch 1 ,mem_wait_encryption 
+679d 207a0000 rtn blank 
+679e 70005500 jam conn_sm_standby ,mem_conn_sm 
+679f 20206797 branch host_create_conn_encrypt_start 
+
+host_create_conn_encrypt_wait_clear:
+67a0 7000550c jam conn_sm_send_setup_complete ,mem_conn_sm 
+67a1 20600000 rtn 
+
+host_auth:
+67a2 6fe2004b fetch 1 ,mem_op 
+67a3 c28167a7 bbit1 op_inrand_req ,remote_auth 
+67a4 204066d1 call tid_initiate 
+67a5 70007c08 jam lmp_in_rand ,mem_lmo_opcode2 
+67a6 202050ea branch cmd_exit 
+
+remote_auth:
+67a7 6fe2004b fetch 1 ,mem_op 
+67a8 793ffe02 set0 op_inrand_req ,pdata 
+67a9 67e2004b store 1 ,mem_op 
+67aa 204063e3 call lmp_accept_inrand 
+67ab 204066da call tid_set_reply 
+67ac 202050ea branch cmd_exit 
+
+pincode_reinit:
+67ad 58000004 setarg 4 
+67ae 67e24657 store 1 ,mem_pin_length 
+67af 58003030 setarg 0x3030 
+67b0 e7e40005 istore 2 ,contw 
+67b1 e7e40005 istore 2 ,contw 
+67b2 20600000 rtn 
+
+soft_reset_chip:
+67b3 70801001 hjam 1 ,core_reset 
+67b4 20600000 rtn 
+
+uartd_prepare_tx:
+67b5 47244029 bpatchx patch29_0 ,mem_patch29 
+67b6 6fe44ff6 fetch 2 ,ipc_bt2m0_write_ptr 
+67b7 1fe21400 copy pdata ,contwu 
+67b8 20600000 rtn 
+
+uartd_send:
+67b9 4724c029 bpatchx patch29_1 ,mem_patch29 
+67ba 19427e00 copy contwu ,pdata 
+67bb 67e44ff6 store 2 ,ipc_bt2m0_write_ptr 
+
+wake_up_m0:
+67bc 6fe28043 fetch 1 ,core_config 
+67bd c3838000 rtnbit1 7 
+67be 79207e07 set1 7 ,pdata 
+67bf 67e28043 store 1 ,core_config 
+67c0 20600000 rtn 
+
+uart_copy_tx_bytes_fast:
+67c1 1f227e00 deposit loopcnt 
+67c2 207a0000 rtn blank 
+
+uart_copy_tx_bytes_fast_loop:
+67c3 1f20f3f8 increase -8 ,loopcnt 
+67c4 204167ce call uart_tx_8_bytes ,positive 
+67c5 20628000 rtn zero 
+67c6 202167c3 branch uart_copy_tx_bytes_fast_loop ,positive 
+67c7 1f20f208 increase 8 ,loopcnt 
+
+uart_copy_tx_bytes_fast_loop_four:
+67c8 1f20f3fc increase -4 ,loopcnt 
+67c9 204167d1 call uart_tx_4_bytes ,positive 
+67ca 20628000 rtn zero 
+67cb 202167c8 branch uart_copy_tx_bytes_fast_loop_four ,positive 
+67cc 1f20f204 increase 4 ,loopcnt 
+67cd 202067d4 branch uart_copy_tx_bytes 
+
+uart_tx_8_bytes:
+67ce eff00006 ifetch 8 ,contr 
+67cf e7f0000a istore 8 ,contwu 
+67d0 20600000 rtn 
+
+uart_tx_4_bytes:
+67d1 efe80006 ifetch 4 ,contr 
+67d2 e7e8000a istore 4 ,contwu 
+67d3 20600000 rtn 
+
+uart_copy_tx_bytes:
+67d4 1f227e00 deposit loopcnt 
+67d5 207a0000 rtn blank 
+
+uart_copy_tx_bytes_loop:
+67d6 efe20006 ifetch 1 ,contr 
+67d7 e7e2000a istore 1 ,contwu 
+67d8 c20067d6 loop uart_copy_tx_bytes_loop 
+67d9 20600000 rtn 
+
+uart_copy_rx_bytes_fast:
+67da 1f227e00 deposit loopcnt 
+67db 207a0000 rtn blank 
+
+uart_copy_rx_bytes_fast_loop:
+67dc 1f20f3f8 increase -8 ,loopcnt 
+67dd 204167e7 call uart_rx_8_bytes ,positive 
+67de 20628000 rtn zero 
+67df 202167dc branch uart_copy_rx_bytes_fast_loop ,positive 
+67e0 1f20f208 increase 8 ,loopcnt 
+
+uart_copy_rx_bytes_fast_loop_four:
+67e1 1f20f3fc increase -4 ,loopcnt 
+67e2 204167ea call uart_rx_4_bytes ,positive 
+67e3 20628000 rtn zero 
+67e4 202167e1 branch uart_copy_rx_bytes_fast_loop_four ,positive 
+67e5 1f20f204 increase 4 ,loopcnt 
+67e6 202067ed branch uart_copy_rx_bytes 
+
+uart_rx_8_bytes:
+67e7 eff00003 ifetch 8 ,contru 
+67e8 e7f00005 istore 8 ,contw 
+67e9 20600000 rtn 
+
+uart_rx_4_bytes:
+67ea efe80003 ifetch 4 ,contru 
+67eb e7e80005 istore 4 ,contw 
+67ec 20600000 rtn 
+
+uart_copy_rx_bytes:
+67ed 1f227e00 deposit loopcnt 
+67ee 207a0000 rtn blank 
+
+uart_copy_rx_bytes_loop:
+67ef efe20003 ifetch 1 ,contru 
+67f0 e7e20005 istore 1 ,contw 
+67f1 c20067ef loop uart_copy_rx_bytes_loop 
+67f2 20600000 rtn 
+
+uartd_rxdone:
+67f3 47254029 bpatchx patch29_2 ,mem_patch29 
+67f4 18627e00 copy contru ,pdata 
+67f5 67e44ffc store 2 ,ipc_m02bt_read_ptr 
+67f6 20600000 rtn 
+
+uartd_prepare_rx:
+67f7 4725c029 bpatchx patch29_3 ,mem_patch29 
+67f8 6fe44ffc fetch 2 ,ipc_m02bt_read_ptr 
+67f9 1fe20600 copy pdata ,contru 
+67fa 20600000 rtn 
+
+app_store_nvram_event:
+67fb 700a953d jam bt_evt_store_nvram ,mem_fifo_temp 
+67fc 20207bab branch ui_ipc_send_event 
+
+eeprom_store_le_reconn_info:
+
+eeprom_store_bd_reconn_info:
+
+check_51cmd_store_reconn_info:
+
+check_51cmd_update_device_record:
+67fd 47264029 bpatchx patch29_4 ,mem_patch29 
+67fe 6fe24216 fetch 1 ,mem_nv_data_number 
+67ff 207a0000 rtn blank 
+6800 20406895 call check_nvram 
+6801 2042e89b call init_device_list ,zero 
+6802 20406830 call nvram_find_addr_from_bd_list 
+
+write_device_record:
+6803 6fe24216 fetch 1 ,mem_nv_data_number 
+6804 1fe22600 icopy regc 
+6805 68444214 fetcht 2 ,mem_nv_data_ptr 
+6806 6044018a storet 2 ,mem_list_item_ptr 
+
+write_device_loop_find:
+6807 1a627e00 copy regc ,pdata 
+6808 203a67fb branch app_store_nvram_event ,blank 
+6809 1a60a7ff increase -1 ,regc 
+680a 18422200 copy temp ,rega 
+680b efe20011 ifetch 1 ,rega 
+680c 68420182 fetcht 1 ,mem_select_list_item 
+680d 98467c00 isub temp ,null 
+680e 2042e817 call set_index_finded_device ,zero 
+680f 20216813 branch write_device_loop_find0 ,positive 
+6810 efe20011 ifetch 1 ,rega 
+6811 1fe0fe01 increase 1 ,pdata 
+6812 e7e20011 istore 1 ,rega 
+
+write_device_loop_find0:
+6813 6844018a fetcht 2 ,mem_list_item_ptr 
+6814 18408422 increase nv_data_len ,temp 
+6815 6044018a storet 2 ,mem_list_item_ptr 
+6816 20206807 branch write_device_loop_find 
+
+set_index_finded_device:
+6817 58000000 setarg 0 
+6818 e7e20011 istore 1 ,rega 
+6819 6fe20183 fetch 1 ,mem_temp_reconn_record 
+681a e7e20005 istore 1 ,contw 
+681b c099e825 bne rec_3_mode ,set_index_finded_device_ble_mode 
+681c da4041bf arg mem_link_key ,regb 
+
+set_index_find_device_master_addr:
+681d efec0006 ifetch 6 ,contr 
+681e e7f00005 istore 8 ,contw 
+681f 58000000 setarg 0 
+6820 e7f00005 istore 8 ,contw 
+6821 1a420c00 copy regb ,contr 
+
+store_rec_data_common:
+6822 20407c9a call memcpy16 
+6823 18007c01 force 1 ,null 
+6824 20600000 rtn 
+
+set_index_finded_device_ble_mode:
+6825 c01b6829 beq rec_4_mode_random_resolvable_private_address ,set_index_finded_device_irk 
+6826 c01be82d beq rec_4_mode_random_non_resolvable_private_address ,set_index_finded_device_ediv 
+6827 da4043eb arg mem_le_ltk ,regb 
+6828 2020681d branch set_index_find_device_master_addr 
+
+set_index_finded_device_irk:
+6829 d8c044a7 arg mem_le_irk ,contr 
+682a 20407c9a call memcpy16 
+
+store_ble_rec_data_common:
+682b d8c043eb arg mem_le_ltk ,contr 
+682c 20206822 branch store_rec_data_common 
+
+set_index_finded_device_ediv:
+682d d8c0449f arg mem_le_rand ,contr 
+682e 20407c9a call memcpy16 
+682f 2020682b branch store_ble_rec_data_common 
+
+nvram_find_addr_from_bd_list:
+6830 20407dc1 call disable_user 
+6831 6fe24216 fetch 1 ,mem_nv_data_number 
+6832 207a0000 rtn blank 
+6833 6fe44652 fetch 2 ,mem_ui_state_map 
+6834 c2806846 bbit1 ui_state_bt_connected ,find_addr_from_bd_list_spp_mode 
+
+find_addr_from_bd_list_ble_mode:
+6835 4726c029 bpatchx patch29_5 ,mem_patch29 
+6836 6fe24460 fetch 1 ,mem_le_conn_peer_addr_type 
+6837 c000683f beq master_public_addr ,find_addr_from_bd_list_static_addr 
+6838 6fe20450 fetch 1 ,mem_le_plap + 5 
+6839 2fe180c0 compare 0xc0 ,pdata ,0xc0 
+683a 2020e83f branch find_addr_from_bd_list_static_addr ,true 
+683b 2fe18040 compare 0x40 ,pdata ,0xc0 
+683c 2020e844 branch find_addr_from_bd_list_random_addr ,true 
+683d 2fe18000 compare 0x00 ,pdata ,0xc0 
+683e 2020e842 branch find_addr_from_bd_list_random_non_resolvable_private_address ,true 
+
+find_addr_from_bd_list_static_addr:
+683f 70018335 jam rec_4_mode_static_address ,mem_temp_reconn_record 
+6840 6fec044b fetch 6 ,mem_le_plap 
+6841 20206849 branch find_addr_from_bd_list_common 
+
+find_addr_from_bd_list_random_non_resolvable_private_address:
+6842 70018337 jam rec_4_mode_random_non_resolvable_private_address ,mem_temp_reconn_record 
+6843 20206849 branch find_addr_from_bd_list_common 
+
+find_addr_from_bd_list_random_addr:
+6844 70018336 jam rec_4_mode_random_resolvable_private_address ,mem_temp_reconn_record 
+6845 20206849 branch find_addr_from_bd_list_common 
+
+find_addr_from_bd_list_spp_mode:
+6846 47274029 bpatchx patch29_6 ,mem_patch29 
+6847 70018333 jam rec_3_mode ,mem_temp_reconn_record 
+6848 6fec0040 fetch 6 ,mem_plap 
+
+find_addr_from_bd_list_common:
+6849 67ec0184 store 6 ,mem_temp_reconn_record + 1 
+684a 6fe44214 fetch 2 ,mem_nv_data_ptr 
+684b e842003f ifetcht 1 ,pdata 
+684c 1fe0fe01 pincrease 1 
+684d 67e4018a store 2 ,mem_list_item_ptr 
+684e 60420182 storet 1 ,mem_select_list_item 
+684f 6fe24216 fetch 1 ,mem_nv_data_number 
+6850 1fe22600 icopy regc 
+
+nvram_find_addr_from_list:
+6851 6fe4018a fetch 2 ,mem_list_item_ptr 
+6852 1fe22200 copy pdata ,rega 
+6853 20406861 call nvram_find_addr_from_list_compare 
+6854 20740000 rtn user 
+6855 6844018a fetcht 2 ,mem_list_item_ptr 
+6856 18408422 increase nv_data_len ,temp 
+6857 6044018a storet 2 ,mem_list_item_ptr 
+6858 184085ff increase -1 ,temp 
+6859 efe20002 ifetch 1 ,temp 
+685a 67e20182 store 1 ,mem_select_list_item 
+685b 1a60a7ff increase -1 ,regc 
+685c 2422e851 nbranch nvram_find_addr_from_list ,zero 
+685d 6fe24216 fetch 1 ,mem_nv_data_number 
+685e 1fe0ffff pincrease decreased_one 
+685f 67e20182 store 1 ,mem_select_list_item 
+6860 20600000 rtn 
+
+nvram_find_addr_from_list_compare:
+6861 6fe20183 fetch 1 ,mem_temp_reconn_record 
+6862 c099e868 bne rec_3_mode ,find_addr_from_list_compare_ble_mode 
+
+find_master_addr_from_list_compare:
+6863 da400183 arg mem_temp_reconn_record ,regb 
+6864 df200007 arg 7 ,loopcnt 
+6865 20407d63 call string_compare 
+6866 2022fdbf branch enable_user ,zero 
+6867 20600000 rtn 
+
+find_addr_from_list_compare_ble_mode:
+6868 c01b686b beq rec_4_mode_random_resolvable_private_address ,find_irk_form_list_compare 
+6869 c01be886 beq rec_4_mode_random_non_resolvable_private_address ,find_ediv_form_list_compare 
+686a 20206863 branch find_master_addr_from_list_compare 
+
+find_irk_form_list_compare:
+686b e8420011 ifetcht 1 ,rega 
+686c 98467c00 isub temp ,null 
+686d 24628000 nrtn zero 
+686e d8a00abe arg mem_le_prand ,contw 
+686f df200010 arg 16 ,loopcnt 
+6870 20407caf call clear_mem 
+6871 6fe6044e fetch 3 ,mem_le_plap + 3 
+6872 67e60abe store 3 ,mem_le_prand 
+6873 2040687d call genernate_master_macaddress 
+6874 6fe40adb fetch 2 ,mem_le_aes_128 + 13 
+6875 1ff0fe00 byteswap pdata ,pdata 
+6876 1fed0400 lshift8 pdata ,temp 
+6877 efe20006 ifetch 1 ,contr 
+6878 9840fe00 iadd temp ,pdata 
+6879 6846044b fetcht 3 ,mem_le_plap 
+687a 98467c00 isub temp ,null 
+687b 2022fdbf branch enable_user ,zero 
+687c 20600000 rtn 
+
+genernate_master_macaddress:
+687d d8c00abe arg mem_le_prand ,contr 
+687e 2040733b call load_data128 
+687f efe20011 ifetch 1 ,rega 
+6880 20407338 call load_key128 
+6881 18006c50 force aes_big_endian | aes_load ,aes_ctrl 
+6882 18006c00 force 0 ,aes_ctrl 
+6883 204072d1 call wait_aes 
+6884 d8a00ace arg mem_le_aes_128 ,contw 
+6885 2020734c branch store_aes_result 
+
+find_ediv_form_list_compare:
+6886 e8420011 ifetcht 1 ,rega 
+6887 98467c00 isub temp ,null 
+6888 24628000 nrtn zero 
+6889 18c22200 copy contr ,rega 
+688a 18c0a608 add contr ,8 ,regc 
+688b da40449f arg mem_le_rand ,regb 
+688c df200008 arg 8 ,loopcnt 
+688d 20407d63 call string_compare 
+688e 2022fdbf branch enable_user ,zero 
+688f 1a622200 copy regc ,rega 
+6890 da4044a7 arg mem_le_irk ,regb 
+6891 df200008 arg 8 ,loopcnt 
+6892 20407d63 call string_compare 
+6893 2022fdbf branch enable_user ,zero 
+6894 20600000 rtn 
+
+check_nvram:
+6895 6fe44214 fetch 2 ,mem_nv_data_ptr 
+6896 e842003f ifetcht 1 ,pdata 
+6897 1fe0fe22 pincrease nv_data_len 
+6898 efe2003f ifetch 1 ,pdata 
+6899 98467c00 isub temp ,null 
+689a 20600000 rtn 
+
+init_device_list:
+689b 6fe24216 fetch 1 ,mem_nv_data_number 
+689c 1fe27200 icopy loopcnt 
+689d 68444214 fetcht 2 ,mem_nv_data_ptr 
+689e 58000000 setarg 0 
+
+init_device_list_loop:
+689f e7e20002 istore 1 ,temp 
+68a0 18408422 increase nv_data_len ,temp 
+68a1 1fe0fe01 pincrease 1 
+68a2 c200689f loop init_device_list_loop 
+68a3 20600000 rtn 
+
+load_device_list:
+68a4 4727c029 bpatchx patch29_7 ,mem_patch29 
+68a5 20406830 call nvram_find_addr_from_bd_list 
+68a6 6fe20030 fetch 1 ,mem_state 
+68a7 79347e06 setflag user ,state_combkey ,pdata 
+68a8 67e20030 store 1 ,mem_state 
+68a9 243468ae nbranch clear_key_exists ,user 
+68aa 1a208c0a add rega ,10 ,contr 
+68ab d8a041bf arg mem_link_key ,contw 
+68ac 20407c9a call memcpy16 
+68ad 202068be branch check_link_key_load 
+
+clear_key_exists:
+68ae 7041be00 jam 0 ,mem_link_key_exists 
+68af 20600000 rtn 
+
+load_device_list_mode_4:
+68b0 6ff2449d fetch 9 ,mem_le_ediv 
+68b1 203a68bc branch clear_ltk_exists ,blank 
+68b2 20406830 call nvram_find_addr_from_bd_list 
+68b3 243468bc nbranch clear_ltk_exists ,user 
+68b4 6fe4018a fetch 2 ,mem_list_item_ptr 
+68b5 1fe08c01 add pdata ,1 ,contr 
+68b6 d8a044a7 arg mem_le_irk ,contw 
+68b7 20407c9a call memcpy16 
+68b8 d8a043eb arg mem_le_ltk ,contw 
+68b9 20407c9a call memcpy16 
+68ba 7043fb01 jam 1 ,mem_ltk_exists 
+68bb 20600000 rtn 
+
+clear_ltk_exists:
+68bc 7043fb00 jam 0 ,mem_ltk_exists 
+68bd 20600000 rtn 
+
+check_link_key_load:
+68be 6ff041bf fetch 8 ,mem_link_key 
+68bf 685041c7 fetcht 8 ,mem_link_key + 8 
+68c0 9841fe00 ior temp ,pdata 
+68c1 207a0000 rtn blank 
+68c2 7041be01 jam 1 ,mem_link_key_exists 
+68c3 20600000 rtn 
+
+rfcomm_init:
+68c4 20758000 rtn wake 
+68c5 70453900 jam 0 ,mem_rfcomm_send_more_pkt 
+68c6 7004e903 jam bits9600 ,memremoterpnbitrate 
+68c7 7004ea03 jam databits8 ,memremoteprndatabits 
+68c8 7004ee11 jam 0x11 ,memremoteprnxon 
+68c9 7004ef13 jam 0x13 ,memremoteprnxoff 
+68ca 58000000 setarg 0 
+68cb 67e604eb store 3 ,memremoteprnstopbit 
+68cc 67e24226 store 1 ,mem_spp_state 
+68cd 70465100 jam 0 ,memui_reconnect_mode 
+
+rfcomm_init_spp:
+68ce 4728402a bpatchx patch2a_0 ,mem_patch2a 
+68cf 58000000 setarg 0 
+68d0 67e24226 store 1 ,mem_spp_state 
+68d1 67e24536 store 1 ,mem_remote_spp_channel 
+68d2 67e2452f store 1 ,mem_pn_dlci 
+68d3 6fe2453d fetch 1 ,mem_credit_flag 
+68d4 c000e8d7 beq credit_enable ,rfcomm_init_spp_with_credit 
+68d5 70453b50 jam 0x50 ,mem_credit_given 
+68d6 20600000 rtn 
+
+rfcomm_init_spp_with_credit:
+68d7 70453b00 jam 0x00 ,mem_credit_given 
+68d8 20600000 rtn 
+
+set_cr_bit:
+68d9 18418402 or_into 0x02 ,temp 
+68da 20600000 rtn 
+
+rfcomm_calculate_fcs_sabm:
+68db 18427e00 copy temp ,pdata 
+68dc 1fedfe00 reverse pdata ,pdata 
+68dd 67e24534 store 1 ,memfcstemp3 
+68de 18007e3f force ini_tx_sabm ,pdata 
+68df 1fedfe00 reverse pdata ,pdata 
+68e0 67e24533 store 1 ,memfcstemp2 
+68e1 18007e01 force 0x01 ,pdata 
+68e2 1fedfe00 reverse pdata ,pdata 
+68e3 67e24532 store 1 ,memfcstemp1 
+68e4 20406911 call caculate_fcs 
+68e5 18427e00 copy temp ,pdata 
+68e6 20600000 rtn 
+
+rfcomm_calculate_fcs_ua:
+68e7 1fedfe00 reverse pdata ,pdata 
+68e8 67e24534 store 1 ,memfcstemp3 
+68e9 18007e73 force rsp_tx_ua ,pdata 
+68ea 1fedfe00 reverse pdata ,pdata 
+68eb 67e24533 store 1 ,memfcstemp2 
+68ec 18007e01 force 0x01 ,pdata 
+68ed 1fedfe00 reverse pdata ,pdata 
+68ee 67e24532 store 1 ,memfcstemp1 
+68ef 20206911 branch caculate_fcs 
+
+rfcomm_calculate_fcs_dlci0:
+68f0 6fe24535 fetch 1 ,mem_rfcomm_initiator 
+68f1 203a68f4 branch rfcomm_calculate_fcs_dlci0_res ,blank 
+68f2 58000070 setarg 0x70 
+68f3 20600000 rtn 
+
+rfcomm_calculate_fcs_dlci0_res:
+68f4 580000aa setarg 0xaa 
+68f5 20600000 rtn 
+
+rfcomm_save_fcs_uih:
+68f6 1fedfe00 reverse pdata ,pdata 
+68f7 67e24534 store 1 ,memfcstemp3 
+68f8 18007eef force rsp_rx_uih ,pdata 
+68f9 20406905 call caculate_uihdata_fcs 
+68fa 684404f3 fetcht 2 ,mem_contw_temp 
+68fb 18420a00 copy temp ,contw 
+68fc e7e20005 istore 1 ,contw 
+68fd 18a20400 copy contw ,temp 
+68fe 604404f3 storet 2 ,mem_contw_temp 
+68ff 18007eff force rsp_rx_uih_wdata ,pdata 
+6900 20406905 call caculate_uihdata_fcs 
+6901 684404f3 fetcht 2 ,mem_contw_temp 
+6902 18420a00 copy temp ,contw 
+6903 e7e20005 istore 1 ,contw 
+6904 20600000 rtn 
+
+caculate_uihdata_fcs:
+6905 1fedfe00 reverse pdata ,pdata 
+6906 67e24533 store 1 ,memfcstemp2 
+6907 6fe44533 fetch 2 ,memfcstemp2 
+6908 1fed7e00 lshift8 pdata ,pdata 
+6909 67e604f0 store 3 ,mem_mod2div_temp 
+690a da200107 arg 0x107 ,rega 
+690b da40000f arg 0xf ,regb 
+690c 2040691e call mod2div 
+690d 1fe2fed7 xor_into 0xd7 ,pdata 
+690e 1fe47e00 invert pdata ,pdata 
+690f 1fedfe00 reverse pdata ,pdata 
+6910 20600000 rtn 
+
+caculate_fcs:
+6911 6fe64532 fetch 3 ,memfcstemp1 
+6912 67e604f0 store 3 ,mem_mod2div_temp 
+6913 da200107 arg 0x107 ,rega 
+6914 da40000f arg 0xf ,regb 
+6915 2040691e call mod2div 
+6916 1fed7e00 lshift8 pdata ,pdata 
+6917 da400007 arg 0x7 ,regb 
+6918 2040691e call mod2div 
+6919 1fe2fe2b xor_into 0x2b ,pdata 
+691a 1fe47e00 invert pdata ,pdata 
+691b 1fedfe00 reverse pdata ,pdata 
+691c 1fe20400 copy pdata ,temp 
+691d 20600000 rtn 
+
+mod2div:
+691e da600000 arg 0 ,regc 
+691f 1a427200 copy regb ,loopcnt 
+6920 20407c4c call right_shift_n 
+6921 1fe20400 icopy temp 
+
+mod2div_loop:
+6922 18427e00 copy temp ,pdata 
+6923 1a63a600 lshift regc ,regc 
+6924 c3046927 bbit0 8 ,mod2div_not_enough_reduction 
+6925 9a228400 ixor rega ,temp 
+6926 1a60a601 increase 1 ,regc 
+
+mod2div_not_enough_reduction:
+6927 18438400 lshift temp ,temp 
+6928 6fe604f0 fetch 3 ,mem_mod2div_temp 
+6929 1a40a5ff increase -1 ,regb 
+692a 2a41feff compare 0xff ,regb ,0xff 
+692b 2020e931 branch mod2div_end ,true 
+692c 1a427200 copy regb ,loopcnt 
+692d 20407c4c call right_shift_n 
+692e 2feffe00 isolate1 0 ,pdata 
+692f 79208400 setflag true ,0 ,temp 
+6930 20206922 branch mod2div_loop 
+
+mod2div_end:
+6931 18437e00 rshift temp ,pdata 
+6932 20600000 rtn 
+
+get_rfcomm_snd_adss:
+6933 6842452f fetcht 1 ,mem_pn_dlci 
+
+dlci_to_address_cmd:
+6934 184b8400 lshift2 temp ,temp 
+6935 79200400 set1 rfcomm_address_ext_len ,temp 
+6936 6fe24535 fetch 1 ,mem_rfcomm_initiator 
+6937 245a68d9 ncall set_cr_bit ,blank 
+6938 60420509 storet 1 ,mem_rfcomm_send_adss 
+6939 20600000 rtn 
+
+channel_to_dlci:
+693a 18438400 lshift temp ,temp 
+693b 6fe24535 fetch 1 ,mem_rfcomm_initiator 
+693c 793a0400 setflag blank ,0 ,temp 
+693d 20600000 rtn 
+
+rfcomm_rx_process_dlci0_sabm:
+693e 684204f8 fetcht 1 ,mem_current_channel 
+693f 7004fad7 jam 0xd7 ,mem_current_fcs 
+6940 20406a77 call rfcomm_send_ua 
+6941 6fe24223 fetch 1 ,mem_rfcomm_state 
+6942 79207e06 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+6943 79207e07 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+6944 67e24223 store 1 ,mem_rfcomm_state 
+6945 70453500 jam 0 ,mem_rfcomm_initiator 
+6946 20206a58 branch rfcomm_rx_process_end 
+
+rfcomm_rx_process_dlci0_ua:
+6947 6fe24223 fetch 1 ,mem_rfcomm_state 
+6948 79207e07 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+6949 67e24223 store 1 ,mem_rfcomm_state 
+694a 20206a58 branch rfcomm_rx_process_end 
+
+rfcomm_rx_process:
+694b 4728c02a bpatchx patch2a_1 ,mem_patch2a 
+694c 6fe24651 fetch 1 ,memui_reconnect_mode 
+694d c000694f beq no_reconnection ,rfcomm_rx_process_remote_page 
+694e 20206a0d branch rfcomm_rx_process_reconn 
+
+rfcomm_rx_process_remote_page:
+694f 6fe40260 fetch 2 ,mem_l2cap_payload_ptr 
+6950 1fe20c00 copy pdata ,contr 
+6951 20406979 call get_rfcomm_head_struct 
+6952 6fe204f8 fetch 1 ,mem_current_channel 
+6953 c0006955 beq 0 ,parse_dlci0_rp 
+6954 202069d9 branch parse_uih_rp 
+
+parse_dlci0_rp:
+6955 4729402a bpatchx patch2a_2 ,mem_patch2a 
+6956 6fe204f9 fetch 1 ,mem_current_frame_type 
+6957 c01fe93e beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+6958 c039e947 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+6959 c077e95c beq rfcomm_frame_type_uih ,parse_dlci0_rp_uih 
+695a c029ea05 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn_send_event 
+695b 20600000 rtn 
+
+parse_dlci0_rp_uih:
+695c 6fe404fd fetch 2 ,mem_rfcomm_uih_payload_ptr 
+695d 1fe20c00 copy pdata ,contr 
+695e 20406984 call get_rfcomm_uih_head_struct 
+695f 6fe204ff fetch 1 ,mem_uih_cmd_type 
+6960 c020e966 beq uih_param_neg_cmd ,parse_dlci0_rp_uih_pn_cmd 
+6961 c020696e beq uih_param_neg_res ,parse_dlci0_rp_uih_pn_res 
+6962 c038e9a7 beq uih_modem_status_cmd ,parse_dlci0_rp_uih_ms_cmd 
+6963 c03869b3 beq uih_modem_status_res ,parse_dlci0_rp_uih_ms_res 
+6964 c024e9be beq uih_param_cmd_remove_port ,parse_dlci0_rp_uih_cmd_port 
+6965 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_pn_cmd:
+6966 20406970 call parse_dlci0_rp_uih_pn_res_common 
+6967 20206968 branch parse_dlci0_rp_uih_pn_cmd_spp 
+
+parse_dlci0_rp_uih_pn_cmd_spp:
+6968 6fe24226 fetch 1 ,mem_spp_state 
+6969 79207e00 set1 rfcomm_channel_state_pn_cmd ,pdata 
+696a 79207e01 set1 rfcomm_channel_state_pn_res ,pdata 
+696b 67e24226 store 1 ,mem_spp_state 
+696c 20406aa1 call rfcomm_send_param_neg_res 
+696d 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_pn_res:
+696e 20406970 call parse_dlci0_rp_uih_pn_res_common 
+696f 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_pn_res_common:
+6970 2040698c call get_param_payload_ptr 
+6971 20206998 branch get_rfcomm_prarmer_negotiation 
+
+get_rfcomm_param_modem_status:
+6972 2040698c call get_param_payload_ptr 
+6973 efe20006 ifetch 1 ,contr 
+6974 1fe97e00 rshift3 pdata ,pdata 
+6975 67e2453c store 1 ,mem_ms_channel 
+6976 efe20006 ifetch 1 ,contr 
+6977 67e20504 store 1 ,mem_ms_param 
+6978 20600000 rtn 
+
+get_rfcomm_head_struct:
+6979 efe20006 ifetch 1 ,contr 
+697a 67e204f7 store 1 ,mem_current_adss 
+697b 1fe97e00 rshift3 pdata ,pdata 
+697c 67e204f8 store 1 ,mem_current_channel 
+697d efe20006 ifetch 1 ,contr 
+697e 67e204f9 store 1 ,mem_current_frame_type 
+
+get_rfcomm_current_length:
+697f 2040698f call get_rfcomm_length_common 
+6980 604404fb storet 2 ,mem_current_length 
+6981 18c27e00 copy contr ,pdata 
+6982 67e404fd store 2 ,mem_rfcomm_uih_payload_ptr 
+6983 20600000 rtn 
+
+get_rfcomm_uih_head_struct:
+6984 efe20006 ifetch 1 ,contr 
+6985 1fe37e00 rshift pdata ,pdata 
+6986 67e204ff store 1 ,mem_uih_cmd_type 
+6987 2040698f call get_rfcomm_length_common 
+6988 60440500 storet 2 ,mem_uih_length 
+6989 18c27e00 copy contr ,pdata 
+698a 67e40502 store 2 ,mem_param_payload_ptr 
+698b 20600000 rtn 
+
+get_param_payload_ptr:
+698c 6fe40502 fetch 2 ,mem_param_payload_ptr 
+698d 1fe20c00 copy pdata ,contr 
+698e 20600000 rtn 
+
+get_rfcomm_length_common:
+698f efe20006 ifetch 1 ,contr 
+6990 1fe20400 copy pdata ,temp 
+6991 18430400 rshift temp ,temp 
+6992 c3800000 rtnbit1 0 
+6993 efe20006 ifetch 1 ,contr 
+6994 1fe9fe00 lshift3 pdata ,pdata 
+6995 1ff27e00 lshift4 pdata ,pdata 
+6996 98408400 iadd temp ,temp 
+6997 20600000 rtn 
+
+get_rfcomm_prarmer_negotiation:
+6998 efe20006 ifetch 1 ,contr 
+6999 67e2452f store 1 ,mem_pn_dlci 
+699a efe20006 ifetch 1 ,contr 
+699b 67e20505 store 1 ,mem_pn_credit_flow_type_info 
+699c efe20006 ifetch 1 ,contr 
+699d 67e20506 store 1 ,mem_pn_priority 
+699e efe20006 ifetch 1 ,contr 
+699f 67e20507 store 1 ,mem_pn_acknowledg_timer 
+69a0 efe40006 ifetch 2 ,contr 
+69a1 67e44530 store 2 ,mem_pn_max_frame_size 
+69a2 efe20006 ifetch 1 ,contr 
+69a3 67e20508 store 1 ,mem_pn_max_retrans 
+69a4 efe20006 ifetch 1 ,contr 
+69a5 67e2453a store 1 ,mem_remote_credits 
+69a6 20600000 rtn 
+
+parse_dlci0_rp_uih_ms_cmd:
+69a7 20406972 call get_rfcomm_param_modem_status 
+69a8 202069a9 branch parse_dlci0_rp_uih_ms_cmd_spp 
+
+parse_dlci0_rp_uih_ms_cmd_spp:
+69a9 6fe24226 fetch 1 ,mem_spp_state 
+69aa 79207e05 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+69ab 79207e06 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+69ac 67e24226 store 1 ,mem_spp_state 
+69ad 6842452f fetcht 1 ,mem_pn_dlci 
+69ae 184b8400 lshift2 temp ,temp 
+69af 18418403 or_into 3 ,temp 
+69b0 20406ad2 call rfcomm_send_modem_status_res 
+69b1 70453903 jam more_pkt_msc_cmd_spp ,mem_rfcomm_send_more_pkt 
+69b2 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_ms_res:
+69b3 700a9508 jam bt_evt_spp_connected ,mem_fifo_temp 
+69b4 20407bab call ui_ipc_send_event 
+69b5 20406972 call get_rfcomm_param_modem_status 
+69b6 6fe2453c fetch 1 ,mem_ms_channel 
+69b7 1fe67c01 sub pdata ,1 ,null 
+69b8 2022e9ba branch parse_dlci0_rp_uih_ms_res_spp ,zero 
+69b9 20204a8b branch assert 
+
+parse_dlci0_rp_uih_ms_res_spp:
+69ba 6fe24226 fetch 1 ,mem_spp_state 
+69bb 79207e07 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+69bc 67e24226 store 1 ,mem_spp_state 
+69bd 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_cmd_port:
+69be 2040698c call get_param_payload_ptr 
+69bf efe20006 ifetch 1 ,contr 
+69c0 67e20abe store 1 ,mem_rpn_dlci 
+69c1 204056ac call l2cap_malloc_rfcomm_channel 
+69c2 204056ba call l2cap_get_rfcomm_tx_buff 
+69c3 5800000e setarg 0x000e 
+69c4 e7e40005 istore 2 ,contw 
+69c5 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+69c6 e7e40005 istore 2 ,contw 
+69c7 6fe24535 fetch 1 ,mem_rfcomm_initiator 
+69c8 1fe3fe00 lshift pdata ,pdata 
+69c9 79207e00 set1 0 ,pdata 
+69ca e7e20005 istore 1 ,contw 
+69cb 4729c02a bpatchx patch2a_3 ,mem_patch2a 
+69cc 580015ef setarg 0x15ef 
+69cd e7e40005 istore 2 ,contw 
+69ce 58001191 setarg 0x1191 
+69cf e7e40005 istore 2 ,contw 
+69d0 6fe20abe fetch 1 ,mem_rpn_dlci 
+69d1 e7e20005 istore 1 ,contw 
+69d2 58000007 setarg 0x000007 
+69d3 e7ea0005 istore 5 ,contw 
+69d4 58000001 setarg 0x01 
+69d5 e7e40005 istore 2 ,contw 
+69d6 204068f0 call rfcomm_calculate_fcs_dlci0 
+69d7 e7e20005 istore 1 ,contw 
+69d8 20600000 rtn 
+
+parse_uih_rp:
+69d9 202069da branch parse_uih_rp_spp 
+
+parse_uih_rp_spp:
+69da 472a402a bpatchx patch2a_4 ,mem_patch2a 
+69db 6fe204f9 fetch 1 ,mem_current_frame_type 
+69dc c039e9e2 beq rfcomm_frame_type_ua ,parse_uih_rp_spp_ua 
+69dd c01fe9e6 beq rfcomm_frame_type_sabm ,parse_uih_rp_spp_sabm 
+69de c077ea00 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+69df c07fe9f8 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+69e0 c029ea07 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn 
+69e1 20600000 rtn 
+
+parse_uih_rp_spp_ua:
+69e2 6fe24226 fetch 1 ,mem_spp_state 
+69e3 79207e03 set1 rfcomm_channel_state_ua ,pdata 
+69e4 67e24226 store 1 ,mem_spp_state 
+69e5 20206a58 branch rfcomm_rx_process_end 
+
+parse_uih_rp_spp_sabm:
+69e6 6fe24226 fetch 1 ,mem_spp_state 
+69e7 79207e03 set1 rfcomm_channel_state_ua ,pdata 
+69e8 79207e02 set1 rfcomm_channel_state_sabm ,pdata 
+69e9 67e24226 store 1 ,mem_spp_state 
+69ea 6fe204f7 fetch 1 ,mem_current_adss 
+69eb 204068e7 call rfcomm_calculate_fcs_ua 
+69ec 67e204fa store 1 ,mem_current_fcs 
+69ed 20406a77 call rfcomm_send_ua 
+69ee 6fe204f7 fetch 1 ,mem_current_adss 
+69ef 1feb7e00 rshift2 pdata ,pdata 
+69f0 67e2452f store 1 ,mem_pn_dlci 
+69f1 1febfe00 lshift2 pdata ,pdata 
+69f2 793ffe01 set0 rfcomm_address_cr ,pdata 
+69f3 79207e00 set1 rfcomm_address_ext_len ,pdata 
+69f4 d8404537 arg mem_hiufcs_spp ,temp 
+69f5 604404f3 storet 2 ,mem_contw_temp 
+69f6 204068f6 call rfcomm_save_fcs_uih 
+69f7 20206a58 branch rfcomm_rx_process_end 
+
+parse_uih_spp_uih_credits:
+69f8 6fe404fd fetch 2 ,mem_rfcomm_uih_payload_ptr 
+69f9 1fe20c00 copy pdata ,contr 
+69fa 1fe0fe01 increase 1 ,pdata 
+69fb 67e404fd store 2 ,mem_rfcomm_uih_payload_ptr 
+69fc efe20006 ifetch 1 ,contr 
+69fd 6842453a fetcht 1 ,mem_remote_credits 
+69fe 9840fe00 iadd temp ,pdata 
+69ff 67e2453a store 1 ,mem_remote_credits 
+
+parse_uih_spp_uih:
+6a00 20406b01 call rfcomm_increase_credit_given 
+
+parse_uih_spp_uih_cont:
+6a01 20406933 call get_rfcomm_snd_adss 
+6a02 20406ae9 call rfcomm_send_uih_without_payload 
+6a03 20406b0a call spp_process_rx_data 
+6a04 20206a58 branch rfcomm_rx_process_end 
+
+parse_uih_rp_spp_disconn_send_event:
+6a05 700a9509 jam bt_evt_spp_disconnected ,mem_fifo_temp 
+6a06 20407bab call ui_ipc_send_event 
+
+parse_uih_rp_spp_disconn:
+6a07 204068ce call rfcomm_init_spp 
+6a08 6fe204f7 fetch 1 ,mem_current_adss 
+6a09 204068e7 call rfcomm_calculate_fcs_ua 
+6a0a 67e204fa store 1 ,mem_current_fcs 
+6a0b 20406a77 call rfcomm_send_ua 
+6a0c 20206a58 branch rfcomm_rx_process_end 
+
+rfcomm_rx_process_reconn:
+6a0d 6fe40260 fetch 2 ,mem_l2cap_payload_ptr 
+6a0e 1fe20c00 copy pdata ,contr 
+6a0f 20406979 call get_rfcomm_head_struct 
+6a10 6fe204f8 fetch 1 ,mem_current_channel 
+6a11 c0006a13 beq 0 ,parse_dlci0_reconn 
+6a12 20206a47 branch parse_uih_reconn 
+
+parse_dlci0_reconn:
+6a13 472ac02a bpatchx patch2a_5 ,mem_patch2a 
+6a14 6fe204f9 fetch 1 ,mem_current_frame_type 
+6a15 c01fe93e beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+6a16 c039e947 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+6a17 c077ea19 beq rfcomm_frame_type_uih ,parse_dlci0_reconn_uih 
+6a18 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih:
+6a19 6fe404fd fetch 2 ,mem_rfcomm_uih_payload_ptr 
+6a1a 1fe20c00 copy pdata ,contr 
+6a1b 20406984 call get_rfcomm_uih_head_struct 
+6a1c 6fe204ff fetch 1 ,mem_uih_cmd_type 
+6a1d c020ea22 beq uih_param_neg_cmd ,parse_dlci0_reconn_uih_pn_cmd 
+6a1e c0206a22 beq uih_param_neg_res ,parse_dlci0_reconn_uih_pn_cmd 
+6a1f c038ea2d beq uih_modem_status_cmd ,parse_dlci0_reconn_uih_ms_cmd 
+6a20 c0386a3d beq uih_modem_status_res ,parse_dlci0_reconn_uih_ms_res 
+6a21 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih_pn_cmd:
+6a22 20406970 call parse_dlci0_rp_uih_pn_res_common 
+6a23 6fe2452f fetch 1 ,mem_pn_dlci 
+6a24 1fe37e00 rshift pdata ,pdata 
+6a25 68424536 fetcht 1 ,mem_remote_spp_channel 
+6a26 98467c00 isub temp ,null 
+6a27 2022ea29 branch parse_dlci0_reconn_uih_pn_cmd_spp ,zero 
+6a28 20204a8b branch assert 
+
+parse_dlci0_reconn_uih_pn_cmd_spp:
+6a29 6fe24226 fetch 1 ,mem_spp_state 
+6a2a 79207e01 set1 rfcomm_channel_state_pn_res ,pdata 
+6a2b 67e24226 store 1 ,mem_spp_state 
+6a2c 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih_ms_cmd:
+6a2d 20406972 call get_rfcomm_param_modem_status 
+6a2e 6fe2453c fetch 1 ,mem_ms_channel 
+6a2f 68424536 fetcht 1 ,mem_remote_spp_channel 
+6a30 98467c00 isub temp ,null 
+6a31 2022ea34 branch parse_dlci0_reconn_uih_ms_cmd_spp ,zero 
+6a32 20204a8b branch assert 
+6a33 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih_ms_cmd_spp:
+6a34 6fe24226 fetch 1 ,mem_spp_state 
+6a35 79207e05 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+6a36 79207e06 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+6a37 67e24226 store 1 ,mem_spp_state 
+6a38 6842452f fetcht 1 ,mem_pn_dlci 
+6a39 184b8400 lshift2 temp ,temp 
+6a3a 18418403 or_into 3 ,temp 
+6a3b 20406ad2 call rfcomm_send_modem_status_res 
+6a3c 20206a58 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih_ms_res:
+6a3d 20406972 call get_rfcomm_param_modem_status 
+6a3e 6fe2453c fetch 1 ,mem_ms_channel 
+6a3f 68424536 fetcht 1 ,mem_remote_spp_channel 
+6a40 98467c00 isub temp ,null 
+6a41 2022ea43 branch parse_dlci0_reconn_uih_ms_res_spp ,zero 
+6a42 20204a8b branch assert 
+
+parse_dlci0_reconn_uih_ms_res_spp:
+6a43 6fe24226 fetch 1 ,mem_spp_state 
+6a44 79207e07 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+6a45 67e24226 store 1 ,mem_spp_state 
+6a46 20206a58 branch rfcomm_rx_process_end 
+
+parse_uih_reconn:
+6a47 6fe204f8 fetch 1 ,mem_current_channel 
+6a48 68424536 fetcht 1 ,mem_remote_spp_channel 
+6a49 98467c00 isub temp ,null 
+6a4a 2022ea4d branch parse_uih_reconn_spp ,zero 
+6a4b 20204a8b branch assert 
+6a4c 20206a58 branch rfcomm_rx_process_end 
+
+parse_uih_reconn_spp:
+6a4d 6fe204f9 fetch 1 ,mem_current_frame_type 
+6a4e c039ea52 beq rfcomm_frame_type_ua ,parse_uih_reconn_spp_ua 
+6a4f c077ea00 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+6a50 c07fe9f8 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+6a51 c029ea57 beq rfcomm_frame_type_disconn ,parse_uih_reconn_spp_disconn 
+
+parse_uih_reconn_spp_ua:
+6a52 6fe24226 fetch 1 ,mem_spp_state 
+6a53 79207e03 set1 rfcomm_channel_state_ua ,pdata 
+6a54 67e24226 store 1 ,mem_spp_state 
+6a55 20206a58 branch rfcomm_rx_process_end 
+
+parse_uih_reconn_spp_sabm:
+6a56 20206a56 branch parse_uih_reconn_spp_sabm 
+
+parse_uih_reconn_spp_disconn:
+6a57 20206a07 branch parse_uih_rp_spp_disconn 
+
+rfcomm_rx_process_end:
+6a58 20600000 rtn 
+
+rfcomm_send_more_pkt:
+6a59 6fe24539 fetch 1 ,mem_rfcomm_send_more_pkt 
+6a5a 207a0000 rtn blank 
+6a5b c001ea5d beq more_pkt_msc_cmd_spp ,rfcomm_send_more_pkt_msc_cmd_spp 
+6a5c 20204a8b branch assert 
+
+rfcomm_send_more_pkt_msc_cmd_spp:
+6a5d 70453900 jam 0 ,mem_rfcomm_send_more_pkt 
+6a5e 204056ac call l2cap_malloc_rfcomm_channel 
+6a5f d8400001 arg spp_slave_channel ,temp 
+6a60 6842452f fetcht 1 ,mem_pn_dlci 
+6a61 184b8400 lshift2 temp ,temp 
+
+rfcomm_send_more_pkt_msc_cmd_spp0:
+6a62 18418403 or_into 0x03 ,temp 
+6a63 da2000aa arg 0xaa ,rega 
+6a64 20406abd call rfcomm_send_modem_status_cmd 
+6a65 204056ba call l2cap_get_rfcomm_tx_buff 
+6a66 18a20c00 copy contw ,contr 
+6a67 efe40006 ifetch 2 ,contr 
+6a68 203a4a8b branch assert ,blank 
+6a69 20600000 rtn 
+
+rfcomm_send_sabm:
+6a6a 204056ba call l2cap_get_rfcomm_tx_buff 
+6a6b 58000004 setarg 0x0004 
+6a6c e7e40005 istore 2 ,contw 
+6a6d 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6a6e e7e40005 istore 2 ,contw 
+6a6f 6fe204f7 fetch 1 ,mem_current_adss 
+6a70 e7e20005 istore 1 ,contw 
+6a71 472b402a bpatchx patch2a_6 ,mem_patch2a 
+6a72 5800013f setarg 0x013f 
+6a73 e7e40005 istore 2 ,contw 
+6a74 6fe204fa fetch 1 ,mem_current_fcs 
+6a75 e7e20005 istore 1 ,contw 
+6a76 20600000 rtn 
+
+rfcomm_send_ua:
+6a77 204056ac call l2cap_malloc_rfcomm_channel 
+6a78 204056ba call l2cap_get_rfcomm_tx_buff 
+6a79 58000004 setarg 0x0004 
+6a7a e7e40005 istore 2 ,contw 
+6a7b 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6a7c e7e40005 istore 2 ,contw 
+6a7d 6fe204f7 fetch 1 ,mem_current_adss 
+6a7e e7e20005 istore 1 ,contw 
+6a7f 472bc02a bpatchx patch2a_7 ,mem_patch2a 
+6a80 58000173 setarg 0x0173 
+6a81 e7e40005 istore 2 ,contw 
+6a82 6fe204fa fetch 1 ,mem_current_fcs 
+6a83 e7e20005 istore 1 ,contw 
+6a84 20600000 rtn 
+
+rfcomm_send_param_neg_cmd:
+6a85 204056ba call l2cap_get_rfcomm_tx_buff 
+6a86 5800000e setarg 0x000e 
+6a87 e7e40005 istore 2 ,contw 
+6a88 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6a89 e7e40005 istore 2 ,contw 
+6a8a 6fe24535 fetch 1 ,mem_rfcomm_initiator 
+6a8b 1fe3fe00 lshift pdata ,pdata 
+6a8c 79207e00 set1 0 ,pdata 
+6a8d e7e20005 istore 1 ,contw 
+6a8e 472c402b bpatchx patch2b_0 ,mem_patch2b 
+6a8f 580015ef setarg 0x15ef 
+6a90 e7e40005 istore 2 ,contw 
+6a91 58001183 setarg 0x1183 
+6a92 e7e40005 istore 2 ,contw 
+6a93 18427e00 copy temp ,pdata 
+6a94 e7e20005 istore 1 ,contw 
+6a95 580000f0 setarg 0x0000f0 
+6a96 e7e60005 istore 3 ,contw 
+6a97 5800007f setarg rfcomm_max_frame_size 
+6a98 e7e40005 istore 2 ,contw 
+6a99 58000000 setarg 0 
+6a9a e7e20005 istore 1 ,contw 
+6a9b 58000001 setarg 0x01 
+6a9c e7e20005 istore 1 ,contw 
+6a9d 204068f0 call rfcomm_calculate_fcs_dlci0 
+6a9e e7e20005 istore 1 ,contw 
+6a9f 70453b10 jam 0x10 ,mem_credit_given 
+6aa0 20600000 rtn 
+
+rfcomm_send_param_neg_res:
+6aa1 204056ac call l2cap_malloc_rfcomm_channel 
+6aa2 204056ba call l2cap_get_rfcomm_tx_buff 
+6aa3 5800000e setarg 0x000e 
+6aa4 e7e40005 istore 2 ,contw 
+6aa5 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6aa6 e7e40005 istore 2 ,contw 
+6aa7 6fe24535 fetch 1 ,mem_rfcomm_initiator 
+6aa8 1fe3fe00 lshift pdata ,pdata 
+6aa9 79207e00 set1 0 ,pdata 
+6aaa e7e20005 istore 1 ,contw 
+6aab 472cc02b bpatchx patch2b_1 ,mem_patch2b 
+6aac 580015ef setarg 0x15ef 
+6aad e7e40005 istore 2 ,contw 
+6aae 58001181 setarg 0x1181 
+6aaf e7e40005 istore 2 ,contw 
+6ab0 6fe2452f fetch 1 ,mem_pn_dlci 
+6ab1 e7e20005 istore 1 ,contw 
+6ab2 580000e0 setarg 0x0000e0 
+6ab3 e7e60005 istore 3 ,contw 
+6ab4 6fe4453e fetch 2 ,mem_rfcomm_max_frame_size 
+6ab5 e7e40005 istore 2 ,contw 
+6ab6 58000000 setarg 0x00 
+6ab7 e7e20005 istore 1 ,contw 
+6ab8 6fe24540 fetch 1 ,mem_rfcomm_credit_init_data 
+6ab9 e7e20005 istore 1 ,contw 
+6aba 204068f0 call rfcomm_calculate_fcs_dlci0 
+6abb e7e20005 istore 1 ,contw 
+6abc 20600000 rtn 
+
+rfcomm_send_modem_status_cmd:
+6abd 204056ba call l2cap_get_rfcomm_tx_buff 
+6abe 58000008 setarg 0x0008 
+6abf e7e40005 istore 2 ,contw 
+6ac0 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6ac1 e7e40005 istore 2 ,contw 
+6ac2 6fe24535 fetch 1 ,mem_rfcomm_initiator 
+6ac3 1fe3fe00 lshift pdata ,pdata 
+6ac4 79207e00 set1 0 ,pdata 
+6ac5 e7e20005 istore 1 ,contw 
+6ac6 472d402b bpatchx patch2b_2 ,mem_patch2b 
+6ac7 580009ef setarg 0x09ef 
+6ac8 e7e40005 istore 2 ,contw 
+6ac9 580005e3 setarg 0x05e3 
+6aca e7e40005 istore 2 ,contw 
+6acb 18427e00 copy temp ,pdata 
+6acc e7e20005 istore 1 ,contw 
+6acd 5800008d setarg 0x8d 
+6ace e7e20005 istore 1 ,contw 
+6acf 204068f0 call rfcomm_calculate_fcs_dlci0 
+6ad0 e7e20005 istore 1 ,contw 
+6ad1 20600000 rtn 
+
+rfcomm_send_modem_status_res:
+6ad2 204056ac call l2cap_malloc_rfcomm_channel 
+6ad3 204056ba call l2cap_get_rfcomm_tx_buff 
+6ad4 58000008 setarg 0x0008 
+6ad5 e7e40005 istore 2 ,contw 
+6ad6 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6ad7 e7e40005 istore 2 ,contw 
+6ad8 18421600 copy temp ,timeup 
+6ad9 6fe24535 fetch 1 ,mem_rfcomm_initiator 
+6ada 1fe3fe00 lshift pdata ,pdata 
+6adb 79207e00 set1 0 ,pdata 
+6adc e7e20005 istore 1 ,contw 
+6add 472dc02b bpatchx patch2b_3 ,mem_patch2b 
+6ade 580009ef setarg 0x09ef 
+6adf e7e40005 istore 2 ,contw 
+6ae0 580005e1 setarg 0x05e1 
+6ae1 e7e40005 istore 2 ,contw 
+6ae2 19627e00 copy timeup ,pdata 
+6ae3 e7e20005 istore 1 ,contw 
+6ae4 5800008d setarg 0x8d 
+6ae5 e7e20005 istore 1 ,contw 
+6ae6 204068f0 call rfcomm_calculate_fcs_dlci0 
+6ae7 e7e20005 istore 1 ,contw 
+6ae8 20600000 rtn 
+
+rfcomm_send_uih_without_payload:
+6ae9 472e402b bpatchx patch2b_4 ,mem_patch2b 
+6aea 6fe2453b fetch 1 ,mem_credit_given 
+6aeb 207a0000 rtn blank 
+6aec 1a227e00 copy rega ,pdata 
+6aed 67e20a97 store 1 ,mem_pdatatemp + 1 
+6aee 60420a96 storet 1 ,mem_pdatatemp 
+6aef 20405648 call l2cap_malloc_is_fifo_full 
+6af0 247a0000 nrtn blank 
+6af1 204056ac call l2cap_malloc_rfcomm_channel 
+6af2 204056ba call l2cap_get_rfcomm_tx_buff 
+6af3 58000005 setarg 0x05 
+6af4 e7e40005 istore 2 ,contw 
+6af5 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6af6 e7e40005 istore 2 ,contw 
+6af7 6fe20509 fetch 1 ,mem_rfcomm_send_adss 
+6af8 e7e20005 istore 1 ,contw 
+6af9 580001ff setarg 0x01ff 
+6afa e7e40005 istore 2 ,contw 
+6afb 6fe2453b fetch 1 ,mem_credit_given 
+6afc e7e20005 istore 1 ,contw 
+6afd 6fe24538 fetch 1 ,mem_hiufcs_spp_wcredits 
+6afe e7e20005 istore 1 ,contw 
+6aff 70453b00 jam 0 ,mem_credit_given 
+6b00 20600000 rtn 
+
+rfcomm_increase_credit_given:
+6b01 472ec02b bpatchx patch2b_5 ,mem_patch2b 
+6b02 6fe2453d fetch 1 ,mem_credit_flag 
+6b03 c1008000 rtneq credit_enable 
+6b04 6fe404fb fetch 2 ,mem_current_length 
+6b05 207a0000 rtn blank 
+6b06 6fe2453b fetch 1 ,mem_credit_given 
+6b07 1fe0fe01 increase 1 ,pdata 
+6b08 67e2453b store 1 ,mem_credit_given 
+6b09 20600000 rtn 
+
+spp_process_rx_data:
+6b0a 6fe44541 fetch 2 ,mem_cb_receive_spp_data 
+6b0b 20207d77 branch callback_func 
+
+spp_tx_rfcomm_packet:
+6b0c 472f402b bpatchx patch2b_6 ,mem_patch2b 
+6b0d 6fe2453a fetch 1 ,mem_remote_credits 
+6b0e 207a0000 rtn blank 
+6b0f 1fe0ffff increase -1 ,pdata 
+6b10 67e2453a store 1 ,mem_remote_credits 
+6b11 6fe44530 fetch 2 ,mem_pn_max_frame_size 
+6b12 6844466a fetcht 2 ,mem_current_packet_length 
+6b13 98467c00 isub temp ,null 
+6b14 20216b16 branch ssp_tx_rfcomm_from_uart ,positive 
+6b15 67e4466a store 2 ,mem_current_packet_length 
+
+ssp_tx_rfcomm_from_uart:
+6b16 6fe2453b fetch 1 ,mem_credit_given 
+6b17 203a6b1e branch ssp_tx_rfcomm_from_uart_without_credit ,blank 
+6b18 70050c01 jam 1 ,mem_rfcomm_send_offset 
+6b19 6fe24538 fetch 1 ,mem_hiufcs_spp_wcredits 
+6b1a 67e2050b store 1 ,mem_rfcomm_send_fcs 
+6b1b 580000ff setarg rsp_rx_uih_wdata 
+6b1c 67e2050a store 1 ,mem_rfcomm_send_frame_type 
+6b1d 20206b23 branch ssp_tx_rfcomm_from_uart_common 
+
+ssp_tx_rfcomm_from_uart_without_credit:
+6b1e 70050c00 jam 0 ,mem_rfcomm_send_offset 
+6b1f 6fe24537 fetch 1 ,mem_hiufcs_spp 
+6b20 67e2050b store 1 ,mem_rfcomm_send_fcs 
+6b21 580000ef setarg rsp_tx_uih 
+6b22 67e2050a store 1 ,mem_rfcomm_send_frame_type 
+
+ssp_tx_rfcomm_from_uart_common:
+6b23 472fc02b bpatchx patch2b_7 ,mem_patch2b 
+6b24 6fe4466a fetch 2 ,mem_current_packet_length 
+6b25 1fe67c7f sub pdata ,127 ,null 
+6b26 20216b2a branch ssp_tx_rfcomm_from_uart_common0 ,positive 
+6b27 6fe2050c fetch 1 ,mem_rfcomm_send_offset 
+6b28 1fe0fe01 increase 1 ,pdata 
+6b29 67e2050c store 1 ,mem_rfcomm_send_offset 
+
+ssp_tx_rfcomm_from_uart_common0:
+6b2a 20406933 call get_rfcomm_snd_adss 
+6b2b 6fe4466a fetch 2 ,mem_current_packet_length 
+6b2c 1fe0fe08 increase 8 ,pdata 
+6b2d 6842050c fetcht 1 ,mem_rfcomm_send_offset 
+6b2e 9840a200 iadd temp ,rega 
+6b2f 2040561a call l2cap_malloc 
+6b30 67e40273 store 2 ,mem_rfcomm_tx_buff_ptr 
+6b31 1fe0fe04 increase 4 ,pdata 
+6b32 67e40275 store 2 ,mem_rfcomm_tx_payload_ptr 
+6b33 1fe20a00 copy pdata ,contw 
+6b34 6fe20509 fetch 1 ,mem_rfcomm_send_adss 
+6b35 e7e20005 istore 1 ,contw 
+6b36 6fe2050a fetch 1 ,mem_rfcomm_send_frame_type 
+6b37 e7e20005 istore 1 ,contw 
+6b38 20406b54 call ssp_tx_write_length 
+6b39 20406b65 call ssp_tx_write_given_credit 
+6b3a 4730402c bpatchx patch2c_0 ,mem_patch2c 
+6b3b 6fe44543 fetch 2 ,mem_nl_rx_data_src 
+6b3c 1fe20600 copy pdata ,contru 
+6b3d 6fe4466a fetch 2 ,mem_current_packet_length 
+6b3e 1fe27200 copy pdata ,loopcnt 
+6b3f 204067da call uart_copy_rx_bytes_fast 
+6b40 18a20400 copy contw ,temp 
+6b41 18627e00 copy contru ,pdata 
+6b42 67e44543 store 2 ,mem_nl_rx_data_src 
+6b43 18420a00 copy temp ,contw 
+6b44 6fe2050b fetch 1 ,mem_rfcomm_send_fcs 
+6b45 e7e20005 istore 1 ,contw 
+6b46 6fe40273 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+6b47 1fe20a00 copy pdata ,contw 
+6b48 6fe4466a fetch 2 ,mem_current_packet_length 
+6b49 6842050c fetcht 1 ,mem_rfcomm_send_offset 
+6b4a 9840fe00 iadd temp ,pdata 
+6b4b 1fe0fe04 increase 4 ,pdata 
+6b4c e7e40005 istore 2 ,contw 
+6b4d 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6b4e e7e40005 istore 2 ,contw 
+6b4f 70453b00 jam 0 ,mem_credit_given 
+6b50 6fe44545 fetch 2 ,mem_nl_rx_len_all 
+6b51 c0004ed4 beq 0 ,module_hci_command_tx_spp_tx_complete 
+6b52 700b0100 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+6b53 20600000 rtn 
+
+ssp_tx_write_length:
+6b54 4730c02c bpatchx patch2c_1 ,mem_patch2c 
+6b55 6fe4466a fetch 2 ,mem_current_packet_length 
+6b56 1fe67c7f sub pdata ,0x7f ,null 
+6b57 24216b5c nbranch ssp_tx_write_long_packet ,positive 
+6b58 1fe3fe00 lshift pdata ,pdata 
+6b59 79207e00 set1 0 ,pdata 
+6b5a e7e20005 istore 1 ,contw 
+6b5b 20600000 rtn 
+
+ssp_tx_write_long_packet:
+6b5c 6fe4466a fetch 2 ,mem_current_packet_length 
+6b5d 1fe97e00 rshift3 pdata ,pdata 
+6b5e 1ff18400 rshift4 pdata ,temp 
+6b5f 1fe17e7f and_into 0x7f ,pdata 
+6b60 1fe3fe00 lshift pdata ,pdata 
+6b61 793ffe00 set0 0 ,pdata 
+6b62 e7e20005 istore 1 ,contw 
+6b63 e0420005 istoret 1 ,contw 
+6b64 20600000 rtn 
+
+ssp_tx_write_given_credit:
+6b65 6fe2453b fetch 1 ,mem_credit_given 
+6b66 207a0000 rtn blank 
+6b67 e7e20005 istore 1 ,contw 
+6b68 20600000 rtn 
+
+scheduler_process:
+6b69 4731402c bpatchx patch2c_2 ,mem_patch2c 
+6b6a 20407bc1 call check_51cmd 
+6b6b 20404c8f call app_process_bb_event 
+6b6c 204066fd call process_conn_sm 
+6b6d 4731c02c bpatchx patch2c_3 ,mem_patch2c 
+6b6e 20407591 call sp_calc_sequence 
+6b6f 2040756a call simple_pairing_sequence 
+6b70 2040757b call master_simple_paring_sequence 
+6b71 20405648 call l2cap_malloc_is_fifo_full 
+6b72 247a0000 nrtn blank 
+6b73 20405183 call l2cap_call_proc_sigal_pending 
+6b74 20405648 call l2cap_malloc_is_fifo_full 
+6b75 247a0000 nrtn blank 
+6b76 4732402c bpatchx patch2c_4 ,mem_patch2c 
+6b77 20406bb4 call process_upper_sm 
+6b78 2040533e call l2cap_send_config_req 
+6b79 20406a59 call rfcomm_send_more_pkt 
+
+scheduler_process0:
+6b7a 20406b7d call scheduler_tx_disconnect_hid 
+6b7b 4732c02c bpatchx patch2c_5 ,mem_patch2c 
+6b7c 20204c8b branch app_process_bt 
+
+scheduler_tx_disconnect_hid:
+6b7d 6fe2027b fetch 1 ,mem_control_tasks 
+6b7e c2805461 bbit1 l2cap_disconnect_interrupt ,l2cap_disconnect_interrupt_req 
+6b7f c283d46b bbit1 l2cap_disconnect_control ,l2cap_disconnect_control_req 
+6b80 20600000 rtn 
+
+scheduler_tx_l2cap_pkt:
+6b81 4733402c bpatchx patch2c_6 ,mem_patch2c 
+6b82 2040564e call l2cap_malloc_is_fifo_empty 
+6b83 207a0000 rtn blank 
+6b84 6fe2004b fetch 1 ,mem_op 
+6b85 c3830000 rtnbit1 op_txl2cap 
+6b86 20405632 call l2cap_malloc_fifo_out 
+6b87 67e4016d store 2 ,mem_txptr 
+6b88 1fe20c00 copy pdata ,contr 
+6b89 efe40006 ifetch 2 ,contr 
+6b8a 1fe0fe04 increase 4 ,pdata 
+6b8b 67e441dd store 2 ,mem_tx_len 
+6b8c 7041dc06 jam 6 ,mem_tx_lch 
+6b8d 4733c02c bpatchx patch2c_7 ,mem_patch2c 
+6b8e 6fe44218 fetch 2 ,mem_l2cap_tx_multi_offset 
+6b8f 203a6b9c branch scheduler_tx_l2cap_start_pkt ,blank 
+6b90 6fe2004b fetch 1 ,mem_op 
+6b91 c4038000 rtnbit0 op_pkt_comp 
+6b92 793ffe07 set0 op_pkt_comp ,pdata 
+6b93 67e2004b store 1 ,mem_op 
+6b94 7041dc05 jam 5 ,mem_tx_lch 
+6b95 68444218 fetcht 2 ,mem_l2cap_tx_multi_offset 
+6b96 6fe4016d fetch 2 ,mem_txptr 
+6b97 9840fe00 iadd temp ,pdata 
+6b98 67e4016d store 2 ,mem_txptr 
+6b99 6fe441dd fetch 2 ,mem_tx_len 
+6b9a 98467e00 isub temp ,pdata 
+6b9b 67e441dd store 2 ,mem_tx_len 
+
+scheduler_tx_l2cap_start_pkt:
+6b9c 4734402d bpatchx patch2d_0 ,mem_patch2d 
+6b9d 6fe441dd fetch 2 ,mem_tx_len 
+6b9e 203a4a8b branch assert ,blank 
+6b9f d8400104 arg l2cap_max_pkt_len ,temp 
+6ba0 98467e00 isub temp ,pdata 
+6ba1 24216ba8 nbranch scheduler_tx_l2cap_last_pkt ,positive 
+6ba2 4734c02d bpatchx patch2d_1 ,mem_patch2d 
+6ba3 604441dd storet 2 ,mem_tx_len 
+6ba4 6fe44218 fetch 2 ,mem_l2cap_tx_multi_offset 
+6ba5 9840fe00 iadd temp ,pdata 
+6ba6 67e44218 store 2 ,mem_l2cap_tx_multi_offset 
+6ba7 20206baa branch scheduler_tx_l2cap_pkt_end 
+
+scheduler_tx_l2cap_last_pkt:
+6ba8 58000000 setarg 0 
+6ba9 67e44218 store 2 ,mem_l2cap_tx_multi_offset 
+
+scheduler_tx_l2cap_pkt_end:
+6baa 6fe2004b fetch 1 ,mem_op 
+6bab 79207e06 set1 op_txl2cap ,pdata 
+6bac 67e2004b store 1 ,mem_op 
+6bad 20600000 rtn 
+
+scheduler_start_upper_sm:
+6bae 6fe24654 fetch 1 ,mem_ui_profile_supported 
+6baf c2806bb2 bbit1 support_hid ,scheduler_start_upper_sm_hid 
+6bb0 70028301 jam uppersm_reconn_sdp_conn ,mem_upper_sm_reconn 
+6bb1 20600000 rtn 
+
+scheduler_start_upper_sm_hid:
+6bb2 7002830f jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+6bb3 20600000 rtn 
+
+process_upper_sm:
+6bb4 6fe24651 fetch 1 ,memui_reconnect_mode 
+6bb5 243a6bba nbranch process_upper_sm_reconn ,blank 
+
+process_upper_sm_remote_page:
+6bb6 6fe20282 fetch 1 ,mem_upper_sm_remote_page 
+6bb7 207a0000 rtn blank 
+6bb8 70028200 jam 0 ,mem_upper_sm_remote_page 
+
+process_upper_sm_rp_wait:
+6bb9 20600000 rtn 
+
+process_upper_sm_reconn:
+6bba 4735402d bpatchx patch2d_2 ,mem_patch2d 
+6bbb 6fe20283 fetch 1 ,mem_upper_sm_reconn 
+6bbc 207a0000 rtn blank 
+6bbd c000ebda beq uppersm_reconn_sdp_conn ,process_upper_sm_reconn_sdp_conn 
+6bbe c0016c33 beq uppersm_reconn_sdp_conn_wait ,process_upper_sm_reconn_sdp_conn_wait 
+6bbf c001ebe0 beq uppersm_reconn_sdp_cfg ,process_upper_sm_reconn_sdp_cfg 
+6bc0 c0026c37 beq uppersm_reconn_sdp_cfg_wait ,process_upper_sm_reconn_sdp_cfg_wait 
+6bc1 c01debea beq uppersm_reconn_ss_spp ,process_upper_sm_reconn_ss_spp 
+6bc2 c01e6c3a beq uppersm_reconn_ss_spp_wait ,process_upper_sm_reconn_ss_spp_wait 
+6bc3 c006ebef beq uppersm_reconn_sdp_disconn ,process_upper_sm_reconn_sdp_disconn 
+6bc4 c0076c3f beq uppersm_reconn_sdp_disconn_wait ,process_upper_sm_reconn_sdp_disconn_wait 
+6bc5 c007ebf2 beq uppersm_reconn_hid_ctrl_conn ,process_upper_sm_reconn_hid_ctrl_conn 
+6bc6 c0086c45 beq uppersm_reconn_hid_ctrl_conn_wait ,process_upper_sm_reconn_hid_ctrl_conn_wait 
+6bc7 c008ebf8 beq uppersm_reconn_hid_ctrl_cfg ,process_upper_sm_reconn_hid_ctrl_cfg 
+6bc8 c0096c49 beq uppersm_reconn_hid_ctrl_cfg_wait ,process_upper_sm_reconn_hid_ctrl_cfg_wait 
+6bc9 c009ebfe beq uppersm_reconn_hid_int_conn ,process_upper_sm_reconn_hid_int_conn 
+6bca c00a6c4d beq uppersm_reconn_hid_int_conn_wait ,process_upper_sm_reconn_hid_int_conn_wait 
+6bcb c00aec04 beq uppersm_reconn_hid_int_cfg ,process_upper_sm_reconn_hid_int_cfg 
+6bcc c00b6c51 beq uppersm_reconn_hid_int_cfg_wait ,process_upper_sm_reconn_hid_int_cfg_wait 
+6bcd c00bec0a beq uppersm_reconn_rfcomm_conn ,process_upper_sm_reconn_rfcomm_conn 
+6bce c00c6c56 beq uppersm_reconn_rfcomm_conn_wait ,process_upper_sm_reconn_rfcomm_conn_wait 
+6bcf c00cec10 beq uppersm_reconn_rfcomm_cfg ,process_upper_sm_reconn_rfcomm_cfg 
+6bd0 c00d6c5a beq uppersm_reconn_rfcomm_cfg_wait ,process_upper_sm_reconn_rfcomm_cfg_wait 
+6bd1 c00dec16 beq uppersm_reconn_rfcomm_sabm ,process_upper_sm_reconn_rfcomm_sabm 
+6bd2 c00e6c5e beq uppersm_reconn_rfcomm_sabm_wait ,process_upper_sm_reconn_rfcomm_sabm_wait 
+6bd3 c00eec1c beq uppersm_reconn_spp_cmd_pn ,process_upper_sm_reconn_spp_cmd_pn 
+6bd4 c00f6c63 beq uppersm_reconn_spp_cmd_pn_wait ,process_upper_sm_reconn_spp_cmd_pn_wait 
+6bd5 c00fec22 beq uppersm_reconn_spp_sabm ,process_upper_sm_reconn_spp_sabm 
+6bd6 c0106c67 beq uppersm_reconn_spp_sabm_wait ,process_upper_sm_reconn_spp_sabm_wait 
+6bd7 c010ec2d beq uppersm_reconn_spp_cmd_ms ,process_upper_sm_reconn_spp_cmd_ms 
+6bd8 c0116c6b beq uppersm_reconn_spp_cmd_ms_wait ,process_upper_sm_reconn_spp_cmd_ms_wait 
+
+process_upper_sm_reconn_wait:
+6bd9 20600000 rtn 
+
+process_upper_sm_reconn_sdp_conn:
+6bda 20406c76 call upper_sm_send_sdp_conn 
+6bdb 70028302 jam uppersm_reconn_sdp_conn_wait ,mem_upper_sm_reconn 
+6bdc 6fe24222 fetch 1 ,mem_sdp_state 
+6bdd 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+6bde 67e24222 store 1 ,mem_sdp_state 
+6bdf 20600000 rtn 
+
+process_upper_sm_reconn_sdp_cfg:
+6be0 70028304 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+6be1 6fe24222 fetch 1 ,mem_sdp_state 
+6be2 c3810000 rtnbit1 l2cap_channel_state_snd_cfg_req 
+6be3 70028303 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+6be4 20406c7d call upper_sm_send_sdp_cfg 
+6be5 70028304 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+6be6 6fe24222 fetch 1 ,mem_sdp_state 
+6be7 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+6be8 67e24222 store 1 ,mem_sdp_state 
+6be9 20600000 rtn 
+
+process_upper_sm_reconn_ss_spp:
+6bea 2040564e call l2cap_malloc_is_fifo_empty 
+6beb 247a0000 nrtn blank 
+6bec 20406c8c call upper_sm_send_ss_spp 
+6bed 7002833c jam uppersm_reconn_ss_spp_wait ,mem_upper_sm_reconn 
+6bee 20600000 rtn 
+
+process_upper_sm_reconn_sdp_disconn:
+6bef 20406c82 call upper_sm_send_sdp_disconn 
+6bf0 7002830e jam uppersm_reconn_sdp_disconn_wait ,mem_upper_sm_reconn 
+6bf1 20600000 rtn 
+
+process_upper_sm_reconn_hid_ctrl_conn:
+6bf2 20406c9c call upper_sm_send_hid_ctrl_conn 
+6bf3 70028310 jam uppersm_reconn_hid_ctrl_conn_wait ,mem_upper_sm_reconn 
+6bf4 6fe24224 fetch 1 ,mem_hid_control_state 
+6bf5 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+6bf6 67e24224 store 1 ,mem_hid_control_state 
+6bf7 20600000 rtn 
+
+process_upper_sm_reconn_hid_ctrl_cfg:
+6bf8 20406ca3 call upper_sm_send_hid_ctrl_cfg 
+6bf9 70028312 jam uppersm_reconn_hid_ctrl_cfg_wait ,mem_upper_sm_reconn 
+6bfa 6fe24224 fetch 1 ,mem_hid_control_state 
+6bfb 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+6bfc 67e24224 store 1 ,mem_hid_control_state 
+6bfd 20600000 rtn 
+
+process_upper_sm_reconn_hid_int_conn:
+6bfe 20406ca8 call upper_sm_send_hid_int_conn 
+6bff 70028314 jam uppersm_reconn_hid_int_conn_wait ,mem_upper_sm_reconn 
+6c00 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+6c01 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+6c02 67e24225 store 1 ,mem_hid_interrupt_state 
+6c03 20600000 rtn 
+
+process_upper_sm_reconn_hid_int_cfg:
+6c04 20406caf call upper_sm_send_hid_int_cfg 
+6c05 70028316 jam uppersm_reconn_hid_int_cfg_wait ,mem_upper_sm_reconn 
+6c06 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+6c07 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+6c08 67e24225 store 1 ,mem_hid_interrupt_state 
+6c09 20600000 rtn 
+
+process_upper_sm_reconn_rfcomm_conn:
+6c0a 20406c90 call upper_sm_send_rfcomm_conn 
+6c0b 70028318 jam uppersm_reconn_rfcomm_conn_wait ,mem_upper_sm_reconn 
+6c0c 6fe24223 fetch 1 ,mem_rfcomm_state 
+6c0d 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+6c0e 67e24223 store 1 ,mem_rfcomm_state 
+6c0f 20600000 rtn 
+
+process_upper_sm_reconn_rfcomm_cfg:
+6c10 20406c97 call upper_sm_send_rfcomm_cfg 
+6c11 7002831a jam uppersm_reconn_rfcomm_cfg_wait ,mem_upper_sm_reconn 
+6c12 6fe24223 fetch 1 ,mem_rfcomm_state 
+6c13 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+6c14 67e24223 store 1 ,mem_rfcomm_state 
+6c15 20600000 rtn 
+
+process_upper_sm_reconn_rfcomm_sabm:
+6c16 20406cb4 call upper_sm_send_rfcomm_sabm 
+6c17 7002831c jam uppersm_reconn_rfcomm_sabm_wait ,mem_upper_sm_reconn 
+6c18 6fe24223 fetch 1 ,mem_rfcomm_state 
+6c19 79207e06 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+6c1a 67e24223 store 1 ,mem_rfcomm_state 
+6c1b 20600000 rtn 
+
+process_upper_sm_reconn_spp_cmd_pn:
+6c1c 20406cbb call upper_sm_send_spp_cmd_pn 
+6c1d 6fe24226 fetch 1 ,mem_spp_state 
+6c1e 79207e00 set1 rfcomm_channel_state_pn_cmd 
+6c1f 67e24226 store 1 ,mem_spp_state 
+6c20 7002831e jam uppersm_reconn_spp_cmd_pn_wait ,mem_upper_sm_reconn 
+6c21 20600000 rtn 
+
+process_upper_sm_reconn_spp_sabm:
+6c22 20406cc1 call upper_sm_send_spp_sabm 
+6c23 6fe24226 fetch 1 ,mem_spp_state 
+6c24 79207e02 set1 rfcomm_channel_state_sabm 
+6c25 67e24226 store 1 ,mem_spp_state 
+6c26 70028320 jam uppersm_reconn_spp_sabm_wait ,mem_upper_sm_reconn 
+6c27 6fe24536 fetch 1 ,mem_remote_spp_channel 
+6c28 1fe9fe00 lshift3 pdata ,pdata 
+6c29 1fe1fe03 or_into 3 ,pdata 
+6c2a d8404537 arg mem_hiufcs_spp ,temp 
+6c2b 604404f3 storet 2 ,mem_contw_temp 
+6c2c 202068f6 branch rfcomm_save_fcs_uih 
+
+process_upper_sm_reconn_spp_cmd_ms:
+6c2d 20406ccb call upper_sm_send_spp_cmd_ms 
+6c2e 6fe24226 fetch 1 ,mem_spp_state 
+6c2f 79207e04 set1 rfcomm_channel_state_snd_ms_cmd 
+6c30 67e24226 store 1 ,mem_spp_state 
+6c31 70028322 jam uppersm_reconn_spp_cmd_ms_wait ,mem_upper_sm_reconn 
+6c32 20600000 rtn 
+
+process_upper_sm_reconn_sdp_conn_wait:
+6c33 6fe24222 fetch 1 ,mem_sdp_state 
+6c34 c4008000 rtnbit0 l2cap_channel_state_conn_res 
+6c35 70028303 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+6c36 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_sdp_cfg_wait:
+6c37 6fe24222 fetch 1 ,mem_sdp_state 
+6c38 c19f8000 rtnne l2cap_channel_setup_complete 
+6c39 7002833b jam uppersm_reconn_ss_spp ,mem_upper_sm_reconn 
+
+process_upper_sm_reconn_ss_spp_wait:
+6c3a 6fe20281 fetch 1 ,mem_message_to_uppersm 
+6c3b c18b8000 rtnne recieve_ss_reasult_hf 
+6c3c 70028100 jam 0 ,mem_message_to_uppersm 
+6c3d 7002830d jam uppersm_reconn_sdp_disconn ,mem_upper_sm_reconn 
+6c3e 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_sdp_disconn_wait:
+6c3f 6fe24222 fetch 1 ,mem_sdp_state 
+6c40 247a0000 nrtn blank 
+6c41 6fe24654 fetch 1 ,mem_ui_profile_supported 
+6c42 c2806c6e bbit1 support_hid ,process_upper_sm_reconn_setup_hid 
+6c43 c2836c70 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+6c44 20206c74 branch process_upper_sm_reconn_termination 
+
+process_upper_sm_reconn_hid_ctrl_conn_wait:
+6c45 6fe24224 fetch 1 ,mem_hid_control_state 
+6c46 c4008000 rtnbit0 l2cap_channel_state_conn_res 
+6c47 70028311 jam uppersm_reconn_hid_ctrl_cfg ,mem_upper_sm_reconn 
+6c48 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_hid_ctrl_cfg_wait:
+6c49 6fe24224 fetch 1 ,mem_hid_control_state 
+6c4a c19f8000 rtnne l2cap_channel_setup_complete 
+6c4b 70028313 jam uppersm_reconn_hid_int_conn ,mem_upper_sm_reconn 
+6c4c 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_hid_int_conn_wait:
+6c4d 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+6c4e c4008000 rtnbit0 l2cap_channel_state_conn_res 
+6c4f 70028315 jam uppersm_reconn_hid_int_cfg ,mem_upper_sm_reconn 
+6c50 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_hid_int_cfg_wait:
+6c51 6fe24225 fetch 1 ,mem_hid_interrupt_state 
+6c52 c19f8000 rtnne l2cap_channel_setup_complete 
+6c53 6fe24654 fetch 1 ,mem_ui_profile_supported 
+6c54 c2836c70 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+6c55 20206c74 branch process_upper_sm_reconn_termination 
+
+process_upper_sm_reconn_rfcomm_conn_wait:
+6c56 6fe24223 fetch 1 ,mem_rfcomm_state 
+6c57 c4008000 rtnbit0 l2cap_channel_state_conn_res 
+6c58 70028319 jam uppersm_reconn_rfcomm_cfg ,mem_upper_sm_reconn 
+6c59 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_rfcomm_cfg_wait:
+6c5a 6fe24223 fetch 1 ,mem_rfcomm_state 
+6c5b c19f8000 rtnne l2cap_channel_setup_complete 
+6c5c 7002831b jam uppersm_reconn_rfcomm_sabm ,mem_upper_sm_reconn 
+6c5d 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_rfcomm_sabm_wait:
+6c5e 6fe24223 fetch 1 ,mem_rfcomm_state 
+6c5f c1ff8000 rtnne l2cap_channel_rfcomm_dlci0_opened 
+6c60 6fe24654 fetch 1 ,mem_ui_profile_supported 
+6c61 c2836c72 bbit1 support_spp ,process_upper_sm_reconn_setup_spp 
+6c62 20206c74 branch process_upper_sm_reconn_termination 
+
+process_upper_sm_reconn_spp_cmd_pn_wait:
+6c63 6fe24226 fetch 1 ,mem_spp_state 
+6c64 c4008000 rtnbit0 rfcomm_channel_state_pn_res 
+6c65 7002831f jam uppersm_reconn_spp_sabm ,mem_upper_sm_reconn 
+6c66 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_spp_sabm_wait:
+6c67 6fe24226 fetch 1 ,mem_spp_state 
+6c68 c4018000 rtnbit0 rfcomm_channel_state_ua 
+6c69 70028321 jam uppersm_reconn_spp_cmd_ms ,mem_upper_sm_reconn 
+6c6a 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_spp_cmd_ms_wait:
+6c6b 6fe24226 fetch 1 ,mem_spp_state 
+6c6c c1ff8000 rtnne rfcomm_channel_setup_complete 
+6c6d 20206c74 branch process_upper_sm_reconn_termination 
+
+process_upper_sm_reconn_setup_hid:
+6c6e 7002830f jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+6c6f 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_setup_rfcomm:
+6c70 70028317 jam uppersm_reconn_rfcomm_conn ,mem_upper_sm_reconn 
+6c71 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_setup_spp:
+6c72 7002831d jam uppersm_reconn_spp_cmd_pn ,mem_upper_sm_reconn 
+6c73 20206bba branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_termination:
+6c74 70028300 jam 0 ,mem_upper_sm_reconn 
+6c75 20600000 rtn 
+
+upper_sm_send_sdp_conn:
+6c76 4735c02d bpatchx patch2d_3 ,mem_patch2d 
+6c77 20405692 call l2cap_malloc_signal_channel 
+6c78 58000001 setarg psm_sdp 
+6c79 1fe20400 copy pdata ,temp 
+6c7a 58000050 setarg l2cap_sdp_channel 
+6c7b 1fe21600 copy pdata ,timeup 
+6c7c 20205482 branch ml2cap_send_signal_connect_req 
+
+upper_sm_send_sdp_cfg:
+6c7d 4736402d bpatchx patch2d_4 ,mem_patch2d 
+6c7e 20405692 call l2cap_malloc_signal_channel 
+6c7f 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+6c80 1fe20400 copy pdata ,temp 
+6c81 20205491 branch ml2cap_send_signal_config_req 
+
+upper_sm_send_sdp_disconn:
+6c82 4736c02d bpatchx patch2d_5 ,mem_patch2d 
+6c83 20405692 call l2cap_malloc_signal_channel 
+6c84 6fe4421a fetch 2 ,mem_sdp_remote_cid 
+6c85 1fe20400 copy pdata ,temp 
+6c86 d9600050 arg l2cap_sdp_channel ,timeup 
+6c87 204054a6 call ml2cap_send_signal_disconn_req 
+6c88 6fe24222 fetch 1 ,mem_sdp_state 
+6c89 793ffe05 set0 l2cap_channel_state_rcv_cfg_res ,pdata 
+6c8a 67e24222 store 1 ,mem_sdp_state 
+6c8b 20600000 rtn 
+
+upper_sm_send_ss_spp:
+6c8c 4737402d bpatchx patch2d_6 ,mem_patch2d 
+6c8d 2040569f call l2cap_malloc_sdp_channel 
+6c8e 20406ff7 call sdp_send_spp_request 
+6c8f 202054c1 branch msdp_send_req_done 
+
+upper_sm_send_rfcomm_conn:
+6c90 4737c02d bpatchx patch2d_7 ,mem_patch2d 
+6c91 20405692 call l2cap_malloc_signal_channel 
+6c92 58000003 setarg psm_rfcomm 
+6c93 1fe20400 copy pdata ,temp 
+6c94 58000051 setarg l2cap_rfcomm_channel 
+6c95 1fe21600 copy pdata ,timeup 
+6c96 20205482 branch ml2cap_send_signal_connect_req 
+
+upper_sm_send_rfcomm_cfg:
+6c97 4738402e bpatchx patch2e_0 ,mem_patch2e 
+6c98 20405692 call l2cap_malloc_signal_channel 
+6c99 6fe4421c fetch 2 ,mem_rfcomm_remote_cid 
+6c9a 1fe20400 copy pdata ,temp 
+6c9b 20205491 branch ml2cap_send_signal_config_req 
+
+upper_sm_send_hid_ctrl_conn:
+6c9c 4738c02e bpatchx patch2e_1 ,mem_patch2e 
+6c9d 20405692 call l2cap_malloc_signal_channel 
+6c9e 58000011 setarg psm_hid_control 
+6c9f 1fe20400 copy pdata ,temp 
+6ca0 58000052 setarg l2cap_hid_control_channel 
+6ca1 1fe21600 copy pdata ,timeup 
+6ca2 20205482 branch ml2cap_send_signal_connect_req 
+
+upper_sm_send_hid_ctrl_cfg:
+6ca3 4739402e bpatchx patch2e_2 ,mem_patch2e 
+6ca4 20405692 call l2cap_malloc_signal_channel 
+6ca5 6fe4421e fetch 2 ,mem_hid_ctrl_remote_cid 
+6ca6 1fe20400 copy pdata ,temp 
+6ca7 20205491 branch ml2cap_send_signal_config_req 
+
+upper_sm_send_hid_int_conn:
+6ca8 4739c02e bpatchx patch2e_3 ,mem_patch2e 
+6ca9 20405692 call l2cap_malloc_signal_channel 
+6caa 58000013 setarg psm_hid_interrupt 
+6cab 1fe20400 copy pdata ,temp 
+6cac 58000053 setarg l2cap_hid_interrupt_channel 
+6cad 1fe21600 copy pdata ,timeup 
+6cae 20205482 branch ml2cap_send_signal_connect_req 
+
+upper_sm_send_hid_int_cfg:
+6caf 473a402e bpatchx patch2e_4 ,mem_patch2e 
+6cb0 20405692 call l2cap_malloc_signal_channel 
+6cb1 6fe44220 fetch 2 ,mem_hid_int_remote_cid 
+6cb2 1fe20400 copy pdata ,temp 
+6cb3 20205491 branch ml2cap_send_signal_config_req 
+
+upper_sm_send_rfcomm_sabm:
+6cb4 473ac02e bpatchx patch2e_5 ,mem_patch2e 
+6cb5 204056ac call l2cap_malloc_rfcomm_channel 
+6cb6 7004f703 jam 3 ,mem_current_adss 
+6cb7 7004fa1c jam 0x1c ,mem_current_fcs 
+6cb8 20406a6a call rfcomm_send_sabm 
+6cb9 70453501 jam 1 ,mem_rfcomm_initiator 
+6cba 20600000 rtn 
+
+upper_sm_send_spp_cmd_pn:
+6cbb 473b402e bpatchx patch2e_6 ,mem_patch2e 
+6cbc 204056ac call l2cap_malloc_rfcomm_channel 
+6cbd 68424536 fetcht 1 ,mem_remote_spp_channel 
+6cbe 2040693a call channel_to_dlci 
+6cbf 6042452f storet 1 ,mem_pn_dlci 
+6cc0 20206a85 branch rfcomm_send_param_neg_cmd 
+
+upper_sm_send_spp_sabm:
+6cc1 473bc02e bpatchx patch2e_7 ,mem_patch2e 
+6cc2 204056ac call l2cap_malloc_rfcomm_channel 
+6cc3 6842452f fetcht 1 ,mem_pn_dlci 
+6cc4 20406934 call dlci_to_address_cmd 
+6cc5 204068db call rfcomm_calculate_fcs_sabm 
+6cc6 67e204fa store 1 ,mem_current_fcs 
+6cc7 6842452f fetcht 1 ,mem_pn_dlci 
+6cc8 20406934 call dlci_to_address_cmd 
+6cc9 604204f7 storet 1 ,mem_current_adss 
+6cca 20206a6a branch rfcomm_send_sabm 
+
+upper_sm_send_spp_cmd_ms:
+6ccb 473c402f bpatchx patch2f_0 ,mem_patch2f 
+6ccc 204056ac call l2cap_malloc_rfcomm_channel 
+6ccd 6842452f fetcht 1 ,mem_pn_dlci 
+6cce 20406934 call dlci_to_address_cmd 
+6ccf 20206abd branch rfcomm_send_modem_status_cmd 
+
+sdp_process:
+6cd0 473cc02f bpatchx patch2f_1 ,mem_patch2f 
+6cd1 6fe40260 fetch 2 ,mem_l2cap_payload_ptr 
+6cd2 98000c00 iforce contr 
+6cd3 efe20006 ifetch 1 ,contr 
+6cd4 1fe22400 copy pdata ,regb 
+6cd5 67e20517 store 1 ,mem_sdp_pduid 
+6cd6 efe40006 ifetch 2 ,contr 
+6cd7 67e40518 store 2 ,mem_sdp_transactionid 
+6cd8 efe20006 ifetch 1 ,contr 
+6cd9 1fed1600 lshift8 pdata ,timeup 
+6cda efe20006 ifetch 1 ,contr 
+6cdb 99609600 iadd timeup ,timeup 
+6cdc 473d402f bpatchx patch2f_2 ,mem_patch2f 
+6cdd 18c20400 copy contr ,temp 
+6cde df200004 arg 4 ,loopcnt 
+6cdf d8a00526 arg mem_sdp_handle_list ,contw 
+6ce0 20407ca1 call memset0 
+6ce1 18420c00 copy temp ,contr 
+6ce2 1a427e00 deposit regb 
+6ce3 c000ee79 beq sdp_error_res ,sdp_process_error_res 
+6ce4 c0016ceb beq sdp_search_req ,sdp_process_ss_req 
+6ce5 c001ee79 beq sdp_search_res ,sdp_process_ss_res 
+6ce6 c0026d13 beq sdp_attribute_req ,sdp_process_sa_req 
+6ce7 c002ee79 beq sdp_attribute_res ,sdp_process_sa_res 
+6ce8 c0036dc1 beq sdp_searchattrib_req ,sdp_process_ssa_req 
+6ce9 c003ee79 beq sdp_searchattrib_res ,sdp_process_ssa_res 
+6cea 20206e80 branch sdp_insufficient_resource 
+
+sdp_process_ss_req:
+6ceb 473dc02f bpatchx patch2f_3 ,mem_patch2f 
+6cec 20406e8f call ask_serviceclassid 
+6ced 2841fe01 compare 1 ,temp ,0xff 
+6cee 2020eeff branch ss_empty_rsp ,true 
+6cef 2841feff compare 0xff ,temp ,0xff 
+6cf0 2020ee83 branch sdp_invalid_request_syntax ,true 
+6cf1 efe40006 ifetch 2 ,contr 
+6cf2 67e4051e store 2 ,mem_sdp_record_maxcnt 
+6cf3 196097fe increase -2 ,timeup 
+6cf4 196097ff increase -1 ,timeup 
+6cf5 2422ee7d nbranch sdp_invalid_pdu_size ,zero 
+6cf6 d960050d arg mem_sdp_uuid_search_ptr ,timeup 
+6cf7 efe4000b ifetch 2 ,timeup 
+6cf8 207a0000 rtn blank 
+6cf9 20406f41 call search_all_uuid 
+6cfa 204056aa call l2cap_get_sdp_tx_payload 
+6cfb 18007e03 force 3 ,pdata 
+6cfc e7e20005 istore 1 ,contw 
+6cfd 6fe40518 fetch 2 ,mem_sdp_transactionid 
+6cfe e7e40005 istore 2 ,contw 
+6cff 18ebfe00 lshift2 queue ,pdata 
+6d00 1fe0fe05 add pdata ,5 ,pdata 
+6d01 1fe0a605 add pdata ,5 ,regc 
+6d02 1ff0fe00 byteswap pdata ,pdata 
+6d03 e7e40005 istore 2 ,contw 
+6d04 18e27e00 deposit queue 
+6d05 1ff0fe00 byteswap pdata ,pdata 
+6d06 e7e40005 istore 2 ,contw 
+6d07 e7e40005 istore 2 ,contw 
+6d08 d8c00526 arg mem_sdp_handle_list ,contr 
+6d09 18e27200 copy queue ,loopcnt 
+6d0a 2022ed0e branch ss_req_blank ,zero 
+
+ss_req_loop:
+6d0b efe80006 ifetch 4 ,contr 
+6d0c e7e80005 istore 4 ,contw 
+6d0d c2006d0b loop ss_req_loop 
+
+ss_req_blank:
+6d0e 18007e00 force 0 ,pdata 
+6d0f e7e20005 istore 1 ,contw 
+6d10 1a627e00 deposit regc 
+6d11 67e40271 store 2 ,mem_sdp_tx_pkt_length 
+6d12 20600000 rtn 
+
+sdp_process_sa_req:
+6d13 473e402f bpatchx patch2f_4 ,mem_patch2f 
+6d14 efe80006 ifetch 4 ,contr 
+6d15 67e80520 store 4 ,mem_sdp_record_handle 
+6d16 196097fc increase -4 ,timeup 
+6d17 20406ded call sdp_store_maxbyte 
+6d18 67e4051c store 2 ,mem_sdp_attribute_maxbyte 
+6d19 196097fe increase -2 ,timeup 
+6d1a 20406ee7 call dataelementtype6 
+6d1b 2022ee83 branch sdp_invalid_request_syntax ,zero 
+6d1c 2a21fe05 compare 5 ,rega ,0xff 
+6d1d 2020ed21 branch sa_judge_wholerange ,true 
+
+sa_isnot_wholerange:
+6d1e d8a00526 arg mem_sdp_attrib_list ,contw 
+6d1f 18000e00 force 0 ,queue 
+6d20 20206d30 branch sa_req_loop 
+
+sa_judge_wholerange:
+6d21 efe20006 ifetch 1 ,contr 
+6d22 c0856e83 bne sdp_attribute_range ,sdp_invalid_request_syntax 
+6d23 efe40006 ifetch 2 ,contr 
+6d24 243a6d2e nbranch sa_judge_wholerange_false1 ,blank 
+6d25 efe20006 ifetch 1 ,contr 
+6d26 c0ffed2c bne 0xff ,sa_judge_wholerange_false2 
+6d27 efe20006 ifetch 1 ,contr 
+6d28 c0ffed2a bne 0xff ,sa_judge_wholerange_false3 
+6d29 20206d77 branch sa_req_all 
+
+sa_judge_wholerange_false3:
+6d2a 18c08dfb increase -5 ,contr 
+6d2b 20206d1e branch sa_isnot_wholerange 
+
+sa_judge_wholerange_false2:
+6d2c 18c08dfc increase -4 ,contr 
+6d2d 20206d1e branch sa_isnot_wholerange 
+
+sa_judge_wholerange_false1:
+6d2e 18c08dfd increase -3 ,contr 
+6d2f 20206d1e branch sa_isnot_wholerange 
+
+sa_req_loop:
+6d30 efe20006 ifetch 1 ,contr 
+6d31 c004ed45 beq sdp_attribute_id ,sa_req_one_id 
+6d32 c0056d33 beq sdp_attribute_range ,sa_req_range 
+
+sa_req_range:
+6d33 efe40006 ifetch 2 ,contr 
+6d34 e7e40005 istore 2 ,contw 
+6d35 18e08e01 increase 1 ,queue 
+6d36 1ff0a400 byteswap pdata ,regb 
+6d37 efe40006 ifetch 2 ,contr 
+6d38 1ff0fe00 byteswap pdata ,pdata 
+
+sa_req_range_id_increase:
+6d39 1a40a401 increase 1 ,regb 
+6d3a 9a467c00 isub regb ,null 
+6d3b 24216d42 nbranch sa_req_range_id_finish ,positive 
+6d3c 1fe22600 copy pdata ,regc 
+6d3d 1a50fe00 byteswap regb ,pdata 
+6d3e e7e40005 istore 2 ,contw 
+6d3f 18e08e01 increase 1 ,queue 
+6d40 1a627e00 copy regc ,pdata 
+6d41 20206d39 branch sa_req_range_id_increase 
+
+sa_req_range_id_finish:
+6d42 196097fb increase -5 ,timeup 
+6d43 1a20a3fb increase -5 ,rega 
+6d44 20206d4a branch sa_req_check_next_id 
+
+sa_req_one_id:
+6d45 efe40006 ifetch 2 ,contr 
+6d46 e7e40005 istore 2 ,contw 
+6d47 18e08e01 increase 1 ,queue 
+6d48 196097fd increase -3 ,timeup 
+6d49 1a20a3fd increase -3 ,rega 
+
+sa_req_check_next_id:
+6d4a 24216e83 nbranch sdp_invalid_request_syntax ,positive 
+6d4b 2422ed30 nbranch sa_req_loop ,zero 
+6d4c 196097ff increase -1 ,timeup 
+6d4d 2422ee83 nbranch sdp_invalid_request_syntax ,zero 
+6d4e 204056aa call l2cap_get_sdp_tx_payload 
+6d4f 18a08a0a increase 10 ,contw 
+6d50 da200526 arg mem_sdp_attrib_list ,rega 
+
+sa_req_handle_attributelist_next:
+6d51 18e27e00 copy queue ,pdata 
+6d52 203a6d64 branch sa_req_handle_attributelist_end ,blank 
+6d53 efe40011 ifetch 2 ,rega 
+6d54 203a6d64 branch sa_req_handle_attributelist_end ,blank 
+6d55 98002400 iforce regb 
+6d56 6fe80520 fetch 4 ,mem_sdp_record_handle 
+6d57 98000400 iforce temp 
+6d58 20406fa6 call search_handle_attrib 
+6d59 18c27e00 copy contr ,pdata 
+6d5a 203a6d61 branch sa_req_handle_attributelist_notfound ,blank 
+6d5b 18c08dfd increase -3 ,contr 
+6d5c efe60006 ifetch 3 ,contr 
+6d5d e7e60005 istore 3 ,contw 
+6d5e 20406f1a call sdp_data_len 
+6d5f 98007200 iforce loopcnt 
+6d60 20407cdc call memcpy 
+
+sa_req_handle_attributelist_notfound:
+6d61 1a20a202 increase 2 ,rega 
+6d62 18e08fff increase -1 ,queue 
+6d63 20206d51 branch sa_req_handle_attributelist_next 
+
+sa_req_handle_attributelist_end:
+6d64 da200005 arg sdp_attribute_res ,rega 
+6d65 20406e43 call ssa_req_range_lastfreg_common 
+6d66 6fe40271 fetch 2 ,mem_sdp_tx_pkt_length 
+6d67 c005ef02 beq 11 ,sa_empty_rsp 
+6d68 20206e59 branch ssa_req_range_attrbutes_length_no_continue 
+
+sdp_store_continue_common:
+6d69 efe20006 ifetch 1 ,contr 
+6d6a c0006d6d beq 0 ,sdp_store_continue_0byte 
+6d6b c000ed6f beq 1 ,sdp_store_continue_1byte 
+6d6c c0016d72 beq 2 ,sdp_store_continue_2byte 
+
+sdp_store_continue_0byte:
+6d6d 196097ff increase -1 ,timeup 
+6d6e 20206d75 branch sdp_store_continue_end 
+
+sdp_store_continue_1byte:
+6d6f efe20006 ifetch 1 ,contr 
+6d70 196097fe increase -2 ,timeup 
+6d71 20206d75 branch sdp_store_continue_end 
+
+sdp_store_continue_2byte:
+6d72 efe40006 ifetch 2 ,contr 
+6d73 1ff0fe00 byteswap pdata ,pdata 
+6d74 196097fd increase -3 ,timeup 
+
+sdp_store_continue_end:
+6d75 67e40515 store 2 ,mem_sdp_continue_byte 
+6d76 20600000 rtn 
+
+sa_req_all:
+6d77 196097fb increase -5 ,timeup 
+6d78 20406d69 call sdp_store_continue_common 
+6d79 2422ee7d nbranch sdp_invalid_pdu_size ,zero 
+6d7a 68480520 fetcht 4 ,mem_sdp_record_handle 
+6d7b 20406f70 call search_handle 
+6d7c 2422ee7a nbranch sdp_invalid_service_record_handle ,zero 
+6d7d 18c22200 copy contr ,rega 
+6d7e 204056aa call l2cap_get_sdp_tx_payload 
+6d7f 1a220c00 copy rega ,contr 
+6d80 18a08a03 increase 3 ,contw 
+6d81 18c21600 copy contr ,timeup 
+6d82 20406f21 call sdp_get_data 
+6d83 1fe22200 copy pdata ,rega 
+6d84 6fe40515 fetch 2 ,mem_sdp_continue_byte 
+6d85 1fe22400 copy pdata ,regb 
+6d86 1a227e00 copy rega ,pdata 
+6d87 9a462400 isub regb ,regb 
+6d88 6fe4051c fetch 2 ,mem_sdp_attribute_maxbyte 
+6d89 9a467c00 isub regb ,null 
+6d8a 24216da6 nbranch sa_req_all_fragment_sdp ,positive 
+6d8b 78547c00 disable user 
+6d8c 6fe40515 fetch 2 ,mem_sdp_continue_byte 
+6d8d 203a6d99 branch sa_req_all_fisrt_fragment ,blank 
+6d8e 99608c00 iadd timeup ,contr 
+6d8f 1a40a403 increase 3 ,regb 
+6d90 1a427200 copy regb ,loopcnt 
+6d91 1f227e00 copy loopcnt ,pdata 
+6d92 1fe0fe03 increase 3 ,pdata 
+6d93 1ff0fe00 byteswap pdata ,pdata 
+6d94 e7e40005 istore 2 ,contw 
+6d95 1f227e00 copy loopcnt ,pdata 
+6d96 1ff0fe00 byteswap pdata ,pdata 
+6d97 e7e40005 istore 2 ,contw 
+6d98 20206db4 branch sa_req_all_answer_attributelist_full_loop 
+
+sa_req_all_fisrt_fragment:
+6d99 1a20f206 add rega ,6 ,loopcnt 
+6d9a 20346d9d branch sa_req_all_parlength_continue_byte ,user 
+6d9b 1f30fe00 byteswap loopcnt ,pdata 
+6d9c 20206da0 branch sa_req_all_parlength_continue_byte_end 
+
+sa_req_all_parlength_continue_byte:
+6d9d 1f227e00 copy loopcnt ,pdata 
+6d9e 1fe0fe02 increase 2 ,pdata 
+6d9f 1ff0fe00 byteswap pdata ,pdata 
+
+sa_req_all_parlength_continue_byte_end:
+6da0 e7e40005 istore 2 ,contw 
+6da1 1f20f3fd increase -3 ,loopcnt 
+6da2 1f30fe00 byteswap loopcnt ,pdata 
+6da3 e7e40005 istore 2 ,contw 
+6da4 19620c00 copy timeup ,contr 
+6da5 20206db4 branch sa_req_all_answer_attributelist_full_loop 
+
+sa_req_all_fragment_sdp:
+6da6 78347c00 enable user 
+6da7 6fe4051c fetch 2 ,mem_sdp_attribute_maxbyte 
+6da8 1fe22200 copy pdata ,rega 
+6da9 1a227200 copy rega ,loopcnt 
+6daa 6fe40515 fetch 2 ,mem_sdp_continue_byte 
+6dab 203a6d99 branch sa_req_all_fisrt_fragment ,blank 
+6dac 99608c00 iadd timeup ,contr 
+6dad 1a227e00 copy rega ,pdata 
+6dae 1fe0fe05 increase 5 ,pdata 
+6daf 1ff0fe00 byteswap pdata ,pdata 
+6db0 e7e40005 istore 2 ,contw 
+6db1 1a227e00 copy rega ,pdata 
+6db2 1ff0fe00 byteswap pdata ,pdata 
+6db3 e7e40005 istore 2 ,contw 
+
+sa_req_all_answer_attributelist_full_loop:
+6db4 20407cdc call memcpy 
+6db5 24346dbd nbranch sa_req_all_last_frag_continue ,user 
+6db6 18007e02 force 2 ,pdata 
+6db7 e7e20005 istore 1 ,contw 
+6db8 18c27e00 copy contr ,pdata 
+6db9 99667e00 isub timeup ,pdata 
+6dba 1ff0fe00 byteswap pdata ,pdata 
+6dbb e7e40005 istore 2 ,contw 
+6dbc 20206dbf branch sa_req_all_frag_end 
+
+sa_req_all_last_frag_continue:
+6dbd 18007e00 force 0 ,pdata 
+6dbe e7e20005 istore 1 ,contw 
+
+sa_req_all_frag_end:
+6dbf da200005 arg sdp_attribute_res ,rega 
+6dc0 20206e6f branch ssa_req_range_common 
+
+sdp_process_ssa_req:
+6dc1 473ec02f bpatchx patch2f_5 ,mem_patch2f 
+6dc2 20406e8f call ask_serviceclassid 
+6dc3 2841feff compare 0xff ,temp ,0xff 
+6dc4 2020ee83 branch sdp_invalid_request_syntax ,true 
+6dc5 20406ded call sdp_store_maxbyte 
+6dc6 67e4051c store 2 ,mem_sdp_attribute_maxbyte 
+6dc7 196097fe increase -2 ,timeup 
+6dc8 20406ee7 call dataelementtype6 
+6dc9 d8a00526 arg mem_sdp_attrib_list ,contw 
+6dca 18000e00 force 0 ,queue 
+
+ssa_req_loop:
+6dcb efe20006 ifetch 1 ,contr 
+6dcc c0056df5 beq sdp_attribute_range ,ssa_req_range 
+6dcd efe40006 ifetch 2 ,contr 
+6dce e7e40005 istore 2 ,contw 
+6dcf 18e08e01 increase 1 ,queue 
+6dd0 196097fd increase -3 ,timeup 
+6dd1 1a20a3fd increase -3 ,rega 
+6dd2 24216e83 nbranch sdp_invalid_request_syntax ,positive 
+6dd3 2422edcb nbranch ssa_req_loop ,zero 
+6dd4 196097ff increase -1 ,timeup 
+6dd5 2422ee83 nbranch sdp_invalid_request_syntax ,zero 
+6dd6 204056aa call l2cap_get_sdp_tx_payload 
+6dd7 18a08a0d increase 13 ,contw 
+6dd8 6fe4050d fetch 2 ,mem_sdp_uuid_search_ptr 
+6dd9 98002600 iforce regc 
+6dda da200526 arg mem_sdp_attrib_list ,rega 
+
+ssa_req_attributelist_next:
+6ddb efe40011 ifetch 2 ,rega 
+6ddc 203a6de8 branch ssa_req_attributelist_end ,blank 
+6ddd 98002400 iforce regb 
+6dde 20406f85 call search_attrib 
+6ddf 203a6de6 branch ssa_req_attributelist_notfound ,blank 
+6de0 18c08dfd increase -3 ,contr 
+6de1 efe60006 ifetch 3 ,contr 
+6de2 e7e60005 istore 3 ,contw 
+6de3 20406f1a call sdp_data_len 
+6de4 98007200 iforce loopcnt 
+6de5 20407cdc call memcpy 
+
+ssa_req_attributelist_notfound:
+6de6 1a20a202 increase 2 ,rega 
+6de7 20206ddb branch ssa_req_attributelist_next 
+
+ssa_req_attributelist_end:
+6de8 20406e42 call ssa_req_range_lastfreg 
+6de9 6fe40271 fetch 2 ,mem_sdp_tx_pkt_length 
+6dea c0076f05 beq 14 ,ssa_empty_rsp 
+6deb 20406e59 call ssa_req_range_attrbutes_length_no_continue 
+6dec 20206e59 branch ssa_req_range_attrbutes_length_no_continue 
+
+sdp_store_maxbyte:
+6ded efe40006 ifetch 2 ,contr 
+6dee 1ff0fe00 byteswap pdata ,pdata 
+6def 1fe0fffd increase -3 ,pdata 
+6df0 d84000c8 arg 200 ,temp 
+6df1 98467c00 isub temp ,null 
+6df2 24610000 nrtn positive 
+6df3 580000c8 setarg 200 
+6df4 20600000 rtn 
+
+ssa_req_range:
+6df5 18c08c04 increase 4 ,contr 
+6df6 196097fb increase -5 ,timeup 
+6df7 1a20a3fb increase -5 ,rega 
+6df8 2422ee83 nbranch sdp_invalid_request_syntax ,zero 
+6df9 20406d69 call sdp_store_continue_common 
+6dfa 2422ee7d nbranch sdp_invalid_pdu_size ,zero 
+6dfb d960050d arg mem_sdp_uuid_search_ptr ,timeup 
+6dfc 20406f41 call search_all_uuid 
+6dfd 18e27e00 deposit queue 
+6dfe 203a6f05 branch ssa_empty_rsp ,blank 
+6dff 67e2054a store 1 ,mem_handle_humber 
+6e00 1a427e00 copy regb ,pdata 
+6e01 67e40548 store 2 ,mem_sdp_all_length 
+6e02 d8e00000 arg 0 ,queue 
+6e03 da200000 arg 0 ,rega 
+6e04 204056aa call l2cap_get_sdp_tx_payload 
+6e05 18a08a0a increase 10 ,contw 
+
+ssa_req_range_find_handle:
+6e06 20406e2b call ssa_req_range_get_length 
+6e07 24344a8b nbranch assert ,user 
+6e08 18c21600 copy contr ,timeup 
+6e09 1fe22600 copy pdata ,regc 
+6e0a 9a20a200 iadd rega ,rega 
+6e0b 6fe40515 fetch 2 ,mem_sdp_continue_byte 
+6e0c 1fe22400 copy pdata ,regb 
+6e0d 203a6e34 branch ssa_req_range_first_freg ,blank 
+
+ssa_req_range_later_freg_with_continue:
+6e0e 1a227e00 copy rega ,pdata 
+6e0f 9a462400 isub regb ,regb 
+6e10 2022ee26 branch ssa_req_range_next_handle ,zero 
+6e11 24216e26 nbranch ssa_req_range_next_handle ,positive 
+6e12 6fe4051c fetch 2 ,mem_sdp_attribute_maxbyte 
+6e13 9a467c00 isub regb ,null 
+6e14 2022ee1d branch ssa_req_range_maxbyte_with_continue ,zero 
+6e15 24216e1d nbranch ssa_req_range_maxbyte_with_continue ,positive 
+
+ssa_req_range_send_not_maxbyte:
+6e16 1a427200 copy regb ,loopcnt 
+6e17 20406e20 call ssa_req_range_maxbyte_with_continue_cpy 
+6e18 6fe2054a fetch 1 ,mem_handle_humber 
+6e19 18e08e01 increase 1 ,queue 
+6e1a 98e67c00 isub queue ,null 
+6e1b 2022ee42 branch ssa_req_range_lastfreg ,zero 
+6e1c 20206e5f branch ssa_req_range_freg_with_continue 
+
+ssa_req_range_maxbyte_with_continue:
+6e1d 1fe27200 copy pdata ,loopcnt 
+6e1e 20406e20 call ssa_req_range_maxbyte_with_continue_cpy 
+6e1f 20206e5f branch ssa_req_range_freg_with_continue 
+
+ssa_req_range_maxbyte_with_continue_cpy:
+6e20 18a08bfd increase -3 ,contw 
+6e21 1f220400 copy loopcnt ,temp 
+6e22 1a627e00 copy regc ,pdata 
+6e23 9a467e00 isub regb ,pdata 
+6e24 99608c00 iadd timeup ,contr 
+6e25 20207cdc branch memcpy 
+
+ssa_req_range_next_handle:
+6e26 6fe2054a fetch 1 ,mem_handle_humber 
+6e27 18e08e01 increase 1 ,queue 
+6e28 98e67c00 isub queue ,null 
+6e29 20628000 rtn zero 
+6e2a 20206e06 branch ssa_req_range_find_handle 
+
+ssa_req_range_get_length:
+6e2b 20407dc1 call disable_user 
+6e2c d8c00526 arg mem_sdp_handle_list ,contr 
+6e2d 18ebfe00 lshift2 queue ,pdata 
+6e2e 98c08c00 iadd contr ,contr 
+6e2f e8480006 ifetcht 4 ,contr 
+6e30 20406f70 call search_handle 
+6e31 24628000 nrtn zero 
+6e32 20406f1a call sdp_data_len 
+6e33 20207dbf branch enable_user 
+
+ssa_req_range_first_freg:
+6e34 6fe4051c fetch 2 ,mem_sdp_attribute_maxbyte 
+6e35 9a267c00 isub rega ,null 
+6e36 24216e4e nbranch ssa_req_range_firstfreg_maxbyte_with_continue ,positive 
+6e37 1a227200 copy rega ,loopcnt 
+6e38 1f220400 copy loopcnt ,temp 
+6e39 19620c00 copy timeup ,contr 
+6e3a 20407cdc call memcpy 
+6e3b 6fe40548 fetch 2 ,mem_sdp_all_length 
+6e3c 9a267c00 isub rega ,null 
+6e3d 2022ee40 branch ssa_req_range_freg_no_continue ,zero 
+
+ssa_req_range_firstfreg_not_maxbyte_with_continue:
+6e3e 20406e5f call ssa_req_range_freg_with_continue 
+6e3f 20206e53 branch ssa_req_range_attrbutes_length 
+
+ssa_req_range_freg_no_continue:
+6e40 20406e42 call ssa_req_range_lastfreg 
+6e41 20206e53 branch ssa_req_range_attrbutes_length 
+
+ssa_req_range_lastfreg:
+6e42 da200007 arg sdp_searchattrib_res ,rega 
+
+ssa_req_range_lastfreg_common:
+6e43 18007e00 force 0 ,pdata 
+6e44 e7e20005 istore 1 ,contw 
+6e45 20406e6f call ssa_req_range_common 
+6e46 68440271 fetcht 2 ,mem_sdp_tx_pkt_length 
+6e47 184085fb increase -5 ,temp 
+6e48 1850fe00 byteswap temp ,pdata 
+6e49 e7e40005 istore 2 ,contw 
+6e4a 184085fd increase -3 ,temp 
+6e4b 1850fe00 byteswap temp ,pdata 
+6e4c e7e40005 istore 2 ,contw 
+6e4d 20600000 rtn 
+
+ssa_req_range_firstfreg_maxbyte_with_continue:
+6e4e 1fe27200 copy pdata ,loopcnt 
+6e4f 1f220400 copy loopcnt ,temp 
+6e50 19620c00 copy timeup ,contr 
+6e51 20407cdc call memcpy 
+6e52 20406e5f call ssa_req_range_freg_with_continue 
+
+ssa_req_range_attrbutes_length:
+6e53 58000036 setarg 0x36 
+6e54 e7e20005 istore 1 ,contw 
+6e55 6fe40548 fetch 2 ,mem_sdp_all_length 
+6e56 1ff0fe00 byteswap pdata ,pdata 
+6e57 e7e40005 istore 2 ,contw 
+6e58 20600000 rtn 
+
+ssa_req_range_attrbutes_length_no_continue:
+6e59 58000036 setarg 0x36 
+6e5a e7e20005 istore 1 ,contw 
+6e5b 184085fd increase -3 ,temp 
+6e5c 1850fe00 byteswap temp ,pdata 
+6e5d e7e40005 istore 2 ,contw 
+6e5e 20600000 rtn 
+
+ssa_req_range_freg_with_continue:
+6e5f da200007 arg sdp_searchattrib_res ,rega 
+6e60 58000002 setarg 2 
+6e61 e7e20005 istore 1 ,contw 
+6e62 6fe40515 fetch 2 ,mem_sdp_continue_byte 
+6e63 98408400 iadd temp ,temp 
+6e64 1850fe00 byteswap temp ,pdata 
+6e65 e7e40005 istore 2 ,contw 
+6e66 20406e6f call ssa_req_range_common 
+6e67 68440271 fetcht 2 ,mem_sdp_tx_pkt_length 
+6e68 184085fb increase -5 ,temp 
+6e69 1850fe00 byteswap temp ,pdata 
+6e6a e7e40005 istore 2 ,contw 
+6e6b 184085fb increase -5 ,temp 
+6e6c 1850fe00 byteswap temp ,pdata 
+6e6d e7e40005 istore 2 ,contw 
+6e6e 20600000 rtn 
+
+ssa_req_range_common:
+6e6f 6fe4026f fetch 2 ,mem_sdp_tx_payload_ptr 
+6e70 98a67e00 isub contw ,pdata 
+6e71 1fe67e00 sub pdata ,0 ,pdata 
+6e72 67e40271 store 2 ,mem_sdp_tx_pkt_length 
+6e73 204056aa call l2cap_get_sdp_tx_payload 
+6e74 1a227e00 copy rega ,pdata 
+6e75 e7e20005 istore 1 ,contw 
+6e76 6fe40518 fetch 2 ,mem_sdp_transactionid 
+6e77 e7e40005 istore 2 ,contw 
+6e78 20600000 rtn 
+
+sdp_process_ssa_res:
+
+sdp_process_ss_res:
+
+sdp_process_sa_res:
+
+sdp_process_error_res:
+6e79 20600000 rtn 
+
+sdp_invalid_service_record_handle:
+6e7a 58000200 setarg 0x0200 
+6e7b 67e40546 store 2 ,mem_sdp_error_code 
+6e7c 20206e85 branch sdp_error_response 
+
+sdp_invalid_pdu_size:
+6e7d 58000400 setarg 0x0400 
+6e7e 67e40546 store 2 ,mem_sdp_error_code 
+6e7f 20206e85 branch sdp_error_response 
+
+sdp_insufficient_resource:
+6e80 58000600 setarg 0x0600 
+6e81 67e40546 store 2 ,mem_sdp_error_code 
+6e82 20206e85 branch sdp_error_response 
+
+sdp_invalid_request_syntax:
+6e83 58000300 setarg 0x0300 
+6e84 67e40546 store 2 ,mem_sdp_error_code 
+
+sdp_error_response:
+6e85 204056aa call l2cap_get_sdp_tx_payload 
+6e86 e7e20005 istore 1 ,contw 
+6e87 6fe40518 fetch 2 ,mem_sdp_transactionid 
+6e88 e7e40005 istore 2 ,contw 
+6e89 58000200 setarg 0x0200 
+6e8a e7e40005 istore 2 ,contw 
+6e8b 6fe40546 fetch 2 ,mem_sdp_error_code 
+6e8c e7e40005 istore 2 ,contw 
+6e8d 70027107 jam 7 ,mem_sdp_tx_pkt_length 
+6e8e 20600000 rtn 
+
+ask_serviceclassid:
+6e8f da400000 arg 0 ,regb 
+6e90 18000400 force 0 ,temp 
+6e91 d8a0050d arg mem_sdp_uuid_search_ptr ,contw 
+6e92 20406ee7 call dataelementtype6 
+6e93 2022eee5 branch asksrv_error ,zero 
+
+classidloop:
+6e94 1a40a401 increase 1 ,regb 
+6e95 efe20006 ifetch 1 ,contr 
+6e96 1a20a3ff increase -1 ,rega 
+6e97 196097ff increase -1 ,timeup 
+6e98 2fe1f018 compare 0x18 ,pdata ,0xf8 
+6e99 2420eee5 nbranch asksrv_error ,true 
+6e9a 2fe00e04 compare 0x04 ,pdata ,0x07 
+6e9b 2420eeb2 nbranch cmp032 ,true 
+6e9c 18000401 force 1 ,temp 
+
+skip2bytes:
+6e9d efe20006 ifetch 1 ,contr 
+6e9e 1a20a3ff increase -1 ,rega 
+6e9f 196097ff increase -1 ,timeup 
+6ea0 c0806ea6 bne 0x00 ,frstbwrong 
+6ea1 efe20006 ifetch 1 ,contr 
+6ea2 1a20a3ff increase -1 ,rega 
+6ea3 196097ff increase -1 ,timeup 
+6ea4 c0006eb7 beq 0x00 ,cmpuuid 
+6ea5 20206ea9 branch scndbwrong 
+
+frstbwrong:
+6ea6 18c08c01 increase 1 ,contr 
+6ea7 1a20a3ff increase -1 ,rega 
+6ea8 196097ff increase -1 ,timeup 
+
+scndbwrong:
+6ea9 18c08c02 increase 2 ,contr 
+6eaa 1a20a3fe increase -2 ,rega 
+6eab 196097fe increase -2 ,timeup 
+6eac 2841fe00 compare 0x00 ,temp ,0xff 
+6ead 2020eedf branch loopornot ,true 
+6eae 18c08c0c increase 12 ,contr 
+6eaf 1a20a3f4 increase -12 ,rega 
+6eb0 196097f4 increase -12 ,timeup 
+6eb1 20206edf branch loopornot 
+
+cmp032:
+6eb2 2fe00e02 compare 0x02 ,pdata ,0x07 
+6eb3 2420eeb5 nbranch cmp016 ,true 
+6eb4 20206e9d branch skip2bytes 
+
+cmp016:
+6eb5 2fe00e01 compare 0x01 ,pdata ,0x07 
+6eb6 2420eee5 nbranch asksrv_error ,true 
+
+cmpuuid:
+6eb7 1a20a3fe increase -2 ,rega 
+6eb8 196097fe increase -2 ,timeup 
+6eb9 efe40006 ifetch 2 ,contr 
+6eba 1a467c04 sub regb ,4 ,null 
+6ebb 2022eebd branch uuidsize ,zero 
+6ebc e7e40005 istore 2 ,contw 
+
+uuidsize:
+6ebd 2841fe00 compare 0x00 ,temp ,0xff 
+6ebe 2020eedf branch loopornot ,true 
+6ebf 18c20400 copy contr ,temp 
+6ec0 efe20006 ifetch 1 ,contr 
+6ec1 c0806ed8 bne 0x00 ,wrong12b 
+6ec2 efe20006 ifetch 1 ,contr 
+6ec3 c0806ed8 bne 0x00 ,wrong12b 
+6ec4 efe20006 ifetch 1 ,contr 
+6ec5 c0886ed8 bne 0x10 ,wrong12b 
+6ec6 efe20006 ifetch 1 ,contr 
+6ec7 c0806ed8 bne 0x00 ,wrong12b 
+6ec8 efe20006 ifetch 1 ,contr 
+6ec9 c0c06ed8 bne 0x80 ,wrong12b 
+6eca efe20006 ifetch 1 ,contr 
+6ecb c0806ed8 bne 0x00 ,wrong12b 
+6ecc efe20006 ifetch 1 ,contr 
+6ecd c0806ed8 bne 0x00 ,wrong12b 
+6ece efe20006 ifetch 1 ,contr 
+6ecf c0c06ed8 bne 0x80 ,wrong12b 
+6ed0 efe20006 ifetch 1 ,contr 
+6ed1 c0afeed8 bne 0x5f ,wrong12b 
+6ed2 efe20006 ifetch 1 ,contr 
+6ed3 c0cdeed8 bne 0x9b ,wrong12b 
+6ed4 efe20006 ifetch 1 ,contr 
+6ed5 c09a6ed8 bne 0x34 ,wrong12b 
+6ed6 efe20006 ifetch 1 ,contr 
+6ed7 c07deedd beq 0xfb ,chck12dn 
+
+wrong12b:
+6ed8 18420c00 copy temp ,contr 
+
+wrong12b1:
+6ed9 18c08c0c increase 12 ,contr 
+6eda 18000e00 force 0x00 ,queue 
+6edb 18000400 force 0x00 ,temp 
+6edc 20206edd branch chck12dn 
+
+chck12dn:
+6edd 196097f4 increase -12 ,timeup 
+6ede 1a20a3f4 increase -12 ,rega 
+
+loopornot:
+6edf 18000400 force 0x00 ,temp 
+6ee0 2a21fe00 compare 0x00 ,rega ,0xff 
+6ee1 2420ee94 nbranch classidloop ,true 
+6ee2 18007e00 force 0 ,pdata 
+6ee3 e7e40005 istore 2 ,contw 
+6ee4 20600000 rtn 
+
+asksrv_error:
+6ee5 d84000ff arg 0xff ,temp 
+6ee6 20600000 rtn 
+
+dataelementtype6:
+6ee7 47404030 bpatchx patch30_0 ,mem_patch30 
+6ee8 efe20006 ifetch 1 ,contr 
+6ee9 196097ff increase -1 ,timeup 
+6eea 2fe1f030 compare 0x30 ,pdata ,0xf8 
+6eeb 2420eefd nbranch dsize_error ,true 
+6eec 2fe00e07 compare 0x07 ,pdata ,0x07 
+6eed 2020eef6 branch dsize32 ,true 
+6eee 2fe00e06 compare 0x06 ,pdata ,0x07 
+6eef 2020eef8 branch dsize16 ,true 
+6ef0 2fe00e05 compare 0x05 ,pdata ,0x07 
+6ef1 2420eefd nbranch dsize_error ,true 
+6ef2 efe20006 ifetch 1 ,contr 
+6ef3 1fe22200 copy pdata ,rega 
+6ef4 196097ff increase -1 ,timeup 
+6ef5 20206efb branch dsize 
+
+dsize32:
+6ef6 18c08c02 increase 2 ,contr 
+6ef7 196097fe increase -2 ,timeup 
+
+dsize16:
+6ef8 efe40006 ifetch 2 ,contr 
+6ef9 1ff0a200 byteswap pdata ,rega 
+6efa 196097fe increase -2 ,timeup 
+
+dsize:
+6efb 18007e01 force 0x01 ,pdata 
+6efc 20600000 rtn 
+
+dsize_error:
+6efd 18007e00 force 0x00 ,pdata 
+6efe 20600000 rtn 
+
+ss_empty_rsp:
+6eff 58000003 setarg sdp_search_res 
+6f00 67e20517 store 1 ,mem_sdp_pduid 
+6f01 20206f07 branch empty_response 
+
+sa_empty_rsp:
+6f02 58000005 setarg sdp_attribute_res 
+6f03 67e20517 store 1 ,mem_sdp_pduid 
+6f04 20206f07 branch empty_response 
+
+ssa_empty_rsp:
+6f05 58000007 setarg sdp_searchattrib_res 
+6f06 67e20517 store 1 ,mem_sdp_pduid 
+
+empty_response:
+6f07 204056aa call l2cap_get_sdp_tx_payload 
+6f08 6fe20517 fetch 1 ,mem_sdp_pduid 
+6f09 1fe22400 copy pdata ,regb 
+6f0a e7e20005 istore 1 ,contw 
+6f0b 6fe40518 fetch 2 ,mem_sdp_transactionid 
+6f0c e7e40005 istore 2 ,contw 
+6f0d 58000500 setarg 0x0500 
+6f0e e7e40005 istore 2 ,contw 
+6f0f 2a41fe05 compare sdp_attribute_res ,regb ,0xff 
+6f10 2020ef16 branch fullsearch ,true 
+6f11 2a41fe07 compare sdp_searchattrib_res ,regb ,0xff 
+6f12 2020ef16 branch fullsearch ,true 
+6f13 58000000 setarg 0x000000 
+6f14 e7ea0005 istore 5 ,contw 
+6f15 20206f18 branch outempty 
+
+fullsearch:
+6f16 58350200 setarg 0x350200 
+6f17 e7ea0005 istore 5 ,contw 
+
+outempty:
+6f18 7002710a jam 10 ,mem_sdp_tx_pkt_length 
+6f19 20600000 rtn 
+
+sdp_data_len:
+6f1a 20407c7d call store_contw 
+6f1b 20407c80 call store_contr 
+6f1c 20406f21 call sdp_get_data 
+6f1d 20407c77 call get_contw 
+6f1e 20407c7a call get_contr 
+6f1f 18427e00 copy temp ,pdata 
+6f20 20600000 rtn 
+
+sdp_get_data:
+6f21 efe20006 ifetch 1 ,contr 
+6f22 1fe17207 and pdata ,0x7 ,loopcnt 
+6f23 1fe97e00 rshift3 pdata ,pdata 
+6f24 c0806f2b bne 0 ,sdp_get_data_type_not0 
+
+sdp_get_data_type0:
+6f25 18007e01 force 1 ,pdata 
+6f26 18000401 force 1 ,temp 
+6f27 20600000 rtn 
+
+sdp_get_data_type_not0_sizeindex01234:
+6f28 20407c51 call left_shift_n 
+6f29 1fe08401 add pdata ,1 ,temp 
+6f2a 20600000 rtn 
+
+sdp_get_data_type_not0:
+6f2b 1f227e00 deposit loopcnt 
+6f2c 1fe67c04 sub pdata ,4 ,null 
+6f2d 20216f28 branch sdp_get_data_type_not0_sizeindex01234 ,positive 
+6f2e c002ef32 beq 5 ,sdp_get_data_type_not0_sizeindex5 
+6f2f c0036f35 beq 6 ,sdp_get_data_type_not0_sizeindex6 
+6f30 c003ef39 beq 7 ,sdp_get_data_type_not0_sizeindex7 
+6f31 20600000 rtn 
+
+sdp_get_data_type_not0_sizeindex5:
+6f32 efe20006 ifetch 1 ,contr 
+6f33 1fe08402 add pdata ,2 ,temp 
+6f34 20600000 rtn 
+
+sdp_get_data_type_not0_sizeindex6:
+6f35 efe40006 ifetch 2 ,contr 
+6f36 1ff0fe00 byteswap pdata ,pdata 
+6f37 1fe08403 add pdata ,3 ,temp 
+6f38 20600000 rtn 
+
+sdp_get_data_type_not0_sizeindex7:
+6f39 efe40006 ifetch 2 ,contr 
+6f3a 1ff0fe00 byteswap pdata ,pdata 
+6f3b e8440006 ifetcht 2 ,contr 
+6f3c 18508400 byteswap temp ,temp 
+6f3d 18500400 lshift16 temp ,temp 
+6f3e 9840fe00 iadd temp ,pdata 
+6f3f 1fe08405 add pdata ,5 ,temp 
+6f40 20600000 rtn 
+
+search_all_uuid:
+6f41 4740c030 bpatchx patch30_1 ,mem_patch30 
+6f42 18000e00 force 0 ,queue 
+6f43 da400000 arg 0 ,regb 
+6f44 d8a00526 arg mem_sdp_handle_list ,contw 
+
+search_all_uuid_llop:
+6f45 efe4000b ifetch 2 ,timeup 
+6f46 207a0000 rtn blank 
+6f47 20406f4c call search_uuid 
+6f48 18e27e00 copy queue ,pdata 
+6f49 c1038000 rtneq sdp_max_handle_number 
+6f4a 19609602 increase 2 ,timeup 
+6f4b 20206f45 branch search_all_uuid_llop 
+
+search_uuid:
+6f4c 98002600 iforce regc 
+6f4d 6fe44547 fetch 2 ,mem_ui_uuid_table 
+6f4e 98000c00 iforce contr 
+
+search_uuid_next:
+6f4f 18e27e00 copy queue ,pdata 
+6f50 c1038000 rtneq sdp_max_handle_number 
+6f51 78547c00 disable user 
+6f52 efe20006 ifetch 1 ,contr 
+6f53 207a0000 rtn blank 
+6f54 98007200 iforce loopcnt 
+
+search_uuid_loop:
+6f55 efe40006 ifetch 2 ,contr 
+6f56 9a667c00 isub regc ,null 
+6f57 2422ef59 nbranch search_uuid_not_found ,zero 
+6f58 78347c00 enable user 
+
+search_uuid_not_found:
+6f59 c2006f55 loop search_uuid_loop 
+6f5a e8480006 ifetcht 4 ,contr 
+6f5b 18c22200 copy contr ,rega 
+6f5c 24346f6c nbranch search_uuid_nomatch ,user 
+6f5d d8c00526 arg mem_sdp_handle_list ,contr 
+6f5e df200007 arg sdp_max_handle_number ,loopcnt 
+
+search_uuid_check_same_handle:
+6f5f efe80006 ifetch 4 ,contr 
+6f60 203a6f65 branch search_uuid_store_handle ,blank 
+6f61 98467c00 isub temp ,null 
+6f62 2022ef6c branch search_uuid_nomatch ,zero 
+6f63 c2006f5f loop search_uuid_check_same_handle 
+6f64 20600000 rtn 
+
+search_uuid_store_handle:
+6f65 e0480005 istoret 4 ,contw 
+6f66 18e08e01 increase 1 ,queue 
+6f67 1a220c00 copy rega ,contr 
+6f68 20406f1a call sdp_data_len 
+6f69 9a40a400 iadd regb ,regb 
+6f6a 98c08c00 iadd contr ,contr 
+6f6b 20206f4f branch search_uuid_next 
+
+search_uuid_nomatch:
+6f6c 1a220c00 copy rega ,contr 
+6f6d 20406f21 call sdp_get_data 
+6f6e 98c08c00 iadd contr ,contr 
+6f6f 20206f4f branch search_uuid_next 
+
+search_handle:
+6f70 47414030 bpatchx patch30_2 ,mem_patch30 
+6f71 6fe44547 fetch 2 ,mem_ui_uuid_table 
+6f72 98000c00 iforce contr 
+
+search_handle_loop:
+6f73 efe20006 ifetch 1 ,contr 
+6f74 203a7dbb branch disable_zero ,blank 
+6f75 1fe3fe00 lshift pdata ,pdata 
+6f76 98c08c00 iadd contr ,contr 
+6f77 efe80006 ifetch 4 ,contr 
+6f78 98467c00 isub temp ,null 
+6f79 20628000 rtn zero 
+6f7a 18a27e00 deposit contw 
+6f7b 67e40ab7 store 2 ,mem_contw 
+6f7c 60500a9e storet 8 ,mem_temp 
+6f7d 20406f21 call sdp_get_data 
+6f7e 98c08c00 iadd contr ,contr 
+6f7f 18c27e00 copy contr ,pdata 
+6f80 68440ab7 fetcht 2 ,mem_contw 
+6f81 18420a00 copy temp ,contw 
+6f82 68500a9e fetcht 8 ,mem_temp 
+6f83 1fe20c00 copy pdata ,contr 
+6f84 20206f73 branch search_handle_loop 
+
+search_attrib:
+6f85 4741c030 bpatchx patch30_3 ,mem_patch30 
+6f86 6fe44547 fetch 2 ,mem_ui_uuid_table 
+6f87 98000c00 iforce contr 
+
+search_attrib_next:
+6f88 efe20006 ifetch 1 ,contr 
+6f89 203a6fa3 branch search_attrib_end ,blank 
+6f8a 98007200 iforce loopcnt 
+
+search_attrib_loop:
+6f8b efe40006 ifetch 2 ,contr 
+6f8c 9a667c00 isub regc ,null 
+6f8d 2022ef93 branch search_attrib_found_uuid ,zero 
+6f8e c2006f8b loop search_attrib_loop 
+6f8f 18c08c04 increase 4 ,contr 
+6f90 20406f21 call sdp_get_data 
+6f91 98c08c00 iadd contr ,contr 
+6f92 20206f88 branch search_attrib_next 
+
+search_attrib_found_uuid:
+6f93 1f20f3ff increase -1 ,loopcnt 
+6f94 1f23fe00 lshift loopcnt ,pdata 
+6f95 98c08c00 iadd contr ,contr 
+6f96 18c08c04 increase 4 ,contr 
+6f97 20406f21 call sdp_get_data 
+6f98 98c09600 iadd contr ,timeup 
+
+search_attrib_loop_attribs:
+6f99 18c08c01 increase 1 ,contr 
+6f9a efe40006 ifetch 2 ,contr 
+6f9b 9a467c00 isub regb ,null 
+6f9c 2022fdc7 branch disable_blank ,zero 
+6f9d 20406f1a call sdp_data_len 
+6f9e 98c08c00 iadd contr ,contr 
+6f9f 19627e00 deposit timeup 
+6fa0 98c67c00 isub contr ,null 
+6fa1 2022efa3 branch search_attrib_end ,zero 
+6fa2 20206f99 branch search_attrib_loop_attribs 
+
+search_attrib_end:
+6fa3 18000c00 force 0 ,contr 
+6fa4 18007e00 force 0 ,pdata 
+6fa5 20600000 rtn 
+
+search_handle_attrib:
+6fa6 47424030 bpatchx patch30_4 ,mem_patch30 
+6fa7 6fe44547 fetch 2 ,mem_ui_uuid_table 
+6fa8 98000c00 iforce contr 
+
+search_handle_attrib_next:
+6fa9 efe20006 ifetch 1 ,contr 
+6faa 203a6fbf branch search_handle_attrib_end ,blank 
+6fab 1fe3fe00 lshift pdata ,pdata 
+6fac 98c08c00 iadd contr ,contr 
+6fad efe80006 ifetch 4 ,contr 
+6fae 98467c00 isub temp ,null 
+6faf 2022efb3 branch search_handl_attrib_found_handle ,zero 
+6fb0 20406f21 call sdp_get_data 
+6fb1 98c08c00 iadd contr ,contr 
+6fb2 20206fa9 branch search_handle_attrib_next 
+
+search_handl_attrib_found_handle:
+6fb3 20406f21 call sdp_get_data 
+6fb4 98c09600 iadd contr ,timeup 
+
+search_handle_attrib_loop_attribs:
+6fb5 18c08c01 increase 1 ,contr 
+6fb6 efe40006 ifetch 2 ,contr 
+6fb7 9a467c00 isub regb ,null 
+6fb8 20628000 rtn zero 
+6fb9 20406f1a call sdp_data_len 
+6fba 98c08c00 iadd contr ,contr 
+6fbb 19627e00 deposit timeup 
+6fbc 98c67c00 isub contr ,null 
+6fbd 2022efbf branch search_handle_attrib_end ,zero 
+6fbe 20206fb5 branch search_handle_attrib_loop_attribs 
+
+search_handle_attrib_end:
+6fbf 18000c00 force 0 ,contr 
+6fc0 20600000 rtn 
+
+search_rfcomm_cn:
+6fc1 da400400 arg 0x0400 ,regb 
+6fc2 20406fb3 call search_handl_attrib_found_handle 
+6fc3 da400300 arg 0x0300 ,regb 
+6fc4 20406fcc call search_uuid_in_data 
+6fc5 24740000 nrtn user 
+6fc6 1a267c03 sub rega ,3 ,null 
+6fc7 20217dc1 branch disable_user ,positive 
+6fc8 efe20006 ifetch 1 ,contr 
+6fc9 c0847dc1 bne 0x08 ,disable_user 
+6fca efe20006 ifetch 1 ,contr 
+6fcb 20600000 rtn 
+
+search_uuid_in_data:
+6fcc 4742c030 bpatchx patch30_5 ,mem_patch30 
+6fcd 20406f21 call sdp_get_data 
+6fce 1fe22200 copy pdata ,rega 
+
+search_uuid_in_data_loop:
+6fcf efe20006 ifetch 1 ,contr 
+6fd0 1fe17207 and pdata ,0x7 ,loopcnt 
+6fd1 1fe97e00 rshift3 pdata ,pdata 
+6fd2 1fe67c03 sub pdata ,3 ,null 
+6fd3 2022efe8 branch search_uuid_in_data_found_uuid ,zero 
+6fd4 1f227e00 copy loopcnt ,pdata 
+6fd5 c002efdf beq 5 ,search_uuid_in_data_found_element_index5 
+6fd6 c0036fe2 beq 6 ,search_uuid_in_data_found_element_index6 
+6fd7 c003efe5 beq 7 ,search_uuid_in_data_found_element_index7 
+6fd8 18c08dff increase -1 ,contr 
+6fd9 20406f21 call sdp_get_data 
+6fda 98c08c00 iadd contr ,contr 
+6fdb 1a227e00 copy rega ,pdata 
+6fdc 98462200 isub temp ,rega 
+6fdd 2022fdc1 branch disable_user ,zero 
+6fde 20206fcf branch search_uuid_in_data_loop 
+
+search_uuid_in_data_found_element_index5:
+6fdf 1a20a3fe increase -2 ,rega 
+6fe0 18c08c01 increase 1 ,contr 
+6fe1 20206fcf branch search_uuid_in_data_loop 
+
+search_uuid_in_data_found_element_index6:
+6fe2 1a20a3fd increase -3 ,rega 
+6fe3 18c08c02 increase 2 ,contr 
+6fe4 20206fcf branch search_uuid_in_data_loop 
+
+search_uuid_in_data_found_element_index7:
+6fe5 1a20a3fb increase -5 ,rega 
+6fe6 18c08c04 increase 4 ,contr 
+6fe7 20206fcf branch search_uuid_in_data_loop 
+
+search_uuid_in_data_found_uuid:
+6fe8 1a20a3ff increase -1 ,rega 
+6fe9 1f227e00 copy loopcnt ,pdata 
+6fea c000eff1 beq 1 ,search_uuid_in_data_type_uuid_16 
+6feb c0016fef beq 2 ,search_uuid_in_data_type_uuid_32 
+6fec c0026fee beq 4 ,search_uuid_in_data_type_uuid_128 
+6fed 20207dc1 branch disable_user 
+
+search_uuid_in_data_type_uuid_128:
+6fee 1a20a3f4 increase -12 ,rega 
+
+search_uuid_in_data_type_uuid_32:
+6fef efe40006 ifetch 2 ,contr 
+6ff0 1a20a3fe increase -2 ,rega 
+
+search_uuid_in_data_type_uuid_16:
+6ff1 efe40006 ifetch 2 ,contr 
+6ff2 9a467c00 isub regb ,null 
+6ff3 2022fdbf branch enable_user ,zero 
+6ff4 1a20a3fe increase -2 ,rega 
+6ff5 2022fdc1 branch disable_user ,zero 
+6ff6 20206fcf branch search_uuid_in_data_loop 
+
+sdp_send_spp_request:
+6ff7 204056aa call l2cap_get_sdp_tx_payload 
+6ff8 1fe20a00 copy pdata ,contw 
+6ff9 58000006 setarg 6 
+6ffa e7e20005 istore 1 ,contw 
+6ffb 5800006e setarg sdp_tid_spp 
+6ffc e7e40005 istore 2 ,contw 
+6ffd 58000f00 setarg 0x0f00 
+6ffe e7e40005 istore 2 ,contw 
+6fff 581a0535 setarg 0x1a0535 
+7000 e7e60005 istore 3 ,contw 
+7001 58000111 setarg 0x0111 
+7002 1ff07e00 lshift16 pdata ,pdata 
+7003 e7e80005 istore 4 ,contw 
+7004 58002600 setarg 0x2600 
+7005 e7e40005 istore 2 ,contw 
+7006 58000335 setarg 0x0335 
+7007 e7e40005 istore 2 ,contw 
+7008 58000009 setarg 0x0009 
+7009 e7e40005 istore 2 ,contw 
+700a 58000004 setarg 0x0004 
+700b e7e40005 istore 2 ,contw 
+700c 70027114 jam 0x14 ,mem_sdp_tx_pkt_length 
+700d 20600000 rtn 
+
+function_g2:
+700e 47434030 bpatchx patch30_6 ,mem_patch30 
+700f 7005e150 jam 80 ,mem_aes_cmac_data_length 
+7010 d8a005e2 arg memdat ,contw 
+7011 d8c0440c arg mem_le_srand ,contr 
+7012 20407c9a call memcpy16 
+7013 d8c045a4 arg mem_le_pubkey_local_x_256 ,contr 
+7014 20407c98 call memcpy32 
+7015 d8c009ba arg mem_le_pubkey_remote_x_256 ,contr 
+7016 20407c98 call memcpy32 
+7017 204070c9 call inverse_memdat 
+7018 d8c0042b arg mem_le_mrand ,contr 
+7019 204070c4 call store_inverse_k 
+701a 2040708f call function_aes_cmac 
+701b d8a00aee arg mem_aes_cmac_temp ,contw 
+701c 204070c0 call load_inverse_result 
+701d 580f4240 setarg 1000000 
+701e 1fe22200 copy pdata ,rega 
+701f 6fe80aee fetch 4 ,mem_aes_cmac_temp 
+7020 9a26fc00 idiv rega 
+7021 20407d61 call wait_div_end 
+7022 18077e00 remainder pdata 
+7023 67e809b6 store 4 ,mem_gkey 
+7024 20600000 rtn 
+
+function_f6_eb:
+7025 7005e141 jam 65 ,mem_aes_cmac_data_length 
+7026 d8a005e2 arg memdat ,contw 
+7027 20407074 call store_addr_common_a 
+7028 2040706f call store_addr_common_b 
+7029 6fe64426 fetch 3 ,mem_le_pres + 1 
+702a e7e60005 istore 3 ,contw 
+702b 20407035 call get_r 
+702c d8c0042b arg mem_le_mrand ,contr 
+702d 20407c9a call memcpy16 
+702e d8c0440c arg mem_le_srand ,contr 
+702f 20407c9a call memcpy16 
+7030 204070c9 call inverse_memdat 
+7031 d8c00b0e arg mem_le_mackey ,contr 
+7032 d8a00abe arg mem_aes_cmac_k ,contw 
+7033 20407c9a call memcpy16 
+7034 2020708f branch function_aes_cmac 
+
+get_r:
+7035 6fe84499 fetch 4 ,mem_le_tk 
+7036 e7e80005 istore 4 ,contw 
+7037 20407ca8 call memset0_4 
+7038 20207ca5 branch memset0_8 
+
+function_f6_ea:
+7039 4743c030 bpatchx patch30_7 ,mem_patch30 
+703a 7005e141 jam 65 ,mem_aes_cmac_data_length 
+703b d8a005e2 arg memdat ,contw 
+703c 2040706f call store_addr_common_b 
+703d 20407074 call store_addr_common_a 
+703e 6fe6441f fetch 3 ,mem_le_preq + 1 
+703f e7e60005 istore 3 ,contw 
+7040 20407035 call get_r 
+7041 d8c0440c arg mem_le_srand ,contr 
+7042 20407c9a call memcpy16 
+7043 d8c0042b arg mem_le_mrand ,contr 
+7044 20407c9a call memcpy16 
+7045 204070c9 call inverse_memdat 
+7046 d8c00b0e arg mem_le_mackey ,contr 
+7047 d8a00abe arg mem_aes_cmac_k ,contw 
+7048 20407c9a call memcpy16 
+7049 2040708f call function_aes_cmac 
+704a d8a00aee arg mem_aes_cmac_temp ,contw 
+704b 202070c0 branch load_inverse_result 
+
+function_f5:
+704c 7005e120 jam 32 ,mem_aes_cmac_data_length 
+704d d8c009fa arg mem_le_dhkey_256 ,contr 
+704e d8a005e2 arg memdat ,contw 
+704f 20407c98 call memcpy32 
+7050 204070c9 call inverse_memdat 
+7051 d8c0099a arg mem_le_slat ,contr 
+7052 204070c4 call store_inverse_k 
+7053 2040708f call function_aes_cmac 
+7054 d8a00abe arg mem_aes_cmac_k ,contw 
+7055 2040734c call store_aes_result 
+7056 d8400001 arg 1 ,temp 
+7057 2040705e call function_f5_common 
+7058 d8a043eb arg mem_le_ltk ,contw 
+7059 204070c0 call load_inverse_result 
+705a d8400000 arg 0 ,temp 
+705b 2040705e call function_f5_common 
+705c d8a00b0e arg mem_le_mackey ,contw 
+705d 2020734c branch store_aes_result 
+
+function_f5_common:
+705e 47444031 bpatchx patch31_0 ,mem_patch31 
+705f 7005e135 jam 53 ,mem_aes_cmac_data_length 
+7060 58000100 setarg 0x100 
+7061 67e405e2 store 2 ,memdat 
+7062 2040706f call store_addr_common_b 
+7063 20407074 call store_addr_common_a 
+7064 d8c0440c arg mem_le_srand ,contr 
+7065 20407c9a call memcpy16 
+7066 d8c0042b arg mem_le_mrand ,contr 
+7067 20407c9a call memcpy16 
+7068 58006c65 setarg 0x6c65 
+7069 e7e40005 istore 2 ,contw 
+706a 58006274 setarg 0x6274 
+706b e7e40005 istore 2 ,contw 
+706c e0420005 istoret 1 ,contw 
+706d 204070c9 call inverse_memdat 
+706e 2020708f branch function_aes_cmac 
+
+store_addr_common_b:
+706f 6fec4472 fetch 6 ,mem_le_lap 
+7070 e7ec0005 istore 6 ,contw 
+7071 6fe24467 fetch 1 ,mem_le_conn_own_addr_type 
+7072 e7e20005 istore 1 ,contw 
+7073 20600000 rtn 
+
+store_addr_common_a:
+7074 6fec044b fetch 6 ,mem_le_plap 
+7075 e7ec0005 istore 6 ,contw 
+7076 6fe24460 fetch 1 ,mem_le_conn_peer_addr_type 
+7077 e7e20005 istore 1 ,contw 
+7078 20600000 rtn 
+
+function_f4_ca:
+7079 7005e141 jam 65 ,mem_aes_cmac_data_length 
+707a 6fe24636 fetch 1 ,mem_passkey_1bit 
+707b 67e205e2 store 1 ,memdat 
+707c d8c045a4 arg mem_le_pubkey_local_x_256 ,contr 
+707d 20407c98 call memcpy32 
+707e d8c009ba arg mem_le_pubkey_remote_x_256 ,contr 
+707f 20407c98 call memcpy32 
+7080 204070c9 call inverse_memdat 
+7081 d8c0042b arg mem_le_mrand ,contr 
+7082 204070c4 call store_inverse_k 
+7083 2020708f branch function_aes_cmac 
+
+function_f4_cb:
+7084 7005e141 jam 65 ,mem_aes_cmac_data_length 
+7085 6fe24636 fetch 1 ,mem_passkey_1bit 
+7086 67e205e2 store 1 ,memdat 
+7087 d8c009ba arg mem_le_pubkey_remote_x_256 ,contr 
+7088 20407c98 call memcpy32 
+7089 d8c045a4 arg mem_le_pubkey_local_x_256 ,contr 
+708a 20407c98 call memcpy32 
+708b 204070c9 call inverse_memdat 
+708c d8c0440c arg mem_le_srand ,contr 
+708d 204070c4 call store_inverse_k 
+708e 2020708f branch function_aes_cmac 
+
+function_aes_cmac:
+708f 4744c031 bpatchx patch31_1 ,mem_patch31 
+7090 204070de call function_aes_cmac_generate_subkey 
+7091 6fe205e1 fetch 1 ,mem_aes_cmac_data_length 
+7092 1fe20400 copy pdata ,temp 
+
+function_ceil16:
+7093 1fe0fe0f increase 15 ,pdata 
+7094 1ff1fe00 rshift4 pdata ,pdata 
+7095 1fe22400 copy pdata ,regb 
+7096 203a70a1 branch function_aes_cmac_set_flag_0_balnk ,blank 
+7097 18417e0f and temp ,0x0f ,pdata 
+7098 243a70a4 nbranch function_aes_cmac_set_flag_0 ,blank 
+7099 da600ace arg mem_aes_cmac_k1 ,regc 
+709a dfe005e2 arg memdat ,pdata 
+709b 1fe0fff0 increase -16 ,pdata 
+709c 9840a200 iadd temp ,rega 
+709d d8a00afe arg mem_aes_cmac_m_last ,contw 
+709e df200004 arg 4 ,loopcnt 
+709f 20407cb8 call xor_loop 
+70a0 202070af branch function_aes_cmac_aes 
+
+function_aes_cmac_set_flag_0_balnk:
+70a1 da400001 arg 1 ,regb 
+70a2 da200000 arg 0 ,rega 
+70a3 202070a5 branch function_aes_cmac_set_flag_0_common 
+
+function_aes_cmac_set_flag_0:
+70a4 1841220f and temp ,0x0f ,rega 
+
+function_aes_cmac_set_flag_0_common:
+70a5 dfe005e2 arg memdat ,pdata 
+70a6 9840fe00 iadd temp ,pdata 
+70a7 9a260c00 isub rega ,contr 
+70a8 d8a00aee arg mem_aes_cmac_temp ,contw 
+70a9 20407104 call function_aes_cmac_padding 
+70aa da600ade arg mem_aes_cmac_k2 ,regc 
+70ab da200aee arg mem_aes_cmac_temp ,rega 
+70ac d8a00afe arg mem_aes_cmac_m_last ,contw 
+70ad df200004 arg 4 ,loopcnt 
+70ae 20407cb8 call xor_loop 
+
+function_aes_cmac_aes:
+70af 20407346 call aes_clear_data 
+70b0 204072e8 call aes_init 
+70b1 d8c005e2 arg memdat ,contr 
+
+function_aes_cmac_aes_loop:
+70b2 1a40a5ff increase -1 ,regb 
+70b3 1a427e00 deposit regb 
+70b4 203a70b8 branch function_aes_cmac_aes_loop_end ,blank 
+70b5 2040733b call load_data128 
+70b6 204072dc call do_aes_cbc 
+70b7 202070b2 branch function_aes_cmac_aes_loop 
+
+function_aes_cmac_aes_loop_end:
+70b8 d8a00aee arg mem_aes_cmac_temp ,contw 
+70b9 2040734c call store_aes_result 
+70ba d8c00afe arg mem_aes_cmac_m_last ,contr 
+70bb 2040733b call load_data128 
+70bc 204072e8 call aes_init 
+70bd d8c00aee arg mem_aes_cmac_temp ,contr 
+70be 2040733b call load_data128 
+70bf 202072dc branch do_aes_cbc 
+
+load_inverse_result:
+70c0 18a22200 copy contw ,rega 
+70c1 2040734c call store_aes_result 
+70c2 df200010 arg 16 ,loopcnt 
+70c3 20207cc0 branch inverse_data 
+
+store_inverse_k:
+70c4 d8a00abe arg mem_aes_cmac_k ,contw 
+70c5 20407c9a call memcpy16 
+
+inverse_k:
+70c6 df200010 arg 16 ,loopcnt 
+70c7 da200abe arg mem_aes_cmac_k ,rega 
+70c8 20207cc0 branch inverse_data 
+
+inverse_memdat:
+70c9 6fe205e1 fetch 1 ,mem_aes_cmac_data_length 
+70ca 1fe27200 copy pdata ,loopcnt 
+70cb da2005e2 arg memdat ,rega 
+70cc 20207cc0 branch inverse_data 
+
+bn_lshift_0_inverse:
+70cd efe20011 ifetch 1 ,rega 
+70ce 1fe3fe00 lshift pdata ,pdata 
+70cf 2a6ffe00 isolate1 0 ,regc 
+70d0 7920fe00 setflag true ,0 ,pdata 
+70d1 2feffe08 isolate1 8 ,pdata 
+70d2 7920a600 setflag true ,0 ,regc 
+70d3 e7e20011 istore 1 ,rega 
+70d4 1a20a3ff increase -1 ,rega 
+70d5 c20070cd loop bn_lshift_0_inverse 
+70d6 20600000 rtn 
+
+function_aes_cmac_k1_inverse:
+70d7 da200ace arg mem_aes_cmac_k1 ,rega 
+
+function_aes_cmac_inverse_common:
+70d8 1a20a20f increase 15 ,rega 
+70d9 18007210 force 16 ,loopcnt 
+70da 18002600 force 0 ,regc 
+70db 202070cd branch bn_lshift_0_inverse 
+
+function_aes_cmac_k2_inverse:
+70dc da200ade arg mem_aes_cmac_k2 ,rega 
+70dd 202070d8 branch function_aes_cmac_inverse_common 
+
+function_aes_cmac_generate_subkey:
+70de d8c00abe arg mem_aes_cmac_k ,contr 
+70df 20407338 call load_key128 
+70e0 18007008 force regidx_xor ,regext_index 
+70e1 20407347 call aes_clear 
+70e2 20407346 call aes_clear_data 
+70e3 204072d9 call do_aes_ecb 
+70e4 d8a00ace arg mem_aes_cmac_k1 ,contw 
+70e5 2040734c call store_aes_result 
+
+function_aes_cmac_k1:
+70e6 47454031 bpatchx patch31_2 ,mem_patch31 
+70e7 6fe20ace fetch 1 ,mem_aes_cmac_k1 
+70e8 2feffe07 isolate1 7 ,pdata 
+70e9 2420f0ef nbranch function_aes_cmac_k1_0 ,true 
+70ea 204070d7 call function_aes_cmac_k1_inverse 
+70eb da600ace arg mem_aes_cmac_k1 ,regc 
+70ec d8a00ace arg mem_aes_cmac_k1 ,contw 
+70ed 204070f9 call function_aes_cmac_xor_rb 
+70ee 202070f0 branch function_aes_cmac_k2 
+
+function_aes_cmac_k1_0:
+70ef 204070d7 call function_aes_cmac_k1_inverse 
+
+function_aes_cmac_k2:
+70f0 d8c00ace arg mem_aes_cmac_k1 ,contr 
+70f1 d8a00ade arg mem_aes_cmac_k2 ,contw 
+70f2 20407c9a call memcpy16 
+70f3 6fe20ade fetch 1 ,mem_aes_cmac_k2 
+70f4 2feffe07 isolate1 7 ,pdata 
+70f5 2420f0dc nbranch function_aes_cmac_k2_inverse ,true 
+70f6 204070dc call function_aes_cmac_k2_inverse 
+70f7 da600ade arg mem_aes_cmac_k2 ,regc 
+70f8 d8a00ade arg mem_aes_cmac_k2 ,contw 
+
+function_aes_cmac_xor_rb:
+70f9 df200003 arg 3 ,loopcnt 
+
+function_aes_cmac_xor_rb_loop:
+70fa d8400000 arg 0 ,temp 
+70fb 20407100 call function_aes_cmac_xor_loop_common 
+70fc 1a60a604 increase 4 ,regc 
+70fd c20070fa loop function_aes_cmac_xor_rb_loop 
+70fe d8408700 arg 0x8700 ,temp 
+70ff 18500400 lshift16 temp ,temp 
+
+function_aes_cmac_xor_loop_common:
+7100 efe80013 ifetch 4 ,regc 
+7101 9842fe00 ixor temp ,pdata 
+7102 e7e80005 istore 4 ,contw 
+7103 20600000 rtn 
+
+function_aes_cmac_padding:
+7104 4745c031 bpatchx patch31_3 ,mem_patch31 
+7105 df200010 arg 16 ,loopcnt 
+7106 dfe00000 arg 0 ,pdata 
+
+function_aes_cmac_padding_loop:
+7107 9a267c00 isub rega ,null 
+7108 2022f10f branch function_aes_cmac_padding_beq_length ,zero 
+7109 20217112 branch function_aes_cmac_padding_big_length ,positive 
+710a e8420006 ifetcht 1 ,contr 
+710b e0420005 istoret 1 ,contw 
+
+function_aes_cmac_padding_loop2:
+710c 1fe0fe01 increase 1 ,pdata 
+710d c2007107 loop function_aes_cmac_padding_loop 
+710e 20600000 rtn 
+
+function_aes_cmac_padding_beq_length:
+710f d8400080 arg 0x80 ,temp 
+
+function_aes_cmac_padding_common:
+7110 e0420005 istoret 1 ,contw 
+7111 2020710c branch function_aes_cmac_padding_loop2 
+
+function_aes_cmac_padding_big_length:
+7112 d8400000 arg 0 ,temp 
+7113 20207110 branch function_aes_cmac_padding_common 
+
+generate_kinit:
+7114 20407127 call function_e22 
+7115 d8c0058e arg mem_input_store ,contr 
+7116 d8a0057e arg mem_kinit ,contw 
+7117 20207c9a branch memcpy16 
+
+function_e21:
+7118 78547c00 disable user 
+7119 20407215 call function_expand 
+711a d8c0055e arg mem_random_number ,contr 
+711b d8a0059e arg mem_x ,contw 
+711c 1800720f force 15 ,loopcnt 
+711d 20407cdc call memcpy 
+711e efe20006 ifetch 1 ,contr 
+711f 1fe2fe06 xor_into 6 ,pdata 
+7120 e7e20005 istore 1 ,contw 
+7121 580005ae setarg mem_y 
+7122 67e405d2 store 2 ,memp_ar_input 
+7123 5800059e setarg mem_x 
+7124 67e405d0 store 2 ,memp_ar_key 
+7125 79200012 set1 mark_ar2 ,mark 
+7126 20207167 branch function_ar 
+
+function_e22:
+7127 68424657 fetcht 1 ,mem_pin_length 
+7128 18002410 force 16 ,regb 
+7129 1840a606 add temp ,6 ,regc 
+712a 1a667c10 sub regc ,16 ,null 
+712b 2021712d branch function_e22_pin_init ,positive 
+712c 18002610 force 16 ,regc 
+
+function_e22_pin_init:
+712d d8a0059e arg mem_x ,contw 
+
+function_e22_genx_pin:
+712e d8c04658 arg mem_pin ,contr 
+712f 18427200 copy temp ,loopcnt 
+7130 78547c00 disable user 
+
+function_e22_genx_loop:
+7131 efe20006 ifetch 1 ,contr 
+7132 e7e20005 istore 1 ,contw 
+7133 1a40a5ff increase -1 ,regb 
+7134 2022f13b branch function_e22_genx_end ,zero 
+7135 c2007131 loop function_e22_genx_loop 
+7136 2034712e branch function_e22_genx_pin ,user 
+7137 78347c00 enable user 
+7138 18007206 force 6 ,loopcnt 
+7139 1a220c00 copy rega ,contr 
+713a 20207131 branch function_e22_genx_loop 
+
+function_e22_genx_end:
+713b d8c0055e arg mem_random_number ,contr 
+713c d8a005ae arg mem_y ,contw 
+713d 20407c9a call memcpy16 
+713e 6fe205bd fetch 1 ,mem_y15 
+713f 9a62fe00 ixor regc ,pdata 
+7140 67e205bd store 1 ,mem_y15 
+7141 580005ae setarg mem_y 
+7142 67e405d2 store 2 ,memp_ar_input 
+7143 5800059e setarg mem_x 
+7144 67e405d0 store 2 ,memp_ar_key 
+7145 79200012 set1 mark_ar2 ,mark 
+7146 20207167 branch function_ar 
+
+function_e1:
+7147 78547c00 disable user 
+7148 20407215 call function_expand 
+7149 20207151 branch function_hash 
+
+function_e3:
+714a da200056 arg mem_aco ,rega 
+714b 78347c00 enable user 
+714c 20407215 call function_expand 
+714d 20407151 call function_hash 
+714e d8c0058e arg mem_input_store ,contr 
+714f d8a00062 arg mem_kc ,contw 
+7150 20207c9a branch memcpy16 
+
+function_hash:
+7151 5800055e setarg mem_random_number 
+7152 67e405d2 store 2 ,memp_ar_input 
+7153 580041bf setarg mem_link_key 
+7154 67e405d0 store 2 ,memp_ar_key 
+7155 793f8012 set0 mark_ar2 ,mark 
+7156 20407167 call function_ar 
+7157 da20058e arg mem_input_store ,rega 
+7158 da40055e arg mem_random_number ,regb 
+7159 d8a0059e arg mem_x ,contw 
+715a 20407208 call xor16 
+715b da20059e arg mem_x ,rega 
+715c da4005ae arg mem_y ,regb 
+715d 1a420a00 copy regb ,contw 
+715e 78347c00 enable user 
+715f 20407206 call add16 
+7160 20407220 call key_offset 
+7161 580005ae setarg mem_y 
+7162 67e405d2 store 2 ,memp_ar_input 
+7163 5800059e setarg mem_x 
+7164 67e405d0 store 2 ,memp_ar_key 
+7165 79200012 set1 mark_ar2 ,mark 
+7166 20207167 branch function_ar 
+
+function_ar:
+7167 7005d400 jam 0 ,mem_ar_hround 
+7168 6fe405d0 fetch 2 ,memp_ar_key 
+7169 98000c00 iforce contr 
+716a d8a005be arg mem_key_store ,contw 
+716b 20407c9a call memcpy16 
+716c 6fe405d2 fetch 2 ,memp_ar_input 
+716d 98000c00 iforce contr 
+716e d8a0058e arg mem_input_store ,contw 
+716f 20407c9a call memcpy16 
+
+function_ar_loop:
+7170 2040718d call key_scheduling 
+7171 78547c00 disable user 
+7172 c5897177 bmark0 mark_ar2 ,function_ar_original 
+7173 6fe205d4 fetch 1 ,mem_ar_hround 
+7174 c0827177 bne 4 ,function_ar_original 
+7175 6a4405d2 fetchr regb ,2 ,memp_ar_input 
+7176 204071bf call xor_mod32_ar2 
+
+function_ar_original:
+7177 204071be call xor_mod32 
+7178 204071d0 call el_boxes 
+7179 6fe205d4 fetch 1 ,mem_ar_hround 
+717a 1fe0fe01 increase 1 ,pdata 
+717b 67e205d4 store 1 ,mem_ar_hround 
+717c 2040718d call key_scheduling 
+717d 78347c00 enable user 
+717e 204071be call xor_mod32 
+717f 204071df call pht 
+7180 204071ec call permute 
+7181 204071df call pht 
+7182 204071ec call permute 
+7183 204071df call pht 
+7184 204071ec call permute 
+7185 204071df call pht 
+7186 6fe205d4 fetch 1 ,mem_ar_hround 
+7187 1fe0fe01 increase 1 ,pdata 
+7188 67e205d4 store 1 ,mem_ar_hround 
+7189 c0887170 bne 16 ,function_ar_loop 
+718a 2040718d call key_scheduling 
+718b 78547c00 disable user 
+718c 202071be branch xor_mod32 
+
+key_scheduling:
+718d 6fe205d4 fetch 1 ,mem_ar_hround 
+718e d8c005be arg mem_key_store ,contr 
+718f 203a71b4 branch key_sched_zero ,blank 
+7190 98002400 iforce regb 
+7191 18007211 force 17 ,loopcnt 
+7192 18c20a00 copy contr ,contw 
+
+key_rotateloop:
+7193 efe20006 ifetch 1 ,contr 
+7194 1fe98400 lshift3 pdata ,temp 
+7195 1feb7e00 rshift2 pdata ,pdata 
+7196 1fe97e00 rshift3 pdata ,pdata 
+7197 9841fe00 ior temp ,pdata 
+7198 e7e20005 istore 1 ,contw 
+7199 c2007193 loop key_rotateloop 
+719a 580005be setarg mem_key_store 
+719b 9a408c00 iadd regb ,contr 
+719c 18007210 force 16 ,loopcnt 
+719d d8a0056e arg mem_round_key ,contw 
+
+key_select_octet_loop:
+719e efe20006 ifetch 1 ,contr 
+719f e7e20005 istore 1 ,contw 
+71a0 28c1ffcf compare mem_key_store_end ,contr ,0xff 
+71a1 2420f1a3 nbranch key_select_octet_nwrap ,true 
+71a2 18c08def increase -17 ,contr 
+
+key_select_octet_nwrap:
+71a3 c200719e loop key_select_octet_loop 
+71a4 18002200 force 0 ,rega 
+71a5 1a40a7ff add regb ,-1 ,regc 
+71a6 1a6ba600 lshift2 regc ,regc 
+71a7 1a6ba600 lshift2 regc ,regc 
+71a8 2040736e call enable_authrom 
+71a9 58008400 setarg mem_b_box 
+71aa 9a60a600 iadd regc ,regc 
+71ab d8a0056e arg mem_round_key ,contw 
+71ac 18007210 force 16 ,loopcnt 
+
+bias_round_key_loop:
+71ad e8420013 ifetcht 1 ,regc 
+71ae efe20005 ifetch 1 ,contw 
+71af 9840fe00 iadd temp ,pdata 
+71b0 e7e20005 istore 1 ,contw 
+71b1 1a60a601 increase 1 ,regc 
+71b2 c20071ad loop bias_round_key_loop 
+71b3 20207372 branch disable_authrom 
+
+key_sched_zero:
+71b4 18007210 force 16 ,loopcnt 
+71b5 18000400 force 0 ,temp 
+
+create_byte_16_loop:
+71b6 efe20006 ifetch 1 ,contr 
+71b7 98428400 ixor temp ,temp 
+71b8 c20071b6 loop create_byte_16_loop 
+71b9 18427e00 deposit temp 
+71ba e7e20006 istore 1 ,contr 
+71bb d8c005be arg mem_key_store ,contr 
+71bc d8a0056e arg mem_round_key ,contw 
+71bd 20207c9a branch memcpy16 
+
+xor_mod32:
+71be da40056e arg mem_round_key ,regb 
+
+xor_mod32_ar2:
+71bf 18007210 force 16 ,loopcnt 
+71c0 da20058e arg mem_input_store ,rega 
+71c1 1a220a00 copy rega ,contw 
+
+xor_mod32_loop:
+71c2 e8420011 ifetcht 1 ,rega 
+71c3 efe20012 ifetch 1 ,regb 
+71c4 9842e000 ixor temp ,alarm 
+71c5 1f212603 and loopcnt ,3 ,regc 
+71c6 243471c8 nbranch xor_mod32_invert ,user 
+71c7 1a62a603 xor_into 3 ,regc 
+
+xor_mod32_invert:
+71c8 1a662601 sub regc ,1 ,regc 
+71c9 202171cb branch xor_even ,positive 
+71ca 9840e000 iadd temp ,alarm 
+
+xor_even:
+71cb e6020005 istorer alarm ,1 ,contw 
+71cc 1a20a201 increase 1 ,rega 
+71cd 1a40a401 increase 1 ,regb 
+71ce c20071c2 loop xor_mod32_loop 
+71cf 20600000 rtn 
+
+el_boxes:
+71d0 2040736e call enable_authrom 
+71d1 18007210 force 16 ,loopcnt 
+71d2 da20058e arg mem_input_store ,rega 
+
+el_box_loop:
+71d3 efe20011 ifetch 1 ,rega 
+71d4 d8c08500 arg mem_e_box ,contr 
+71d5 1f212603 and loopcnt ,3 ,regc 
+71d6 1a667c01 sub regc ,1 ,null 
+71d7 202171d9 branch e_boxes ,positive 
+71d8 d8c08600 arg mem_l_box ,contr 
+
+e_boxes:
+71d9 98c08c00 iadd contr ,contr 
+71da efe20006 ifetch 1 ,contr 
+71db e7e20011 istore 1 ,rega 
+71dc 1a20a201 increase 1 ,rega 
+71dd c20071d3 loop el_box_loop 
+71de 20207372 branch disable_authrom 
+
+pht:
+71df 18007208 force 8 ,loopcnt 
+71e0 d8c0058e arg mem_input_store ,contr 
+71e1 18c20a00 copy contr ,contw 
+
+pht_loop:
+71e2 ea220006 ifetchr rega ,1 ,contr 
+71e3 ea420006 ifetchr regb ,1 ,contr 
+71e4 1a23fe00 lshift rega ,pdata 
+71e5 9a40fe00 iadd regb ,pdata 
+71e6 e7e20005 istore 1 ,contw 
+71e7 1a227e00 deposit rega 
+71e8 9a40fe00 iadd regb ,pdata 
+71e9 e7e20005 istore 1 ,contw 
+71ea c20071e2 loop pht_loop 
+71eb 20600000 rtn 
+
+permute:
+71ec 588ae42c setarg 0x8ae42c 
+71ed 98000400 iforce temp 
+71ee 18007207 force 7 ,loopcnt 
+71ef 204071f9 call permute_exchange 
+71f0 580d751b setarg 0xd751b 
+71f1 98000400 iforce temp 
+71f2 18007205 force 5 ,loopcnt 
+71f3 204071f9 call permute_exchange 
+71f4 6a22059d fetchr rega ,1 ,mem_input_store + 15 
+71f5 6fe20591 fetch 1 ,mem_input_store + 3 
+71f6 67e2059d store 1 ,mem_input_store + 15 
+71f7 62220591 storer rega ,1 ,mem_input_store + 3 
+71f8 20600000 rtn 
+
+permute_exchange:
+71f9 1841240f and temp ,0xf ,regb 
+
+permute_loop:
+71fa 18417e0f and temp ,0xf ,pdata 
+71fb d8a0058e arg mem_input_store ,contw 
+71fc 98a08a00 iadd contw ,contw 
+71fd ea620005 ifetchr regc ,1 ,contw 
+71fe e2220005 istorer rega ,1 ,contw 
+71ff 1a622200 copy regc ,rega 
+7200 18518400 rshift4 temp ,temp 
+7201 c20071fa loop permute_loop 
+7202 5800058e setarg mem_input_store 
+7203 9a408a00 iadd regb ,contw 
+7204 e2220005 istorer rega ,1 ,contw 
+7205 20600000 rtn 
+
+add16:
+7206 78347c00 enable user 
+7207 20207209 branch xor_add16 
+
+xor16:
+7208 78547c00 disable user 
+
+xor_add16:
+7209 18007210 force 16 ,loopcnt 
+
+xoradd_loop:
+720a e8420011 ifetcht 1 ,rega 
+720b efe20012 ifetch 1 ,regb 
+720c 2034720f branch xoradd_add ,user 
+720d 9842fe00 ixor temp ,pdata 
+720e 20207210 branch xoradd_store 
+
+xoradd_add:
+720f 9840fe00 iadd temp ,pdata 
+
+xoradd_store:
+7210 e7e20005 istore 1 ,contw 
+7211 1a20a201 increase 1 ,rega 
+7212 1a40a401 increase 1 ,regb 
+7213 c200720a loop xoradd_loop 
+7214 20600000 rtn 
+
+function_expand:
+7215 d8a005ae arg mem_y ,contw 
+7216 efec0011 ifetch 6 ,rega 
+7217 e7ec0005 istore 6 ,contw 
+7218 2034721b branch expand_12 ,user 
+7219 efec0011 ifetch 6 ,rega 
+721a 2020721c branch expand_cont 
+
+expand_12:
+721b efec0006 ifetch 6 ,contr 
+
+expand_cont:
+721c e7ec0005 istore 6 ,contw 
+721d efe80011 ifetch 4 ,rega 
+721e e7e80005 istore 4 ,contw 
+721f 20600000 rtn 
+
+key_offset:
+7220 d8c041bf arg mem_link_key ,contr 
+7221 d8a0059e arg mem_x ,contw 
+7222 d8400000 arg 0 ,temp 
+7223 588395a7 setarg 0x8395a7 
+7224 20407241 call concatenate_temp24 
+7225 58b3c1df setarg 0xb3c1df 
+7226 20407241 call concatenate_temp24 
+7227 5800e5e9 setarg 0xe5e9 
+7228 20407242 call concatenate_temp16 
+7229 18422800 copy temp ,regab 
+722a 78547c00 disable user 
+722b 2040722f call key_addxor 
+722c 1a820400 copy regab ,temp 
+722d 78347c00 enable user 
+722e 2020722f branch key_addxor 
+
+key_addxor:
+722f 18007208 force 8 ,loopcnt 
+
+key_addxor_loop:
+7230 efe20006 ifetch 1 ,contr 
+7231 2f200201 compare 1 ,loopcnt ,1 
+7232 20347236 branch key_high ,user 
+7233 2020f237 branch key_xor ,true 
+
+key_add:
+7234 9840fe00 iadd temp ,pdata 
+7235 20207238 branch key_store 
+
+key_high:
+7236 2020f234 branch key_add ,true 
+
+key_xor:
+7237 9842fe00 ixor temp ,pdata 
+
+key_store:
+7238 e7e20005 istore 1 ,contw 
+7239 184c8400 rshift8 temp ,temp 
+723a c2007230 loop key_addxor_loop 
+723b 20600000 rtn 
+
+copy_aco:
+723c 6fec0592 fetch 6 ,mem_input_store + 4 
+723d 67ec0056 store 6 ,mem_aco 
+723e efec0006 ifetch 6 ,contr 
+723f e7ec0005 istore 6 ,contw 
+7240 20600000 rtn 
+
+concatenate_temp24:
+7241 184d0400 lshift8 temp ,temp 
+
+concatenate_temp16:
+7242 18500400 lshift16 temp ,temp 
+7243 98418400 ior temp ,temp 
+7244 20600000 rtn 
+
+loop1:
+7245 20207245 branch loop1 
+
+generate_stk:
+7246 47464031 bpatchx patch31_4 ,mem_patch31 
+7247 204072eb call function_s1 
+7248 d8a043eb arg mem_le_ltk ,contw 
+7249 2020734c branch store_aes_result 
+
+authenticate_rconfirm:
+724a d8a0440c arg mem_le_srand ,contw 
+724b 2034f24d branch authenticate_mconfirm ,master 
+724c d8a0042b arg mem_le_mrand ,contw 
+
+authenticate_mconfirm:
+724d 18c22200 copy contr ,rega 
+724e 20407c9a call memcpy16 
+724f 204072fd call function_c1 
+7250 d8c043fc arg mem_le_rconfirm ,contr 
+7251 20207365 branch compare_res 
+
+generate_confirm:
+7252 da20042b arg mem_le_mrand ,rega 
+7253 2034f255 branch generate_mrand ,master 
+7254 da20440c arg mem_le_srand ,rega 
+
+generate_mrand:
+7255 1a220a00 copy rega ,contw 
+7256 204066ee call generate_random 
+7257 202072fd branch function_c1 
+
+generate_sk:
+7258 d8c0447c arg mem_le_skdm ,contr 
+7259 2040733b call load_data128 
+725a d8c043eb arg mem_le_ltk ,contr 
+725b 20407338 call load_key128 
+725c 18006c50 force aes_big_endian | aes_load ,aes_ctrl 
+725d 18006c00 force 0 ,aes_ctrl 
+725e 204072d1 call wait_aes 
+725f d8a00478 arg mem_le_sk ,contw 
+7260 2020734c branch store_aes_result 
+
+first_block_counter:
+7261 18007e49 force 0x49 ,pdata 
+7262 20207264 branch first_block 
+
+first_block_data:
+7263 18007e01 force 1 ,pdata 
+
+first_block:
+7264 18007000 force regidx_data ,regext_index 
+7265 184d5e00 lshift8 temp ,regext 
+7266 9de1de00 ior regext ,regext 
+7267 1f00f001 increase 1 ,regext_index 
+7268 184cde00 rshift8 temp ,regext 
+7269 1df15e00 rshift16 regext ,regext 
+726a 6fe443e3 fetch 2 ,mem_le_ivm 
+726b 1ff07e00 lshift16 pdata ,pdata 
+726c 9de1de00 ior regext ,regext 
+726d 1f00f001 increase 1 ,regext_index 
+726e efe80006 ifetch 4 ,contr 
+726f 98005e00 iforce regext 
+7270 1f00f001 increase 1 ,regext_index 
+7271 efe40006 ifetch 2 ,contr 
+7272 1a30de00 byteswap rega ,regext 
+7273 1df05e00 lshift16 regext ,regext 
+7274 9de1de00 ior regext ,regext 
+7275 1f00f001 increase 1 ,regext_index 
+7276 20600000 rtn 
+
+generate_mic:
+7277 1a608c01 add regc ,1 ,contr 
+7278 ea220006 ifetchr rega ,1 ,contr 
+7279 20407261 call first_block_counter 
+727a 204072d9 call do_aes_ecb 
+727b 18007000 force regidx_data ,regext_index 
+727c efe20013 ifetch 1 ,regc 
+727d 1fe17e03 and_into 0x3 ,pdata 
+727e 1ff05e00 lshift16 pdata ,regext 
+727f 79205e08 set1 8 ,regext 
+7280 20407344 call clear_hidata 
+7281 204072dc call do_aes_cbc 
+7282 1a227200 copy rega ,loopcnt 
+7283 1a608c02 add regc ,2 ,contr 
+7284 20407320 call padding_data 
+
+generate_mic_loop:
+7285 2040732a call aes_load_data 
+7286 204072dc call do_aes_cbc 
+7287 1f227e00 deposit loopcnt 
+7288 203a728a branch generate_mic_end ,blank 
+7289 20207285 branch generate_mic_loop 
+
+generate_mic_end:
+728a 1800700c force regidx_result ,regext_index 
+728b 1de22400 copy regext ,regb 
+728c 62480413 storer regb ,4 ,mem_le_mic 
+728d 20600000 rtn 
+
+aes_crypt_data:
+728e 1a20a201 increase 1 ,rega 
+728f 20407263 call first_block_data 
+7290 204072e8 call aes_init 
+7291 1a620c00 copy regc ,contr 
+7292 2040733b call load_data128 
+7293 204072df call do_aes_cfb 
+7294 20407353 call store_enc_data 
+7295 1a60a610 increase 16 ,regc 
+7296 1a40a5f0 increase -16 ,regb 
+7297 2021728e branch aes_crypt_data ,positive 
+7298 20600000 rtn 
+
+le_encrypt:
+7299 4746c031 bpatchx patch31_5 ,mem_patch31 
+729a da6043ae arg mem_le_txheader ,regc 
+729b 684a43d5 fetcht 5 ,mem_le_pcnt_tx 
+729c 20407277 call generate_mic 
+729d 18002200 force 0 ,rega 
+729e 20407263 call first_block_data 
+729f 204072e8 call aes_init 
+72a0 18007000 force regidx_data ,regext_index 
+72a1 1a425e00 copy regb ,regext 
+72a2 204072df call do_aes_cfb 
+72a3 da6043b0 arg mem_le_txpayload ,regc 
+72a4 6fe243af fetch 1 ,mem_le_txlen 
+72a5 1fe0a5ff add pdata ,-1 ,regb 
+72a6 9a608a00 iadd regc ,contw 
+72a7 1800700c force regidx_result ,regext_index 
+72a8 e5e80005 istorer regext ,4 ,contw 
+72a9 18002200 force 0 ,rega 
+72aa 2040728e call aes_crypt_data 
+72ab 6fe243af fetch 1 ,mem_le_txlen 
+72ac 1fe0fe04 increase 4 ,pdata 
+72ad 67e243af store 1 ,mem_le_txlen 
+72ae 684a43d5 fetcht 5 ,mem_le_pcnt_tx 
+72af 18408401 increase 1 ,temp 
+72b0 604a43d5 storet 5 ,mem_le_pcnt_tx 
+72b1 20600000 rtn 
+
+le_decrypt:
+72b2 684a43da fetcht 5 ,mem_le_pcnt_rx 
+72b3 18002200 force 0 ,rega 
+72b4 20407263 call first_block_data 
+72b5 204072e8 call aes_init 
+72b6 6fe202d6 fetch 1 ,mem_le_rxbuf + 1 
+72b7 da6002d7 arg mem_le_rxbuf + 2 ,regc 
+72b8 1fe0a5ff add pdata ,-1 ,regb 
+72b9 1fe0fffc increase -4 ,pdata 
+72ba 67e202d6 store 1 ,mem_le_rxbuf + 1 
+72bb 9a608c00 iadd regc ,contr 
+72bc 18007000 force regidx_data ,regext_index 
+72bd ede80006 ifetchr regext ,4 ,contr 
+72be 204072df call do_aes_cfb 
+72bf 1800700c force regidx_result ,regext_index 
+72c0 65e80417 storer regext ,4 ,mem_le_peer_mic 
+72c1 18002200 force 0 ,rega 
+72c2 2040728e call aes_crypt_data 
+72c3 da6002d5 arg mem_le_rxbuf ,regc 
+72c4 20407277 call generate_mic 
+72c5 6fe80417 fetch 4 ,mem_le_peer_mic 
+72c6 9a467e00 isub regb ,pdata 
+72c7 247a0000 nrtn blank 
+72c8 6fe843df fetch 4 ,mem_le_last_mic 
+72c9 9a467e00 isub regb ,pdata 
+72ca 207a0000 rtn blank 
+72cb 604843df storet 4 ,mem_le_last_mic 
+72cc 6fea43da fetch 5 ,mem_le_pcnt_rx 
+72cd 1fe0fe01 increase 1 ,pdata 
+72ce 67ea43da store 5 ,mem_le_pcnt_rx 
+72cf 18007e00 force 0 ,pdata 
+72d0 20600000 rtn 
+
+wait_aes:
+72d1 243bf2d1 nbranch wait_aes ,aes_ready 
+72d2 20600000 rtn 
+
+do_aes_ecb256:
+72d3 18006c48 force aes_load | aes_256 ,aes_ctrl 
+72d4 18006c08 force aes_256 ,aes_ctrl 
+72d5 202072d1 branch wait_aes 
+
+do_aes_ecb192:
+72d6 18006c44 force aes_load | aes_192 ,aes_ctrl 
+72d7 18006c04 force aes_192 ,aes_ctrl 
+72d8 202072d1 branch wait_aes 
+
+do_aes_ecb:
+72d9 18006c40 force aes_load ,aes_ctrl 
+72da 18006c00 force 0 ,aes_ctrl 
+72db 202072d1 branch wait_aes 
+
+do_aes_cbc:
+72dc 18006c41 force aes_load | aes_cbc ,aes_ctrl 
+72dd 18006c00 force 0 ,aes_ctrl 
+72de 202072d1 branch wait_aes 
+
+do_aes_cfb:
+72df 18006c42 force aes_load | aes_cfb ,aes_ctrl 
+72e0 18006c02 force aes_cfb ,aes_ctrl 
+72e1 202072d1 branch wait_aes 
+
+do_aes_ecb_be:
+72e2 18006c50 force aes_big_endian | aes_load ,aes_ctrl 
+72e3 18006c10 force aes_big_endian ,aes_ctrl 
+72e4 202072d1 branch wait_aes 
+
+do_aes_cbc_be:
+72e5 18006c51 force aes_big_endian | aes_load | aes_cbc ,aes_ctrl 
+72e6 18006c10 force aes_big_endian ,aes_ctrl 
+72e7 202072d1 branch wait_aes 
+
+aes_init:
+72e8 18006c20 force aes_initialize ,aes_ctrl 
+72e9 18006c00 force 0 ,aes_ctrl 
+72ea 20600000 rtn 
+
+function_s1:
+72eb 18007000 force regidx_data ,regext_index 
+72ec 6fe8042b fetch 4 ,mem_le_mrand 
+72ed 98005e00 iforce regext 
+72ee 1f00f001 increase 1 ,regext_index 
+72ef efe80006 ifetch 4 ,contr 
+72f0 98005e00 iforce regext 
+72f1 1f00f001 increase 1 ,regext_index 
+72f2 6fe8440c fetch 4 ,mem_le_srand 
+72f3 98005e00 iforce regext 
+72f4 1f00f001 increase 1 ,regext_index 
+72f5 efe80006 ifetch 4 ,contr 
+72f6 98005e00 iforce regext 
+72f7 1f00f001 increase 1 ,regext_index 
+72f8 20407347 call aes_clear 
+72f9 1f00f1fc increase -4 ,regext_index 
+72fa 6fe84499 fetch 4 ,mem_le_tk 
+72fb 1fe25e00 copy pdata ,regext 
+72fc 202072e2 branch do_aes_ecb_be 
+
+function_c1:
+72fd 1a220c00 copy rega ,contr 
+72fe 2040733b call load_data128 
+72ff 18006c30 force aes_big_endian | aes_initialize ,aes_ctrl 
+7300 18006c00 force 0 ,aes_ctrl 
+7301 6fe24460 fetch 1 ,mem_le_conn_peer_addr_type 
+7302 68424457 fetcht 1 ,mem_le_adv_own_addr_type 
+7303 2434f306 nbranch function_c1_irat ,master 
+7304 6fe24467 fetch 1 ,mem_le_conn_own_addr_type 
+7305 68424460 fetcht 1 ,mem_le_conn_peer_addr_type 
+
+function_c1_irat:
+7306 67e2441c store 1 ,mem_le_iat 
+7307 6042441d storet 1 ,mem_le_rat 
+7308 d8c0441c arg mem_le_iat ,contr 
+7309 2040733b call load_data128 
+730a 20407347 call aes_clear 
+730b 1f00f1fc increase -4 ,regext_index 
+730c 6fe84499 fetch 4 ,mem_le_tk 
+730d 1fe25e00 copy pdata ,regext 
+730e 18006c51 force aes_big_endian | aes_cbc | aes_load ,aes_ctrl 
+730f 18006c10 force aes_big_endian ,aes_ctrl 
+7310 6fec4472 fetch 6 ,mem_le_lap 
+7311 684c044b fetcht 6 ,mem_le_plap 
+7312 2034f315 branch function_c1_master ,master 
+7313 6fec044b fetch 6 ,mem_le_plap 
+7314 684c4472 fetcht 6 ,mem_le_lap 
+
+function_c1_master:
+7315 18007000 force regidx_data ,regext_index 
+7316 18425e00 copy temp ,regext 
+7317 1f00f001 increase 1 ,regext_index 
+7318 184f5e00 rshift32 temp ,regext 
+7319 1ff07e00 lshift16 pdata ,pdata 
+731a 9de1de00 ior regext ,regext 
+731b 1f00f001 increase 1 ,regext_index 
+731c 1fef5e00 rshift32 pdata ,regext 
+731d 1f00f001 increase 1 ,regext_index 
+731e 18005e00 force 0 ,regext 
+731f 202072e5 branch do_aes_cbc_be 
+
+padding_data:
+7320 2f200600 compare 0 ,loopcnt ,3 
+7321 20608000 rtn true 
+7322 18c27e00 deposit contr 
+7323 9f208a00 iadd loopcnt ,contw 
+7324 18007e00 force 0 ,pdata 
+
+padding_loop:
+7325 e7e20005 istore 1 ,contw 
+7326 1f20f201 increase 1 ,loopcnt 
+7327 2f200600 compare 0 ,loopcnt ,3 
+7328 20608000 rtn true 
+7329 20207325 branch padding_loop 
+
+aes_load_data:
+732a 18007000 force regidx_data ,regext_index 
+
+load_data_loop:
+732b 1f227e00 deposit loopcnt 
+732c 203a732f branch load_data_padding ,blank 
+732d efe80006 ifetch 4 ,contr 
+732e 1f20f3fc increase -4 ,loopcnt 
+
+load_data_padding:
+732f 98005e00 iforce regext 
+7330 1f00f001 increase 1 ,regext_index 
+7331 2f001e04 compare regidx_key ,regext_index ,0xf 
+7332 20608000 rtn true 
+7333 2020732b branch load_data_loop 
+
+load_key256:
+7334 18007208 force 8 ,loopcnt 
+7335 20207339 branch load_key 
+
+load_key192:
+7336 18007206 force 6 ,loopcnt 
+7337 20207339 branch load_key 
+
+load_key128:
+7338 18007204 force 4 ,loopcnt 
+
+load_key:
+7339 18007004 force regidx_key ,regext_index 
+733a 2020733d branch load_regext_loop 
+
+load_data128:
+733b 18007000 force regidx_data ,regext_index 
+733c 18007204 force 4 ,loopcnt 
+
+load_regext_loop:
+733d efe80006 ifetch 4 ,contr 
+733e 1fe25e00 icopy regext 
+733f 1f00f001 increase 1 ,regext_index 
+7340 c200733d loop load_regext_loop 
+7341 20600000 rtn 
+
+load_sk:
+7342 d8c00478 arg mem_le_sk ,contr 
+7343 20207338 branch load_key128 
+
+clear_hidata:
+7344 18007204 force 4 ,loopcnt 
+7345 20207349 branch clear_data_rest 
+
+aes_clear_data:
+7346 18007000 force regidx_data ,regext_index 
+
+aes_clear:
+7347 18007204 force 4 ,loopcnt 
+
+clear_loop:
+7348 18005e00 force 0 ,regext 
+
+clear_data_rest:
+7349 1f00f001 increase 1 ,regext_index 
+734a c2007348 loop clear_loop 
+734b 20600000 rtn 
+
+store_aes_result:
+734c 1800700c force regidx_result ,regext_index 
+734d 18007204 force 4 ,loopcnt 
+
+send_aes_result_loop:
+734e 1de27e00 deposit regext 
+734f e7e80005 istore 4 ,contw 
+7350 1f00f001 increase 1 ,regext_index 
+7351 c200734e loop send_aes_result_loop 
+7352 20600000 rtn 
+
+store_enc_data:
+7353 1800700c force regidx_result ,regext_index 
+7354 1a620a00 copy regc ,contw 
+7355 1a40f201 add regb ,1 ,loopcnt 
+7356 1f267c0f sub loopcnt ,15 ,null 
+7357 20217359 branch store_enc_loop ,positive 
+7358 18007210 force 16 ,loopcnt 
+
+store_enc_loop:
+7359 1de27e00 deposit regext 
+735a 1f267c03 sub loopcnt ,3 ,null 
+735b 20217361 branch store_enc_byte ,positive 
+735c e7e80005 istore 4 ,contw 
+735d 1f20f3fc increase -4 ,loopcnt 
+735e 20628000 rtn zero 
+735f 1f00f001 increase 1 ,regext_index 
+7360 20207359 branch store_enc_loop 
+
+store_enc_byte:
+7361 e7e20005 istore 1 ,contw 
+7362 1fecfe00 rshift8 pdata ,pdata 
+7363 c2007361 loop store_enc_byte 
+7364 20600000 rtn 
+
+compare_res:
+7365 1800700c force regidx_result ,regext_index 
+7366 18007204 force 4 ,loopcnt 
+
+compare_res_loop:
+7367 efe80006 ifetch 4 ,contr 
+7368 9de67c00 isub regext ,null 
+7369 24628000 nrtn zero 
+736a 1f00f001 increase 1 ,regext_index 
+736b c2007367 loop compare_res_loop 
+736c 18007c00 force 0 ,null 
+736d 20600000 rtn 
+
+enable_authrom:
+736e 6fe28043 fetch 1 ,core_config 
+736f 79207e03 set1 clock_on_auth_rom ,pdata 
+7370 67e28043 store 1 ,core_config 
+7371 20600000 rtn 
+
+disable_authrom:
+7372 6fe28043 fetch 1 ,core_config 
+7373 793ffe03 set0 clock_on_auth_rom ,pdata 
+7374 67e28043 store 1 ,core_config 
+7375 20600000 rtn 
+
+init_memp:
+7376 d8a00882 arg mem_p ,contw 
+7377 3803ffff setsect 0 ,0x3ffff 
+7378 3807ffff setsect 1 ,0x3ffff 
+7379 380bffff setsect 2 ,0x3ffff 
+737a 380ffbff setsect 3 ,0x3fbff 
+737b e7f20005 istore 9 ,contw 
+737c 3803ffff setsect 0 ,0x3ffff 
+737d 3807ffff setsect 1 ,0x3ffff 
+737e 380bffff setsect 2 ,0x3ffff 
+737f 380fffff setsect 3 ,0x3ffff 
+7380 e7f20005 istore 9 ,contw 
+7381 3803ffff setsect 0 ,0x3ffff 
+7382 3807ffff setsect 1 ,0x3ffff 
+7383 380bcfff setsect 2 ,0x3cfff 
+7384 380fffff setsect 3 ,0x3ffff 
+7385 e7f20005 istore 9 ,contw 
+7386 3803ffff setsect 0 ,0x3ffff 
+7387 3807ffff setsect 1 ,0x3ffff 
+7388 380bffef setsect 2 ,0x3ffef 
+7389 380fffff setsect 3 ,0x3ffff 
+738a e7f20005 istore 9 ,contw 
+738b 3803ffff setsect 0 ,0x3ffff 
+738c 3807ffff setsect 1 ,0x3ffff 
+738d 380bffff setsect 2 ,0x3ffff 
+738e 380fffff setsect 3 ,0x3ffff 
+738f e7f20005 istore 9 ,contw 
+7390 3803ffff setsect 0 ,0x3ffff 
+7391 38066c7f setsect 1 ,0x26c7f 
+7392 3808146b setsect 2 ,0x146b 
+7393 380f7bb3 setsect 3 ,0x37bb3 
+7394 e7f20005 istore 9 ,contw 
+7395 3801feb8 setsect 0 ,0x1feb8 
+7396 38050c12 setsect 1 ,0x10c12 
+7397 380ab722 setsect 2 ,0x2b722 
+7398 380e9fa6 setsect 3 ,0x29fa6 
+7399 e7f20005 istore 9 ,contw 
+739a 3800e70f setsect 0 ,0xe70f 
+739b 38056720 setsect 1 ,0x16720 
+739c 3808519e setsect 2 ,0x519e 
+739d 380d9084 setsect 3 ,0x19084 
+739e e7f20005 istore 9 ,contw 
+739f 38031012 setsect 0 ,0x31012 
+73a0 380760bf setsect 1 ,0x360bf 
+73a1 380bf0af setsect 2 ,0x3f0af 
+73a2 380c03d3 setsect 3 ,0x3d3 
+73a3 e7f20005 istore 9 ,contw 
+73a4 3803a188 setsect 0 ,0x3a188 
+73a5 38043ad0 setsect 1 ,0x3ad0 
+73a6 380bcbf2 setsect 2 ,0x3cbf2 
+73a7 380e43d9 setsect 3 ,0x243d9 
+73a8 e7f20005 istore 9 ,contw 
+73a9 3802b030 setsect 0 ,0x2b030 
+73aa 38076a03 setsect 1 ,0x36a03 
+73ab 38091188 setsect 2 ,0x11188 
+73ac 380de520 setsect 3 ,0x1e520 
+73ad e7f20005 istore 9 ,contw 
+73ae 3803a11e setsect 0 ,0x3a11e 
+73af 3804fe5d setsect 1 ,0xfe5d 
+73b0 3808dd57 setsect 2 ,0xdd57 
+73b1 380dac93 setsect 3 ,0x1ac93 
+73b2 e7f20005 istore 9 ,contw 
+73b3 380011ed setsect 0 ,0x11ed 
+73b4 380618c4 setsect 1 ,0x218c4 
+73b5 38088da7 setsect 2 ,0x8da7 
+73b6 380e57ff setsect 3 ,0x257ff 
+73b7 e7f20005 istore 9 ,contw 
+73b8 3803192b setsect 0 ,0x3192b 
+73b9 38074641 setsect 1 ,0x34641 
+73ba 3809be0c setsect 2 ,0x1be0c 
+73bb 380f66ad setsect 3 ,0x366ad 
+73bc e7f20005 istore 9 ,contw 
+73bd 38001f83 setsect 0 ,0x1f83 
+73be 38055a23 setsect 1 ,0x15a23 
+73bf 380bf9b0 setsect 2 ,0x3f9b0 
+73c0 380c3949 setsect 3 ,0x3949 
+73c1 e7f20005 istore 9 ,contw 
+73c2 38013a51 setsect 0 ,0x13a51 
+73c3 380553fd setsect 1 ,0x153fd 
+73c4 380b372a setsect 2 ,0x3372a 
+73c5 380cf1bb setsect 3 ,0xf1bb 
+73c6 e7f20005 istore 9 ,contw 
+73c7 3803ae85 setsect 0 ,0x3ae85 
+73c8 3805eed9 setsect 1 ,0x1eed9 
+73c9 38089e66 setsect 2 ,0x9e66 
+73ca 380c01a8 setsect 3 ,0x1a8 
+73cb e7f00005 istore 8 ,contw 
+73cc 20600000 rtn 
+
+init_memp_256:
+73cd d8a0091a arg mem_p_256 ,contw 
+73ce 3803ffff setsect 0 ,0x3ffff 
+73cf 3807ffff setsect 1 ,0x3ffff 
+73d0 380bffff setsect 2 ,0x3ffff 
+73d1 380fffff setsect 3 ,0x3ffff 
+73d2 e7f20005 istore 9 ,contw 
+73d3 3803ffff setsect 0 ,0x3ffff 
+73d4 3804003f setsect 1 ,0x3f 
+73d5 38080000 setsect 2 ,0x0 
+73d6 380c0000 setsect 3 ,0x0 
+73d7 e7f20005 istore 9 ,contw 
+73d8 38000000 setsect 0 ,0x0 
+73d9 38040000 setsect 1 ,0x0 
+73da 38081000 setsect 2 ,0x1000 
+73db 380c0000 setsect 3 ,0x0 
+73dc e7f20005 istore 9 ,contw 
+73dd 3803ff00 setsect 0 ,0x3ff00 
+73de 3807ffff setsect 1 ,0x3ffff 
+73df 380bffcf setsect 2 ,0x3ffcf 
+73e0 380fffff setsect 3 ,0x3ffff 
+73e1 e7f20005 istore 9 ,contw 
+73e2 3803ffff setsect 0 ,0x3ffff 
+73e3 3807ffff setsect 1 ,0x3ffff 
+73e4 380bffff setsect 2 ,0x3ffff 
+73e5 380c03ff setsect 3 ,0x3ff 
+73e6 e7f20005 istore 9 ,contw 
+73e7 38000000 setsect 0 ,0x0 
+73e8 38040000 setsect 1 ,0x0 
+73e9 38080000 setsect 2 ,0x0 
+73ea 380c0000 setsect 3 ,0x0 
+73eb e7f20005 istore 9 ,contw 
+73ec 38010000 setsect 0 ,0x10000 
+73ed 38040000 setsect 1 ,0x0 
+73ee 380bf000 setsect 2 ,0x3f000 
+73ef 380fffff setsect 3 ,0x3ffff 
+73f0 e7f20005 istore 9 ,contw 
+73f1 380296ff setsect 0 ,0x296ff 
+73f2 38062630 setsect 1 ,0x22630 
+73f3 380b945d setsect 2 ,0x3945d 
+73f4 380fd284 setsect 3 ,0x3d284 
+73f5 e7f20005 istore 9 ,contw 
+73f6 380333a0 setsect 0 ,0x333a0 
+73f7 38044b7a setsect 1 ,0x4b7a 
+73f8 380837d8 setsect 2 ,0x37d8 
+73f9 380fc9dc setsect 3 ,0x3c9dc 
+73fa e7f20005 istore 9 ,contw 
+73fb 3803a440 setsect 0 ,0x3a440 
+73fc 3805b958 setsect 1 ,0x1b958 
+73fd 380b8bce setsect 2 ,0x38bce 
+73fe 380d091f setsect 3 ,0x1091f 
+73ff e7f20005 istore 9 ,contw 
+7400 3802e12c setsect 0 ,0x2e12c 
+7401 3805f47c setsect 1 ,0x1f47c 
+7402 380b56b1 setsect 2 ,0x356b1 
+7403 380efd47 setsect 3 ,0x2fd47 
+7404 e7f20005 istore 9 ,contw 
+7405 38006837 setsect 0 ,0x6837 
+7406 3806ed90 setsect 1 ,0x2ed90 
+7407 3809ecec setsect 2 ,0x1ecec 
+7408 380dacc5 setsect 3 ,0x1acc5 
+7409 e7f20005 istore 9 ,contw 
+740a 38023357 setsect 0 ,0x23357 
+740b 38058af3 setsect 1 ,0x18af3 
+740c 3808f9e1 setsect 2 ,0xf9e1 
+740d 380d29f0 setsect 3 ,0x129f0 
+740e e7f20005 istore 9 ,contw 
+740f 3802e7eb setsect 0 ,0x2e7eb 
+7410 3807e6e3 setsect 1 ,0x3e6e3 
+7411 380be1a7 setsect 2 ,0x3e1a7 
+7412 380d0b8b setsect 3 ,0x10b8b 
+7413 e7f20005 istore 9 ,contw 
+7414 38024fe3 setsect 0 ,0x24fe3 
+7415 380420ef setsect 1 ,0x20ef 
+7416 3809b5a6 setsect 2 ,0x1b5a6 
+7417 380cdc2f setsect 3 ,0xdc2f 
+7418 e7f20005 istore 9 ,contw 
+7419 38013860 setsect 0 ,0x13860 
+741a 3806bd69 setsect 1 ,0x2bd69 
+741b 3808391a setsect 2 ,0x391a 
+741c 380db222 setsect 3 ,0x1b222 
+741d e7f20005 istore 9 ,contw 
+741e 20600000 rtn 
+
+publickey_init:
+741f 6fe2462c fetch 1 ,mem_ssp_enable 
+7420 243a7432 nbranch sp_initialize ,blank 
+7421 2020792c branch sp_initialize_256 
+
+sp_calc_sequence_256_check:
+7422 47474031 bpatchx patch31_6 ,mem_patch31 
+7423 6fe2462c fetch 1 ,mem_ssp_enable 
+7424 207a0000 rtn blank 
+7425 6fe24583 fetch 1 ,mem_sp_local_key_invalid 
+7426 c1808000 rtnne sp_key_valid 
+7427 6fe24490 fetch 1 ,mem_le_secure_connect_enable 
+7428 207a0000 rtn blank 
+7429 6fe24495 fetch 1 ,mem_le_sc_local_key_invalid 
+742a c1018000 rtneq sp_key_valid_256 
+742b 6fe44652 fetch 2 ,mem_ui_state_map 
+742c c2807430 bbit1 ui_state_bt_connected ,stop_publickey_calc_256 
+742d 6fe24492 fetch 1 ,mem_le_sc_calc 
+742e c000792c beq sp_calc_standby ,sp_initialize_256 
+742f 20600000 rtn 
+
+stop_publickey_calc_256:
+7430 70449200 jam sp_calc_standby ,mem_le_sc_calc 
+7431 20600000 rtn 
+
+sp_initialize:
+7432 4747c031 bpatchx patch31_7 ,mem_patch31 
+7433 6fe2462c fetch 1 ,mem_ssp_enable 
+7434 203a650d branch ssp_disable ,blank 
+7435 20406506 call ssp_enable 
+7436 20407438 call sp_clear_flags 
+7437 20207522 branch sp_pubkey_calc 
+
+sp_clear_flags:
+7438 58000000 setarg 0 
+7439 67f009aa store 8 ,mem_sp_state_start 
+743a 67e809b2 store 4 ,mem_sp_flag_start 
+743b 67ee4630 store 7 ,mem_sp_iocap_remote 
+743c 20600000 rtn 
+
+sp_generate_local_key:
+743d 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+743e 20207442 branch sp_generate_local_key0 
+
+sp_master_generate_local_key:
+743f 6fe24583 fetch 1 ,mem_sp_local_key_invalid 
+7440 c000f53f beq sp_key_valid ,sp_dhkey_calc 
+7441 20204a8b branch assert 
+
+sp_generate_local_key0:
+7442 6fe24583 fetch 1 ,mem_sp_local_key_invalid 
+7443 c000f445 beq sp_key_valid ,sp_start_send_pubkey 
+7444 20207522 branch sp_pubkey_calc 
+
+sp_start_send_pubkey:
+7445 2040753f call sp_dhkey_calc 
+7446 6fe209ab fetch 1 ,mem_master_sp_state 
+7447 247a0000 nrtn blank 
+7448 7009aa03 jam sp_stat_key_send ,mem_sp_state 
+7449 20600000 rtn 
+
+sp_calc_check_publickey_256:
+744a 20407465 call sp_calc_b256 
+744b da2009da arg mem_le_pubkey_remote_y_256 ,rega 
+744c d8a00862 arg mem_t7_256 ,contw 
+744d 20407b2e call bn_sqrmod_256 
+744e da2009ba arg mem_le_pubkey_remote_x_256 ,rega 
+744f d8a00822 arg mem_t2_256 ,contw 
+7450 20407b2e call bn_sqrmod_256 
+7451 da200822 arg mem_t2_256 ,rega 
+7452 da4009ba arg mem_le_pubkey_remote_x_256 ,regb 
+7453 d8a00822 arg mem_t2_256 ,contw 
+7454 20407a96 call bn_mulmod_256 
+7455 da20093a arg mem_a_256 ,rega 
+7456 da4009ba arg mem_le_pubkey_remote_x_256 ,regb 
+7457 d8a00842 arg mem_t3_256 ,contw 
+7458 20407a96 call bn_mulmod_256 
+7459 da200842 arg mem_t3_256 ,rega 
+745a da400822 arg mem_t2_256 ,regb 
+745b d8a00822 arg mem_t2_256 ,contw 
+745c 20407b32 call bn_addmod_256 
+745d da200802 arg mem_t0_256 ,rega 
+745e da400822 arg mem_t2_256 ,regb 
+745f d8a00802 arg mem_t0_256 ,contw 
+7460 20407b32 call bn_addmod_256 
+7461 df200020 arg 32 ,loopcnt 
+7462 da200862 arg mem_t7_256 ,rega 
+7463 da400802 arg mem_t0_256 ,regb 
+7464 20207d63 branch string_compare 
+
+sp_calc_b256:
+7465 da20097a arg mem_gy_256 ,rega 
+7466 d8a00802 arg mem_t0_256 ,contw 
+7467 20407b2e call bn_sqrmod_256 
+7468 da20095a arg mem_gx_256 ,rega 
+7469 d8a00822 arg mem_t2_256 ,contw 
+746a 20407b2e call bn_sqrmod_256 
+746b da200822 arg mem_t2_256 ,rega 
+746c da40095a arg mem_gx_256 ,regb 
+746d d8a00822 arg mem_t2_256 ,contw 
+746e 20407a96 call bn_mulmod_256 
+746f da20093a arg mem_a_256 ,rega 
+7470 da40095a arg mem_gx_256 ,regb 
+7471 d8a00842 arg mem_t3_256 ,contw 
+7472 20407a96 call bn_mulmod_256 
+7473 da200842 arg mem_t3_256 ,rega 
+7474 da400822 arg mem_t2_256 ,regb 
+7475 d8a00822 arg mem_t2_256 ,contw 
+7476 20407b32 call bn_addmod_256 
+7477 da200802 arg mem_t0_256 ,rega 
+7478 da400822 arg mem_t2_256 ,regb 
+7479 d8a00802 arg mem_t0_256 ,contw 
+747a 20207b4b branch bn_submod_256 
+
+sp_calc_check_publickey:
+747b 20407496 call sp_calc_b 
+747c da2009e2 arg mem_sp_pubkey_remote_y ,rega 
+747d d8a00862 arg mem_t7_256 ,contw 
+747e 2040765d call bn_sqrmod 
+747f da2009c2 arg mem_sp_pubkey_remote_x ,rega 
+7480 d8a00822 arg mem_t2_256 ,contw 
+7481 2040765d call bn_sqrmod 
+7482 da200822 arg mem_t2_256 ,rega 
+7483 da4009c2 arg mem_sp_pubkey_remote_x ,regb 
+7484 d8a00822 arg mem_t2_256 ,contw 
+7485 2040763b call bn_mulmod 
+7486 da20089a arg mem_a ,rega 
+7487 da4009c2 arg mem_sp_pubkey_remote_x ,regb 
+7488 d8a00842 arg mem_t3_256 ,contw 
+7489 2040763b call bn_mulmod 
+748a da200842 arg mem_t3_256 ,rega 
+748b da400822 arg mem_t2_256 ,regb 
+748c d8a00822 arg mem_t2_256 ,contw 
+748d 2040760a call bn_addmod 
+748e da200802 arg mem_t0_256 ,rega 
+748f da400822 arg mem_t2_256 ,regb 
+7490 d8a00802 arg mem_t0_256 ,contw 
+7491 2040760a call bn_addmod 
+7492 df200018 arg 24 ,loopcnt 
+7493 da200862 arg mem_t7_256 ,rega 
+7494 da400802 arg mem_t0_256 ,regb 
+7495 20207d63 branch string_compare 
+
+sp_calc_b:
+7496 da2008e2 arg mem_gy ,rega 
+7497 d8a00802 arg mem_t0_256 ,contw 
+7498 2040765d call bn_sqrmod 
+7499 da2008ca arg mem_gx ,rega 
+749a d8a00822 arg mem_t2_256 ,contw 
+749b 2040765d call bn_sqrmod 
+749c da200822 arg mem_t2_256 ,rega 
+749d da4008ca arg mem_gx ,regb 
+749e d8a00822 arg mem_t2_256 ,contw 
+749f 2040763b call bn_mulmod 
+74a0 da20089a arg mem_a ,rega 
+74a1 da4008ca arg mem_gx ,regb 
+74a2 d8a00842 arg mem_t3_256 ,contw 
+74a3 2040763b call bn_mulmod 
+74a4 da200842 arg mem_t3_256 ,rega 
+74a5 da400822 arg mem_t2_256 ,regb 
+74a6 d8a00822 arg mem_t2_256 ,contw 
+74a7 2040760a call bn_addmod 
+74a8 da200802 arg mem_t0_256 ,rega 
+74a9 da400822 arg mem_t2_256 ,regb 
+74aa d8a00802 arg mem_t0_256 ,contw 
+74ab 2020760d branch bn_submod 
+
+sp_calculate_commitment:
+74ac 6fe209ae fetch 1 ,mem_sp_calc 
+74ad c08074ca bne sp_calc_standby ,sp_calculate_commitment_wait_dhkey_calc 
+74ae 204074c7 call sp_local_random_key_generator 
+74af d8a00a7a arg mem_sp_prarm_stack ,contw 
+74b0 58000a2a setarg mem_sp_random_local_end 
+74b1 e7e40005 istore 2 ,contw 
+74b2 58004614 setarg mem_sp_pubkey_local_x_end 
+74b3 e7e40005 istore 2 ,contw 
+74b4 580009da setarg mem_sp_pubkey_remote_x_end 
+74b5 e7e40005 istore 2 ,contw 
+74b6 202074be branch sp_calculate_commitment0 
+
+master_sp_calculate_commitment:
+74b7 d8a00a7a arg mem_sp_prarm_stack ,contw 
+74b8 58000a3a setarg mem_sp_random_remote_end 
+74b9 e7e40005 istore 2 ,contw 
+74ba 580009da setarg mem_sp_pubkey_remote_x_end 
+74bb e7e40005 istore 2 ,contw 
+74bc 58004614 setarg mem_sp_pubkey_local_x_end 
+74bd e7e40005 istore 2 ,contw 
+
+sp_calculate_commitment0:
+74be 20407855 call function_f1 
+74bf 6fe209ab fetch 1 ,mem_master_sp_state 
+74c0 c00274c4 beq sp_stat_commit_calc ,master_sp_calculate_commitment0 
+74c1 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+74c2 7009aa05 jam sp_stat_commit_send ,mem_sp_state 
+74c3 20600000 rtn 
+
+master_sp_calculate_commitment0:
+74c4 7009ab14 jam sp_stat_commitment_compare ,mem_master_sp_state 
+74c5 2040743f call sp_master_generate_local_key 
+74c6 2020758d branch master_set_mem_master_sp_flag 
+
+sp_local_random_key_generator:
+74c7 d8a00a1a arg mem_sp_random_local ,contw 
+74c8 18000e08 force 8 ,queue 
+74c9 20207557 branch random_generator 
+
+sp_calculate_commitment_wait_dhkey_calc:
+74ca 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+74cb 20600000 rtn 
+
+sp_confirm_check:
+74cc 47484032 bpatchx patch32_0 ,mem_patch32 
+74cd d8a00723 arg mem_addr_value ,contw 
+74ce 6fec40a0 fetch 6 ,mem_lap 
+74cf e7ec0005 istore 6 ,contw 
+74d0 6fec0040 fetch 6 ,mem_plap 
+74d1 e7ec0005 istore 6 ,contw 
+74d2 6fe64630 fetch 3 ,mem_sp_iocap_remote 
+74d3 e7e60005 istore 3 ,contw 
+74d4 204078c2 call function_f3a 
+74d5 da200a4a arg mem_sp_calc_result_high ,rega 
+74d6 da400a5a arg mem_sp_check_result ,regb 
+74d7 18000e04 force 4 ,queue 
+74d8 2040755c call compare4 
+74d9 2420f4e6 nbranch sp_confirm_check_failed ,true 
+74da 204074dd call sp_confirm_check_success 
+74db 70007d41 jam lmp_dhkey_check ,mem_lmi_opcode2 
+74dc 202066da branch tid_set_reply 
+
+sp_confirm_check_success:
+74dd 6fe209ab fetch 1 ,mem_master_sp_state 
+74de c004f4e3 beq sp_stat_confirm_check ,sp_confirm_check_success_master 
+74df 7009aa0a jam sp_stat_confirm_calc ,mem_sp_state 
+74e0 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+74e1 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+74e2 20600000 rtn 
+
+sp_confirm_check_success_master:
+74e3 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+74e4 7009ab15 jam sp_state_end ,mem_master_sp_state 
+74e5 2020758d branch master_set_mem_master_sp_flag 
+
+sp_confirm_check_failed:
+74e6 6fe209ab fetch 1 ,mem_master_sp_state 
+74e7 c004f4ec beq sp_stat_confirm_check ,sp_confirm_check_failed_master 
+74e8 7009aa00 jam sp_stat_null ,mem_sp_state 
+74e9 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+74ea 70007e05 jam authentication_failure_error ,mem_lmo_reason2 
+74eb 20600000 rtn 
+
+sp_confirm_check_failed_master:
+74ec 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+74ed 7009ab00 jam sp_stat_null ,mem_master_sp_state 
+74ee 20600000 rtn 
+
+sp_confirm_calc:
+74ef 6fe209af fetch 1 ,mem_sp_dh_ready 
+74f0 c000f4f3 beq sp_flag_commit ,sp_confirm_calc_ready 
+74f1 7009ab0a jam sp_stat_confirm_calc ,mem_master_sp_state 
+74f2 2020758d branch master_set_mem_master_sp_flag 
+
+sp_confirm_calc_ready:
+74f3 d8a00723 arg mem_addr_value ,contw 
+74f4 6fec0040 fetch 6 ,mem_plap 
+74f5 e7ec0005 istore 6 ,contw 
+74f6 6fec40a0 fetch 6 ,mem_lap 
+74f7 e7ec0005 istore 6 ,contw 
+74f8 6fe6462d fetch 3 ,mem_sp_iocap_local 
+74f9 e7e60005 istore 3 ,contw 
+74fa 204078d9 call function_f3b 
+74fb 6fe209ab fetch 1 ,mem_master_sp_state 
+74fc c0057500 beq sp_stat_confirm_calc ,sp_confirm_calc_master 
+74fd 7009aa0b jam sp_stat_confirm_send ,mem_sp_state 
+74fe 7009ac01 jam sp_flag_commit ,mem_sp_flag 
+74ff 20600000 rtn 
+
+sp_confirm_calc_master:
+7500 7009ab0b jam sp_stat_confirm_send ,mem_master_sp_state 
+7501 7009ad01 jam sp_flag_commit ,mem_master_sp_flag 
+7502 20600000 rtn 
+
+sp_master_key_prarm_push:
+7503 d8a00a7a arg mem_sp_prarm_stack ,contw 
+7504 6fec0040 fetch 6 ,mem_plap 
+7505 e7ec0005 istore 6 ,contw 
+7506 6fec40a0 fetch 6 ,mem_lap 
+7507 e7ec0005 istore 6 ,contw 
+7508 58000a2a setarg mem_sp_random_local_end 
+7509 e7e40005 istore 2 ,contw 
+750a 58000a3a setarg mem_sp_random_remote_end 
+750b e7e40005 istore 2 ,contw 
+750c 20207517 branch sp_link_key_calc 
+
+sp_link_key_prarm_push:
+750d 7009aa0f jam sp_stat_done ,mem_sp_state 
+750e d8a00a7a arg mem_sp_prarm_stack ,contw 
+750f 6fec40a0 fetch 6 ,mem_lap 
+7510 e7ec0005 istore 6 ,contw 
+7511 6fec0040 fetch 6 ,mem_plap 
+7512 e7ec0005 istore 6 ,contw 
+7513 58000a3a setarg mem_sp_random_remote_end 
+7514 e7e40005 istore 2 ,contw 
+7515 58000a2a setarg mem_sp_random_local_end 
+7516 e7e40005 istore 2 ,contw 
+
+sp_link_key_calc:
+7517 d8a00723 arg mem_addr_value ,contw 
+7518 6fec0a7a fetch 6 ,mem_sp_prarm_stack 
+7519 e7ec0005 istore 6 ,contw 
+751a 6fec0a80 fetch 6 ,mem_sp_prarm_stack + 6 
+751b e7ec0005 istore 6 ,contw 
+751c 2040788c call function_f2 
+751d 7041be01 jam 1 ,mem_link_key_exists 
+751e d8a041bf arg mem_link_key ,contw 
+751f d8c00a4a arg mem_sp_calc_result_high ,contr 
+7520 20407c9a call memcpy16 
+7521 202041c0 branch generate_linkkey_continue 
+
+sp_pubkey_calc:
+7522 4748c032 bpatchx patch32_1 ,mem_patch32 
+7523 6fe24583 fetch 1 ,mem_sp_local_key_invalid 
+7524 c1800000 rtnne sp_key_invalid 
+7525 6fe209ae fetch 1 ,mem_sp_calc 
+7526 c1800000 rtnne sp_calc_standby 
+7527 d8a045e4 arg mem_sp_private_key ,contw 
+7528 18000e0b force 11 ,queue 
+7529 20407557 call random_generator 
+752a 180a7e00 random pdata 
+752b 1fe37e00 rshift pdata ,pdata 
+752c e7e40005 istore 2 ,contw 
+752d d8a006ba arg mem_k ,contw 
+752e d8c045e4 arg mem_sp_private_key ,contr 
+752f 20407c99 call memcpy24 
+7530 d8a005e2 arg mem_ax ,contw 
+7531 d8c008ca arg mem_gx ,contr 
+7532 20407c97 call memcpy48 
+7533 d8a00612 arg mem_az ,contw 
+7534 20407ca0 call bn_zero 
+7535 70061201 jam 1 ,mem_az 
+7536 20407912 call eckp_calc_init 
+7537 7009ae01 jam sp_calc_pubkey ,mem_sp_calc 
+7538 20600000 rtn 
+
+sp_pubkey_generated:
+7539 d8a045fc arg mem_sp_pubkey_local ,contw 
+753a d8c0062a arg mem_bx ,contr 
+753b 20407c97 call memcpy48 
+753c 70458301 jam sp_key_valid ,mem_sp_local_key_invalid 
+753d 7009ae00 jam sp_calc_standby ,mem_sp_calc 
+753e 20600000 rtn 
+
+sp_dhkey_calc:
+753f 47494032 bpatchx patch32_2 ,mem_patch32 
+7540 6fe209b5 fetch 1 ,mem_sp_dhkey_invalid 
+7541 c1800000 rtnne sp_key_invalid 
+7542 6fe209ae fetch 1 ,mem_sp_calc 
+7543 c1800000 rtnne sp_calc_standby 
+7544 d8a006ba arg mem_k ,contw 
+7545 d8c045e4 arg mem_sp_private_key ,contr 
+7546 20407c99 call memcpy24 
+7547 d8a005e2 arg mem_ax ,contw 
+7548 d8c009c2 arg mem_sp_pubkey_remote ,contr 
+7549 20407c97 call memcpy48 
+754a d8a00612 arg mem_az ,contw 
+754b 20407ca0 call bn_zero 
+754c 70061201 jam 1 ,mem_az 
+754d 20407912 call eckp_calc_init 
+754e 7009ae02 jam sp_calc_dhkey ,mem_sp_calc 
+754f 20600000 rtn 
+
+sp_dhkey_generated:
+7550 7009af01 jam sp_flag_commit ,mem_sp_dh_ready 
+7551 d8a00a02 arg mem_sp_dhkey ,contw 
+7552 d8c0062a arg mem_bx ,contr 
+7553 20407c99 call memcpy24 
+7554 7009b501 jam sp_key_valid ,mem_sp_dhkey_invalid 
+7555 7009ae00 jam sp_calc_standby ,mem_sp_calc 
+7556 20600000 rtn 
+
+random_generator:
+7557 18e08fff increase -1 ,queue 
+7558 24610000 nrtn positive 
+7559 180a7e00 random pdata 
+755a e7e40005 istore 2 ,contw 
+755b 20207557 branch random_generator 
+
+compare4:
+755c 18e08fff increase -1 ,queue 
+755d 24217568 nbranch compare4_success ,positive 
+755e efe80011 ifetch 4 ,rega 
+755f 1fe20400 copy pdata ,temp 
+7560 efe80012 ifetch 4 ,regb 
+7561 9842fe00 iflip temp ,pdata 
+7562 2422f566 nbranch compare4_failed ,zero 
+7563 1a20a204 increase 4 ,rega 
+7564 1a40a404 increase 4 ,regb 
+7565 2020755c branch compare4 
+
+compare4_failed:
+7566 7840fc00 disable true 
+7567 20600000 rtn 
+
+compare4_success:
+7568 7820fc00 enable true 
+7569 20600000 rtn 
+
+simple_pairing_sequence:
+756a 4749c032 bpatchx patch32_3 ,mem_patch32 
+756b 6fe209ac fetch 1 ,mem_sp_flag 
+756c 207a0000 rtn blank 
+756d 2040669e call lmo_fifo_check 
+756e 247a0000 nrtn blank 
+756f 7009ac00 jam sp_flag_standby ,mem_sp_flag 
+7570 6fe209aa fetch 1 ,mem_sp_state 
+7571 c001e5df beq sp_stat_key_send ,sp_send_lmp_encapsulated_header 
+7572 c002e5fc beq sp_stat_commit_send ,sp_send_lmp_simple_pairing_comfirm 
+7573 c003e607 beq sp_stat_random_send ,sp_send_lmp_simple_pairing_number 
+7574 c005e61c beq sp_stat_confirm_send ,sp_send_lmp_dhkey_check 
+7575 c001743d beq sp_stat_key_generate ,sp_generate_local_key 
+7576 c00274ac beq sp_stat_commit_calc ,sp_calculate_commitment 
+7577 c004f4cc beq sp_stat_confirm_check ,sp_confirm_check 
+7578 c00574ef beq sp_stat_confirm_calc ,sp_confirm_calc 
+7579 c006750d beq sp_stat_link_key_calc ,sp_link_key_prarm_push 
+757a 20600000 rtn 
+
+master_simple_paring_sequence:
+757b 474a4032 bpatchx patch32_4 ,mem_patch32 
+757c 6fe209ad fetch 1 ,mem_master_sp_flag 
+757d 207a0000 rtn blank 
+757e 2040669e call lmo_fifo_check 
+757f 247a0000 nrtn blank 
+7580 7009ad00 jam sp_flag_standby ,mem_master_sp_flag 
+7581 6fe209ab fetch 1 ,mem_master_sp_state 
+7582 c00965c2 beq sp_master_stat_start_skip ,sp_master_send_io_cap_get 
+7583 c009e5c7 beq sp_master_stat_start_done ,sp_master_send_io_cap_send 
+7584 c001e5cb beq sp_stat_key_send ,sp_master_send_lmp_encapsulated_header 
+7585 c00274b7 beq sp_stat_commit_calc ,master_sp_calculate_commitment 
+7586 c00a65cf beq sp_stat_commitment_compare ,sp_master_commitment_compare 
+7587 c003e5dd beq sp_stat_random_send ,sp_master_send_lmp_simple_pairing_number 
+7588 c00574ef beq sp_stat_confirm_calc ,sp_confirm_calc 
+7589 c005e61b beq sp_stat_confirm_send ,master_sp_send_lmp_dhkey_check 
+758a c004f4cc beq sp_stat_confirm_check ,sp_confirm_check 
+758b c00ae615 beq sp_state_end ,master_sp_sm_end 
+758c 20600000 rtn 
+
+master_set_mem_master_sp_flag:
+758d 7009ad01 jam sp_flag_commit ,mem_master_sp_flag 
+758e 20600000 rtn 
+
+master_clear_mem_master_sp_flag:
+758f 7009ad00 jam sp_flag_standby ,mem_master_sp_flag 
+7590 20600000 rtn 
+
+sp_calc_sequence:
+7591 474ac032 bpatchx patch32_5 ,mem_patch32 
+7592 6fe2462c fetch 1 ,mem_ssp_enable 
+7593 207a0000 rtn blank 
+7594 6fe209ae fetch 1 ,mem_sp_calc 
+7595 207a0000 rtn blank 
+7596 1fe0fe80 increase 0x80 ,pdata 
+7597 67e209ae store 1 ,mem_sp_calc 
+7598 c3838000 rtnbit1 7 
+7599 6fe205df fetch 1 ,mem_ec_loopc 
+759a 203a759c branch sp_calc_sequence_done ,blank 
+759b 2020791d branch eckp_calc 
+
+sp_calc_sequence_done:
+759c 20407788 call ecunmapz 
+759d 6fe209ae fetch 1 ,mem_sp_calc 
+759e c000f539 beq sp_calc_pubkey ,sp_pubkey_generated 
+759f c0017550 beq sp_calc_dhkey ,sp_dhkey_generated 
+75a0 20600000 rtn 
+
+bn_testbit:
+75a1 1fe10e07 and pdata ,7 ,queue 
+75a2 1fe97e00 rshift3 pdata ,pdata 
+75a3 98c08c00 iadd contr ,contr 
+75a4 efe20006 ifetch 1 ,contr 
+75a5 afec0000 qisolate0 pdata 
+75a6 20600000 rtn 
+
+ec_copy:
+75a7 20407c99 call memcpy24 
+75a8 20407c99 call memcpy24 
+75a9 20207c99 branch memcpy24 
+
+bn_eq_zero:
+75aa eff00006 ifetch 8 ,contr 
+75ab 247a0000 nrtn blank 
+75ac eff00006 ifetch 8 ,contr 
+75ad 247a0000 nrtn blank 
+75ae eff00006 ifetch 8 ,contr 
+75af 20600000 rtn 
+
+bn_eq_0:
+75b0 efe80011 ifetch 4 ,rega 
+75b1 98000400 iforce temp 
+75b2 efe80012 ifetch 4 ,regb 
+75b3 98467c00 isub temp ,null 
+75b4 24628000 nrtn zero 
+75b5 1a20a204 increase 4 ,rega 
+75b6 1a40a404 increase 4 ,regb 
+75b7 c20075b0 loop bn_eq_0 
+75b8 20600000 rtn 
+
+bn_bigeq:
+75b9 18007206 force 6 ,loopcnt 
+75ba 1a20a214 increase 20 ,rega 
+75bb 1a40a414 increase 20 ,regb 
+
+bn_bigeq_0:
+75bc efe80012 ifetch 4 ,regb 
+75bd 98000400 iforce temp 
+75be efe80011 ifetch 4 ,rega 
+75bf 98467e00 isub temp ,pdata 
+75c0 24610000 nrtn positive 
+75c1 247a0000 nrtn blank 
+75c2 1a20a3fc increase -4 ,rega 
+75c3 1a40a5fc increase -4 ,regb 
+75c4 c20075bc loop bn_bigeq_0 
+75c5 20600000 rtn 
+
+bn_add:
+75c6 18007206 force 6 ,loopcnt 
+75c7 18002600 force 0 ,regc 
+
+bn_add_0:
+75c8 efe80011 ifetch 4 ,rega 
+75c9 98000400 iforce temp 
+75ca efe80012 ifetch 4 ,regb 
+75cb 9840fe00 iadd temp ,pdata 
+75cc 9a60fe00 iadd regc ,pdata 
+75cd e7e80005 istore 4 ,contw 
+75ce 2feffe20 isolate1 32 ,pdata 
+75cf 7920a600 setflag true ,0 ,regc 
+75d0 1a20a204 increase 4 ,rega 
+75d1 1a40a404 increase 4 ,regb 
+75d2 c20075c8 loop bn_add_0 
+75d3 20600000 rtn 
+
+bn_sub:
+75d4 18007206 force 6 ,loopcnt 
+75d5 18002600 force 0 ,regc 
+
+bn_sub_0:
+75d6 efe80012 ifetch 4 ,regb 
+75d7 98000400 iforce temp 
+75d8 efe80011 ifetch 4 ,rega 
+75d9 98467e00 isub temp ,pdata 
+75da 9a667e00 isub regc ,pdata 
+75db e7e80005 istore 4 ,contw 
+75dc 2feffe20 isolate1 32 ,pdata 
+75dd 7920a600 setflag true ,0 ,regc 
+75de 1a20a204 increase 4 ,rega 
+75df 1a40a404 increase 4 ,regb 
+75e0 c20075d6 loop bn_sub_0 
+75e1 20600000 rtn 
+
+bn_rshift6:
+75e2 18007206 force 6 ,loopcnt 
+75e3 1a20a214 increase 20 ,rega 
+
+bn_rshift:
+75e4 18002600 force 0 ,regc 
+
+bn_rshift_0:
+75e5 efe80011 ifetch 4 ,rega 
+75e6 2feffe00 isolate1 0 ,pdata 
+75e7 7920a601 setflag true ,1 ,regc 
+75e8 1fe37e00 rshift pdata ,pdata 
+75e9 2a6ffe00 isolate1 0 ,regc 
+75ea 7920fe1f setflag true ,31 ,pdata 
+75eb e7e80011 istore 4 ,rega 
+75ec 1a20a3fc increase -4 ,rega 
+75ed 1a632600 rshift regc ,regc 
+75ee c20075e5 loop bn_rshift_0 
+75ef 20600000 rtn 
+
+bn_lshift:
+75f0 18007206 force 6 ,loopcnt 
+75f1 18002600 force 0 ,regc 
+
+bn_lshift_0:
+75f2 efe80011 ifetch 4 ,rega 
+75f3 2feffe1f isolate1 31 ,pdata 
+75f4 7920a601 setflag true ,1 ,regc 
+75f5 1fe3fe00 lshift pdata ,pdata 
+75f6 2a6ffe00 isolate1 0 ,regc 
+75f7 7920fe00 setflag true ,0 ,pdata 
+75f8 e7e80011 istore 4 ,rega 
+75f9 1a20a204 increase 4 ,rega 
+75fa 1a632600 rshift regc ,regc 
+75fb c20075f2 loop bn_lshift_0 
+75fc 20600000 rtn 
+
+bn_lshiftmod:
+75fd 204075f0 call bn_lshift 
+
+bn_lshiftmod_ismod:
+75fe 2a6ffe00 isolate1 0 ,regc 
+75ff 2020f606 branch bn_lshiftmod_0 ,true 
+7600 da400882 arg mem_p ,regb 
+7601 1a222600 copy rega ,regc 
+7602 1a20a3e8 increase -24 ,rega 
+7603 204075b9 call bn_bigeq 
+7604 24610000 nrtn positive 
+7605 1a622200 copy regc ,rega 
+
+bn_lshiftmod_0:
+7606 1a20a3e8 increase -24 ,rega 
+7607 da400882 arg mem_p ,regb 
+7608 1a220a00 copy rega ,contw 
+7609 202075d4 branch bn_sub 
+
+bn_addmod:
+760a 204075c6 call bn_add 
+760b 18a22200 copy contw ,rega 
+760c 202075fe branch bn_lshiftmod_ismod 
+
+bn_submod:
+760d 204075d4 call bn_sub 
+760e 2a6c0000 isolate0 0 ,regc 
+760f 20608000 rtn true 
+7610 da400882 arg mem_p ,regb 
+7611 18a0a3e8 add contw ,-24 ,rega 
+7612 1a220a00 copy rega ,contw 
+7613 202075c6 branch bn_add 
+
+bn_p192mod:
+7614 18a21600 copy contw ,timeup 
+7615 1a226000 copy rega ,alarm 
+7616 da400712 arg mem_tmp2 ,regb 
+7617 1a420a00 copy regb ,contw 
+7618 1a208c18 add rega ,24 ,contr 
+7619 eff00006 ifetch 8 ,contr 
+761a e7f00005 istore 8 ,contw 
+761b e7f00005 istore 8 ,contw 
+761c 18007e00 force 0 ,pdata 
+761d e7f00005 istore 8 ,contw 
+761e 19620a00 copy timeup ,contw 
+761f 2040760a call bn_addmod 
+7620 da400712 arg mem_tmp2 ,regb 
+7621 1a420a00 copy regb ,contw 
+7622 18007e00 force 0 ,pdata 
+7623 e7f00005 istore 8 ,contw 
+7624 1e008c20 add alarm ,32 ,contr 
+7625 eff00006 ifetch 8 ,contr 
+7626 e7f00005 istore 8 ,contw 
+7627 e7f00005 istore 8 ,contw 
+7628 19622200 copy timeup ,rega 
+7629 1a220a00 copy rega ,contw 
+762a 2040760a call bn_addmod 
+762b da400712 arg mem_tmp2 ,regb 
+762c 1a420a00 copy regb ,contw 
+762d 1e008c28 add alarm ,40 ,contr 
+762e eff00006 ifetch 8 ,contr 
+762f e7f00005 istore 8 ,contw 
+7630 e7f00005 istore 8 ,contw 
+7631 e7f00005 istore 8 ,contw 
+7632 19622200 copy timeup ,rega 
+7633 1a220a00 copy rega ,contw 
+7634 2020760a branch bn_addmod 
+
+bn_load:
+7635 18007206 force 6 ,loopcnt 
+
+bn_load_0:
+7636 efe80006 ifetch 4 ,contr 
+7637 98005e00 iforce regext 
+7638 1f00f001 increase 1 ,regext_index 
+7639 c2007636 loop bn_load_0 
+763a 20600000 rtn 
+
+bn_mulmod:
+763b 18a21600 copy contw ,timeup 
+763c d8a006e2 arg mem_tmp1 ,contw 
+763d 20407ca0 call bn_zero 
+763e d8a006e2 arg mem_tmp1 ,contw 
+763f 1a220c00 copy rega ,contr 
+7640 18007000 force 0 ,regext_index 
+7641 20407635 call bn_load 
+7642 1a420c00 copy regb ,contr 
+7643 20407635 call bn_load 
+7644 18002400 force 0 ,regb 
+
+bn_mulmod_1:
+7645 18000400 force 0 ,temp 
+7646 18002606 force 6 ,regc 
+
+bn_mulmod_0:
+7647 efe80005 ifetch 4 ,contw 
+7648 98002200 iforce rega 
+7649 1a427000 copy regb ,regext_index 
+764a 1de27e00 deposit regext 
+764b 1a627000 copy regc ,regext_index 
+764c 9deffe00 imul32 regext ,pdata 
+764d 9a20fe00 iadd rega ,pdata 
+764e 9840fe00 iadd temp ,pdata 
+764f e7e80005 istore 4 ,contw 
+7650 1fef0400 rshift32 pdata ,temp 
+7651 1a60a601 increase 1 ,regc 
+7652 2a61fe0c compare 12 ,regc ,0xff 
+7653 2420f647 nbranch bn_mulmod_0 ,true 
+7654 18427e00 deposit temp 
+7655 e7e80005 istore 4 ,contw 
+7656 18a08be8 increase -24 ,contw 
+7657 1a40a401 increase 1 ,regb 
+7658 2a41fe06 compare 6 ,regb ,0xff 
+7659 2420f645 nbranch bn_mulmod_1 ,true 
+765a da2006e2 arg mem_tmp1 ,rega 
+765b 19620a00 copy timeup ,contw 
+765c 20207614 branch bn_p192mod 
+
+bn_sqrmod:
+765d 1a222400 copy rega ,regb 
+765e 2020763b branch bn_mulmod 
+
+bn_rshifteven:
+765f 1a226000 copy rega ,alarm 
+
+bn_rshifteven_1:
+7660 1e022200 copy alarm ,rega 
+7661 efe20011 ifetch 1 ,rega 
+7662 2feffe00 isolate1 0 ,pdata 
+7663 20608000 rtn true 
+7664 204075e2 call bn_rshift6 
+7665 efe20012 ifetch 1 ,regb 
+7666 2fec0000 isolate0 0 ,pdata 
+7667 2020f66f branch bn_rshifteven_0 ,true 
+7668 da200882 arg mem_p ,rega 
+7669 1a420a00 copy regb ,contw 
+766a 204075c6 call bn_add 
+766b efe20012 ifetch 1 ,regb 
+766c 9a60fe00 iadd regc ,pdata 
+766d e7e20012 istore 1 ,regb 
+766e 1a40a5e8 increase -24 ,regb 
+
+bn_rshifteven_0:
+766f 1a40a218 add regb ,24 ,rega 
+7670 18007207 force 7 ,loopcnt 
+7671 204075e4 call bn_rshift 
+7672 20207660 branch bn_rshifteven_1 
+
+bn_invmod:
+7673 18a21600 copy contw ,timeup 
+7674 d8a00742 arg mem_tmp0 ,contw 
+7675 20407ca0 call bn_zero 
+7676 18007e00 force 0 ,pdata 
+7677 67e806fa store 4 ,mem_tmp5 
+7678 67e8075a store 4 ,mem_t2 
+7679 70074201 jam 1 ,mem_tmp0 
+767a d8a006e2 arg mem_tmp1 ,contw 
+767b 20407ca0 call bn_zero 
+767c d8c00882 arg mem_p ,contr 
+767d d8a00712 arg mem_tmp2 ,contw 
+767e 20407c99 call memcpy24 
+767f 1a220c00 copy rega ,contr 
+7680 d8a0072a arg mem_tmp3 ,contw 
+7681 20407c99 call memcpy24 
+
+bn_invmod_2:
+7682 d8c0072a arg mem_tmp3 ,contr 
+7683 204075aa call bn_eq_zero 
+7684 203a76ab branch bn_invmod_0 ,blank 
+7685 da20072a arg mem_tmp3 ,rega 
+7686 da400742 arg mem_tmp0 ,regb 
+7687 2040765f call bn_rshifteven 
+7688 da200712 arg mem_tmp2 ,rega 
+7689 da4006e2 arg mem_tmp1 ,regb 
+768a 2040765f call bn_rshifteven 
+768b da20072a arg mem_tmp3 ,rega 
+768c da400712 arg mem_tmp2 ,regb 
+768d 204075b9 call bn_bigeq 
+768e 2021769d branch bn_invmod_1 ,positive 
+768f da200712 arg mem_tmp2 ,rega 
+7690 da40072a arg mem_tmp3 ,regb 
+7691 1a220a00 copy rega ,contw 
+7692 204075d4 call bn_sub 
+7693 da200742 arg mem_tmp0 ,rega 
+7694 da4006e2 arg mem_tmp1 ,regb 
+7695 1a420a00 copy regb ,contw 
+7696 204075c6 call bn_add 
+7697 efe20011 ifetch 1 ,rega 
+7698 9a60a600 iadd regc ,regc 
+7699 efe20012 ifetch 1 ,regb 
+769a 9a60fe00 iadd regc ,pdata 
+769b e7e20012 istore 1 ,regb 
+769c 20207682 branch bn_invmod_2 
+
+bn_invmod_1:
+769d da20072a arg mem_tmp3 ,rega 
+769e da400712 arg mem_tmp2 ,regb 
+769f 1a220a00 copy rega ,contw 
+76a0 204075d4 call bn_sub 
+76a1 da2006e2 arg mem_tmp1 ,rega 
+76a2 da400742 arg mem_tmp0 ,regb 
+76a3 1a420a00 copy regb ,contw 
+76a4 204075c6 call bn_add 
+76a5 efe20011 ifetch 1 ,rega 
+76a6 9a60a600 iadd regc ,regc 
+76a7 efe20012 ifetch 1 ,regb 
+76a8 9a60fe00 iadd regc ,pdata 
+76a9 e7e20012 istore 1 ,regb 
+76aa 20207682 branch bn_invmod_2 
+
+bn_invmod_0:
+76ab d8a00742 arg mem_tmp0 ,contw 
+76ac 20407ca0 call bn_zero 
+76ad 6fe206fa fetch 1 ,mem_tmp5 
+76ae 67e20742 store 1 ,mem_tmp0 
+76af 67e2074a store 1 ,mem_tmp0a 
+76b0 da200742 arg mem_tmp0 ,rega 
+76b1 da4006e2 arg mem_tmp1 ,regb 
+76b2 1a420a00 copy regb ,contw 
+76b3 2040760a call bn_addmod 
+76b4 da200882 arg mem_p ,rega 
+76b5 da4006e2 arg mem_tmp1 ,regb 
+76b6 19620a00 copy timeup ,contw 
+76b7 2020760d branch bn_submod 
+
+ecdbl:
+76b8 da2006a2 arg mem_cz ,rega 
+76b9 d8a0075a arg mem_t2 ,contw 
+76ba 2040765d call bn_sqrmod 
+76bb da20075a arg mem_t2 ,rega 
+76bc d8a00772 arg mem_t3 ,contw 
+76bd 2040765d call bn_sqrmod 
+76be da20089a arg mem_a ,rega 
+76bf da400772 arg mem_t3 ,regb 
+76c0 d8a00772 arg mem_t3 ,contw 
+76c1 2040763b call bn_mulmod 
+76c2 da200672 arg mem_cx ,rega 
+76c3 d8a0075a arg mem_t2 ,contw 
+76c4 2040765d call bn_sqrmod 
+76c5 d8c0075a arg mem_t2 ,contr 
+76c6 d8a0072a arg mem_t1 ,contw 
+76c7 20407c99 call memcpy24 
+76c8 da20072a arg mem_t1 ,rega 
+76c9 204075fd call bn_lshiftmod 
+76ca da20075a arg mem_t2 ,rega 
+76cb da40072a arg mem_t1 ,regb 
+76cc d8a0075a arg mem_t2 ,contw 
+76cd 2040760a call bn_addmod 
+76ce da20075a arg mem_t2 ,rega 
+76cf da400772 arg mem_t3 ,regb 
+76d0 d8a0075a arg mem_t2 ,contw 
+76d1 2040760a call bn_addmod 
+76d2 d8c00672 arg mem_cx ,contr 
+76d3 d8a0072a arg mem_t1 ,contw 
+76d4 20407c99 call memcpy24 
+76d5 da20068a arg mem_cy ,rega 
+76d6 d8a00772 arg mem_t3 ,contw 
+76d7 2040765d call bn_sqrmod 
+76d8 da20072a arg mem_t1 ,rega 
+76d9 204075fd call bn_lshiftmod 
+76da da20072a arg mem_t1 ,rega 
+76db 204075fd call bn_lshiftmod 
+76dc da20072a arg mem_t1 ,rega 
+76dd da400772 arg mem_t3 ,regb 
+76de d8a0072a arg mem_t1 ,contw 
+76df 2040763b call bn_mulmod 
+76e0 da200772 arg mem_t3 ,rega 
+76e1 d8a00742 arg mem_t0 ,contw 
+76e2 2040765d call bn_sqrmod 
+76e3 da200742 arg mem_t0 ,rega 
+76e4 204075fd call bn_lshiftmod 
+76e5 da200742 arg mem_t0 ,rega 
+76e6 204075fd call bn_lshiftmod 
+76e7 da200742 arg mem_t0 ,rega 
+76e8 204075fd call bn_lshiftmod 
+76e9 d8c0068a arg mem_cy ,contr 
+76ea d8a00772 arg mem_t3 ,contw 
+76eb 20407c99 call memcpy24 
+76ec da200772 arg mem_t3 ,rega 
+76ed 204075fd call bn_lshiftmod 
+76ee da200772 arg mem_t3 ,rega 
+76ef da4006a2 arg mem_cz ,regb 
+76f0 d8a006a2 arg mem_cz ,contw 
+76f1 2040763b call bn_mulmod 
+76f2 da20075a arg mem_t2 ,rega 
+76f3 d8a00772 arg mem_t3 ,contw 
+76f4 2040765d call bn_sqrmod 
+76f5 da200772 arg mem_t3 ,rega 
+76f6 da40072a arg mem_t1 ,regb 
+76f7 d8a00772 arg mem_t3 ,contw 
+76f8 2040760d call bn_submod 
+76f9 da200772 arg mem_t3 ,rega 
+76fa da40072a arg mem_t1 ,regb 
+76fb d8a00672 arg mem_cx ,contw 
+76fc 2040760d call bn_submod 
+76fd da20072a arg mem_t1 ,rega 
+76fe da400672 arg mem_cx ,regb 
+76ff d8a00772 arg mem_t3 ,contw 
+7700 2040760d call bn_submod 
+7701 da200772 arg mem_t3 ,rega 
+7702 da40075a arg mem_t2 ,regb 
+7703 d8a00772 arg mem_t3 ,contw 
+7704 2040763b call bn_mulmod 
+7705 da200772 arg mem_t3 ,rega 
+7706 da400742 arg mem_t0 ,regb 
+7707 d8a0068a arg mem_cy ,contw 
+7708 2020760d branch bn_submod 
+
+ecadd:
+7709 da200612 arg mem_az ,rega 
+770a d8a0078a arg mem_t7 ,contw 
+770b 2040765d call bn_sqrmod 
+770c da200672 arg mem_cx ,rega 
+770d da40078a arg mem_t7 ,regb 
+770e d8a00742 arg mem_t0 ,contw 
+770f 2040763b call bn_mulmod 
+7710 da200612 arg mem_az ,rega 
+7711 da40078a arg mem_t7 ,regb 
+7712 d8a0078a arg mem_t7 ,contw 
+7713 2040763b call bn_mulmod 
+7714 da20068a arg mem_cy ,rega 
+7715 da40078a arg mem_t7 ,regb 
+7716 d8a0072a arg mem_t1 ,contw 
+7717 2040763b call bn_mulmod 
+7718 da2006a2 arg mem_cz ,rega 
+7719 d8a0078a arg mem_t7 ,contw 
+771a 2040765d call bn_sqrmod 
+771b da2005e2 arg mem_ax ,rega 
+771c da40078a arg mem_t7 ,regb 
+771d d8a0075a arg mem_t2 ,contw 
+771e 2040763b call bn_mulmod 
+771f da2006a2 arg mem_cz ,rega 
+7720 da40078a arg mem_t7 ,regb 
+7721 d8a0078a arg mem_t7 ,contw 
+7722 2040763b call bn_mulmod 
+7723 da2005fa arg mem_ay ,rega 
+7724 da40078a arg mem_t7 ,regb 
+7725 d8a00772 arg mem_t3 ,contw 
+7726 2040763b call bn_mulmod 
+7727 da200742 arg mem_t0 ,rega 
+7728 da40075a arg mem_t2 ,regb 
+7729 d8a0078a arg mem_t7 ,contw 
+772a 2040760d call bn_submod 
+772b da200742 arg mem_t0 ,rega 
+772c da40075a arg mem_t2 ,regb 
+772d d8a00742 arg mem_t0 ,contw 
+772e 2040760a call bn_addmod 
+772f da20072a arg mem_t1 ,rega 
+7730 da400772 arg mem_t3 ,regb 
+7731 d8a0075a arg mem_t2 ,contw 
+7732 2040760d call bn_submod 
+7733 da20072a arg mem_t1 ,rega 
+7734 da400772 arg mem_t3 ,regb 
+7735 d8a0072a arg mem_t1 ,contw 
+7736 2040760a call bn_addmod 
+7737 da20072a arg mem_t1 ,rega 
+7738 da40078a arg mem_t7 ,regb 
+7739 d8a0072a arg mem_t1 ,contw 
+773a 2040763b call bn_mulmod 
+773b da2006a2 arg mem_cz ,rega 
+773c da400612 arg mem_az ,regb 
+773d d8a00772 arg mem_t3 ,contw 
+773e 2040763b call bn_mulmod 
+773f da200772 arg mem_t3 ,rega 
+7740 da40078a arg mem_t7 ,regb 
+7741 d8a006a2 arg mem_cz ,contw 
+7742 2040763b call bn_mulmod 
+7743 da20078a arg mem_t7 ,rega 
+7744 d8a0078a arg mem_t7 ,contw 
+7745 2040765d call bn_sqrmod 
+7746 da20078a arg mem_t7 ,rega 
+7747 da400742 arg mem_t0 ,regb 
+7748 d8a00772 arg mem_t3 ,contw 
+7749 2040763b call bn_mulmod 
+774a da20078a arg mem_t7 ,rega 
+774b da40072a arg mem_t1 ,regb 
+774c d8a0072a arg mem_t1 ,contw 
+774d 2040763b call bn_mulmod 
+774e da20075a arg mem_t2 ,rega 
+774f d8a00672 arg mem_cx ,contw 
+7750 2040765d call bn_sqrmod 
+7751 da200672 arg mem_cx ,rega 
+7752 da400772 arg mem_t3 ,regb 
+7753 d8a00672 arg mem_cx ,contw 
+7754 2040760d call bn_submod 
+7755 d8c00672 arg mem_cx ,contr 
+7756 d8a0078a arg mem_t7 ,contw 
+7757 20407c99 call memcpy24 
+7758 da20078a arg mem_t7 ,rega 
+7759 204075fd call bn_lshiftmod 
+775a da200772 arg mem_t3 ,rega 
+775b da40078a arg mem_t7 ,regb 
+775c d8a00772 arg mem_t3 ,contw 
+775d 2040760d call bn_submod 
+775e da200772 arg mem_t3 ,rega 
+775f da40075a arg mem_t2 ,regb 
+7760 d8a0075a arg mem_t2 ,contw 
+7761 2040763b call bn_mulmod 
+7762 da20075a arg mem_t2 ,rega 
+7763 da40072a arg mem_t1 ,regb 
+7764 d8a0068a arg mem_cy ,contw 
+7765 2040760d call bn_submod 
+7766 da20068a arg mem_cy ,rega 
+7767 da400882 arg mem_p ,regb 
+7768 d8a0068a arg mem_cy ,contw 
+7769 18002600 force 0 ,regc 
+776a 6fe2068a fetch 1 ,mem_cy 
+776b 2feffe00 isolate1 0 ,pdata 
+776c 2040f5c6 call bn_add ,true 
+776d 1a626000 copy regc ,alarm 
+776e da20068a arg mem_cy ,rega 
+776f 204075e2 call bn_rshift6 
+7770 6fe206a1 fetch 1 ,mem_cy5 
+7771 2e0ffe00 isolate1 0 ,alarm 
+7772 7920fe07 setflag true ,7 ,pdata 
+7773 67e206a1 store 1 ,mem_cy5 
+7774 20600000 rtn 
+
+eckp_0:
+7775 6fe205df fetch 1 ,mem_ec_loopc 
+7776 1fe0ffff increase -1 ,pdata 
+7777 24610000 nrtn positive 
+7778 67e205df store 1 ,mem_ec_loopc 
+7779 6fe205de fetch 1 ,mem_ec_infinite 
+777a 205a76b8 call ecdbl ,blank 
+777b 6fe205df fetch 1 ,mem_ec_loopc 
+777c d8c006ba arg mem_k ,contr 
+777d 204075a1 call bn_testbit 
+777e 2020f775 branch eckp_0 ,true 
+777f 6fe205de fetch 1 ,mem_ec_infinite 
+7780 243a7783 nbranch eckp_1 ,blank 
+7781 20407709 call ecadd 
+7782 20207775 branch eckp_0 
+
+eckp_1:
+7783 7005de00 jam 0 ,mem_ec_infinite 
+7784 d8c005e2 arg mem_ax ,contr 
+7785 d8a00672 arg mem_cx ,contw 
+7786 204075a7 call ec_copy 
+7787 20207775 branch eckp_0 
+
+ecunmapz:
+7788 da2006a2 arg mem_cz ,rega 
+7789 d8a00772 arg mem_t3 ,contw 
+778a 20407673 call bn_invmod 
+778b da200772 arg mem_t3 ,rega 
+778c d8a0072a arg mem_t1 ,contw 
+778d 2040765d call bn_sqrmod 
+778e da200672 arg mem_cx ,rega 
+778f da40072a arg mem_t1 ,regb 
+7790 d8a0062a arg mem_bx ,contw 
+7791 2040763b call bn_mulmod 
+7792 da200772 arg mem_t3 ,rega 
+7793 da40072a arg mem_t1 ,regb 
+7794 d8a0075a arg mem_t2 ,contw 
+7795 2040763b call bn_mulmod 
+7796 da20068a arg mem_cy ,rega 
+7797 da40075a arg mem_t2 ,regb 
+7798 d8a00642 arg mem_by ,contw 
+7799 2020763b branch bn_mulmod 
+
+sha_endian_swap2:
+779a efe80006 ifetch 4 ,contr 
+779b 18002204 force 4 ,rega 
+779c 18a08a03 increase 3 ,contw 
+
+sha_endian_loop:
+779d e7e20005 istore 1 ,contw 
+779e 1fecfe00 rshift8 pdata ,pdata 
+779f 18a08bfe increase -2 ,contw 
+77a0 1a20a3ff increase -1 ,rega 
+77a1 2422f79d nbranch sha_endian_loop ,zero 
+77a2 18a08a05 increase 5 ,contw 
+77a3 c200779a loop sha_endian_swap2 
+77a4 20600000 rtn 
+
+sha_getw:
+77a5 18ebfe00 lshift2 queue ,pdata 
+77a6 99608c00 iadd timeup ,contr 
+77a7 efe80006 ifetch 4 ,contr 
+77a8 20600000 rtn 
+
+sha_r:
+77a9 18006010 force 16 ,alarm 
+77aa d96005e2 arg memdat ,timeup 
+
+sha_r_loop:
+77ab 1e008ff9 add alarm ,-7 ,queue 
+77ac 204077a5 call sha_getw 
+77ad 98000400 iforce temp 
+77ae 1e008ff0 add alarm ,-16 ,queue 
+77af 204077a5 call sha_getw 
+77b0 98408400 iadd temp ,temp 
+77b1 1e008ffe add alarm ,-2 ,queue 
+77b2 204077a5 call sha_getw 
+77b3 1fee7e01 shasx pdata ,1 ,pdata 
+77b4 98408400 iadd temp ,temp 
+77b5 1e008ff1 add alarm ,-15 ,queue 
+77b6 204077a5 call sha_getw 
+77b7 1fee7e00 shasx pdata ,0 ,pdata 
+77b8 98408400 iadd temp ,temp 
+77b9 1e0bfe00 lshift2 alarm ,pdata 
+77ba 99608a00 iadd timeup ,contw 
+77bb e0480005 istoret 4 ,contw 
+77bc 1e00e001 increase 1 ,alarm 
+77bd 2e01fe40 compare 64 ,alarm ,0xff 
+77be 2420f7ab nbranch sha_r_loop ,true 
+77bf 20600000 rtn 
+
+sha_init:
+77c0 d8c008fa arg memh0 ,contr 
+77c1 18007007 force 7 ,regext_index 
+
+sha_init_0:
+77c2 efe80006 ifetch 4 ,contr 
+77c3 98005e00 iforce regext 
+77c4 1f00f1ff increase -1 ,regext_index 
+77c5 202177c2 branch sha_init_0 ,positive 
+77c6 20600000 rtn 
+
+sha:
+77c7 474b4032 bpatchx patch32_6 ,mem_patch32 
+77c8 204077a9 call sha_r 
+77c9 d8a006e2 arg memahbak ,contw 
+77ca 18007000 force 0 ,regext_index 
+
+sha_0:
+77cb 1de27e00 deposit regext 
+77cc e7e80005 istore 4 ,contw 
+77cd 1f00f001 increase 1 ,regext_index 
+77ce 2f01fe08 compare 8 ,regext_index ,0xff 
+77cf 2420f7cb nbranch sha_0 ,true 
+77d0 2040736e call enable_authrom 
+77d1 d9608700 arg memk ,timeup 
+77d2 de0005e2 arg memdat ,alarm 
+77d3 18007240 force 64 ,loopcnt 
+
+sha_loop:
+77d4 e8480030 ifetcht 4 ,alarm 
+77d5 efe8000b ifetch 4 ,timeup 
+77d6 19609604 increase 4 ,timeup 
+77d7 1e00e004 increase 4 ,alarm 
+77d8 9840fe00 iadd temp ,pdata 
+77d9 18007007 force 7 ,regext_index 
+77da 9de08400 iadd regext ,temp 
+77db 18007004 force 4 ,regext_index 
+77dc 1dee7e03 shasx regext ,3 ,pdata 
+77dd 98408400 iadd temp ,temp 
+77de 18007005 force 5 ,regext_index 
+77df 1de27e00 deposit regext 
+77e0 18007006 force 6 ,regext_index 
+77e1 9de2fe00 ixor regext ,pdata 
+77e2 18007004 force 4 ,regext_index 
+77e3 9de17e00 iand regext ,pdata 
+77e4 18007006 force 6 ,regext_index 
+77e5 9de2fe00 ixor regext ,pdata 
+77e6 98408400 iadd temp ,temp 
+77e7 18007007 force 7 ,regext_index 
+77e8 18425e00 copy temp ,regext 
+77e9 18007003 force 3 ,regext_index 
+77ea 1de27e00 deposit regext 
+77eb 9840de00 iadd temp ,regext 
+77ec 18007000 force 0 ,regext_index 
+77ed 1de27e00 deposit regext 
+77ee 18007001 force 1 ,regext_index 
+77ef 9de10400 iand regext ,temp 
+77f0 9de1fe00 ior regext ,pdata 
+77f1 18007002 force 2 ,regext_index 
+77f2 9de17e00 iand regext ,pdata 
+77f3 98418400 ior temp ,temp 
+77f4 18007000 force 0 ,regext_index 
+77f5 1dee7e02 shasx regext ,2 ,pdata 
+77f6 9840fe00 iadd temp ,pdata 
+77f7 18007007 force 7 ,regext_index 
+77f8 9de0de00 iadd regext ,regext 
+77f9 980efc00 regexrot 
+77fa c20077d4 loop sha_loop 
+77fb d8c006e2 arg memahbak ,contr 
+77fc 18007000 force 0 ,regext_index 
+
+sha_1:
+77fd efe80006 ifetch 4 ,contr 
+77fe 9de0de00 iadd regext ,regext 
+77ff 1f00f001 increase 1 ,regext_index 
+7800 2f01fe08 compare 8 ,regext_index ,0xff 
+7801 2420f7fd nbranch sha_1 ,true 
+7802 20207372 branch disable_authrom 
+
+sha_result:
+7803 d8a00a3a arg memresult ,contw 
+7804 18007007 force 7 ,regext_index 
+
+sha_regext_save:
+7805 1de27e00 deposit regext 
+7806 e7e80005 istore 4 ,contw 
+7807 1f00f1ff increase -1 ,regext_index 
+7808 20217805 branch sha_regext_save ,positive 
+7809 20600000 rtn 
+
+pad_xor:
+780a d8a005e2 arg memdat ,contw 
+780b 18c08dfc increase -4 ,contr 
+780c 1f262210 sub loopcnt ,16 ,rega 
+
+pad_xor_0:
+780d efe80006 ifetch 4 ,contr 
+780e 9842fe00 ixor temp ,pdata 
+780f e7e80005 istore 4 ,contw 
+7810 18c08df8 increase -8 ,contr 
+7811 c200780d loop pad_xor_0 
+7812 1a227200 copy rega ,loopcnt 
+7813 18427e00 deposit temp 
+
+pad_xor_1:
+7814 e7e80005 istore 4 ,contw 
+7815 c2007814 loop pad_xor_1 
+7816 20600000 rtn 
+
+g_noninit_number_confirm:
+7817 2040781c call g_noninit0 
+7818 20407803 call sha_result 
+7819 20207842 branch g_common0 
+
+g_noninit:
+781a 2040781c call g_noninit0 
+781b 20207842 branch g_common0 
+
+g_noninit0:
+781c d8c009da arg mem_sp_pubkey_remote_x_end ,contr 
+781d d8a005e2 arg memdat ,contw 
+781e 18007206 force 6 ,loopcnt 
+781f 20407926 call memcpy_dword_swap 
+7820 d8c04614 arg mem_sp_pubkey_local_x_end ,contr 
+7821 18007206 force 6 ,loopcnt 
+7822 20407926 call memcpy_dword_swap 
+7823 d8c00a3a arg mem_sp_random_remote_end ,contr 
+7824 20407925 call memcpy_dword_swap4 
+7825 204077c0 call sha_init 
+7826 204077c7 call sha 
+7827 d8c00a2a arg mem_sp_random_local_end ,contr 
+7828 d8a005e2 arg memdat ,contw 
+7829 20207839 branch g_common 
+
+g_init:
+782a d8c04614 arg mem_sp_pubkey_local_x_end ,contr 
+782b d8a005e2 arg memdat ,contw 
+782c 18007206 force 6 ,loopcnt 
+782d 20407926 call memcpy_dword_swap 
+782e d8c009da arg mem_sp_pubkey_remote_x_end ,contr 
+782f 18007206 force 6 ,loopcnt 
+7830 20407926 call memcpy_dword_swap 
+7831 d8c00a2a arg mem_sp_random_local_end ,contr 
+7832 20407925 call memcpy_dword_swap4 
+7833 204077c0 call sha_init 
+7834 204077c7 call sha 
+7835 d8c00a3a arg mem_sp_random_remote_end ,contr 
+7836 d8a005e2 arg memdat ,contw 
+7837 20407839 call g_common 
+7838 20207842 branch g_common0 
+
+g_common:
+7839 20407925 call memcpy_dword_swap4 
+783a 58800000 setarg 0x800000 
+783b 1fed7e00 lshift8 pdata ,pdata 
+783c e7e80005 istore 4 ,contw 
+783d 18007205 force 5 ,loopcnt 
+783e 20407ca1 call memset0 
+783f 58000280 setarg 640 
+7840 e7e80005 istore 4 ,contw 
+7841 202077c7 branch sha 
+
+g_common0:
+7842 6fe80a3a fetch 4 ,memresult 
+7843 da2003e8 arg 1000 ,rega 
+7844 9a26fc00 idiv rega 
+7845 20407d61 call wait_div_end 
+7846 18077e00 remainder pdata 
+7847 67e809b6 store 4 ,mem_gkey 
+7848 1807fe00 quotient pdata 
+7849 da2003e8 arg 1000 ,rega 
+784a 9a26fc00 idiv rega 
+784b 20407d61 call wait_div_end 
+784c 18077e00 remainder pdata 
+784d da2003e8 arg 1000 ,rega 
+784e 9a2ffe00 imul32 rega ,pdata 
+784f 684809b6 fetcht 4 ,mem_gkey 
+7850 9840fe00 iadd temp ,pdata 
+7851 67e809b6 store 4 ,mem_gkey 
+7852 20600000 rtn 
+
+function_f1_no_key:
+7853 70463600 jam 0 ,mem_passkey_1bit 
+7854 20207857 branch function_f1_common 
+
+function_f1:
+7855 6fe24634 fetch 1 ,mem_ssp_mode_flag 
+7856 c0817853 bne ssp_mode_passkey_entry_flag ,function_f1_no_key 
+
+function_f1_common:
+7857 474bc032 bpatchx patch32_7 ,mem_patch32 
+7858 58363636 setarg 0x363636 
+7859 1fed0400 lshift8 pdata ,temp 
+785a 18418436 or_into 0x36 ,temp 
+785b 6fe40a7a fetch 2 ,mem_sp_prarm_stack 
+785c 1fe20c00 copy pdata ,contr 
+785d 18007204 force 4 ,loopcnt 
+785e 2040780a call pad_xor 
+785f 204077c0 call sha_init 
+7860 204077c7 call sha 
+7861 6fe40a7c fetch 2 ,mem_sp_prarm_stack + 2 
+7862 1fe20c00 copy pdata ,contr 
+7863 d8a005e2 arg memdat ,contw 
+7864 18007206 force 6 ,loopcnt 
+7865 20407926 call memcpy_dword_swap 
+7866 6fe40a7e fetch 2 ,mem_sp_prarm_stack + 4 
+7867 1fe20c00 copy pdata ,contr 
+7868 18007206 force 6 ,loopcnt 
+7869 20407926 call memcpy_dword_swap 
+786a 58800000 setarg 0x800000 
+786b e7e60005 istore 3 ,contw 
+786c 6fe24636 fetch 1 ,mem_passkey_1bit 
+786d e7e20005 istore 1 ,contw 
+786e 18007e00 force 0 ,pdata 
+786f e7f00005 istore 8 ,contw 
+7870 58000388 setarg 0x0388 
+7871 e7e80005 istore 4 ,contw 
+7872 204077c7 call sha 
+7873 20407803 call sha_result 
+7874 d8c00a3a arg memresult ,contr 
+7875 d8a00702 arg memahsave ,contw 
+7876 20407c98 call memcpy32 
+7877 585c5c5c setarg 0x5c5c5c 
+7878 1fed0400 lshift8 pdata ,temp 
+7879 1841845c or_into 0x5c ,temp 
+787a 6fe40a7a fetch 2 ,mem_sp_prarm_stack 
+787b 1fe20c00 copy pdata ,contr 
+787c 18007204 force 4 ,loopcnt 
+787d 2040780a call pad_xor 
+787e 204077c0 call sha_init 
+787f 204077c7 call sha 
+7880 d8c00722 arg memahsave_end ,contr 
+7881 d8a005e2 arg memdat ,contw 
+7882 18007208 force 8 ,loopcnt 
+7883 20407926 call memcpy_dword_swap 
+7884 58800000 setarg 0x800000 
+7885 1fed7e00 lshift8 pdata ,pdata 
+7886 e7e80005 istore 4 ,contw 
+7887 20407ca0 call bn_zero 
+7888 58000300 setarg 0x0300 
+7889 e7e80005 istore 4 ,contw 
+788a 204077c7 call sha 
+788b 20207803 branch sha_result 
+
+function_f2:
+788c 58363636 setarg 0x363636 
+788d 1fed0400 lshift8 pdata ,temp 
+788e 18418436 or_into 0x36 ,temp 
+788f d8c00a1a arg mem_sp_dhkey_end ,contr 
+7890 18007206 force 6 ,loopcnt 
+7891 2040780a call pad_xor 
+7892 204077c0 call sha_init 
+7893 204077c7 call sha 
+7894 6fe40a86 fetch 2 ,mem_sp_prarm_stack + 12 
+7895 1fe20c00 copy pdata ,contr 
+7896 d8a005e2 arg memdat ,contw 
+7897 20407925 call memcpy_dword_swap4 
+7898 6fe40a88 fetch 2 ,mem_sp_prarm_stack + 14 
+7899 1fe20c00 copy pdata ,contr 
+789a 20407925 call memcpy_dword_swap4 
+789b 5862746c setarg 0x62746c 
+789c 1fed7e00 lshift8 pdata ,pdata 
+789d 1fe1fe6b or_into 0x6b ,pdata 
+789e e7e80005 istore 4 ,contw 
+789f d8c0072f arg mem_addr_value_end ,contr 
+78a0 18007203 force 3 ,loopcnt 
+78a1 20407926 call memcpy_dword_swap 
+78a2 58800000 setarg 0x800000 
+78a3 1fed7e00 lshift8 pdata ,pdata 
+78a4 e7e80005 istore 4 ,contw 
+78a5 18007e00 force 0 ,pdata 
+78a6 e7f00005 istore 8 ,contw 
+78a7 58000380 setarg 0x0380 
+78a8 e7e80005 istore 4 ,contw 
+78a9 204077c7 call sha 
+78aa 20407803 call sha_result 
+78ab d8c00a3a arg memresult ,contr 
+78ac d8a00702 arg memahsave ,contw 
+78ad 20407c98 call memcpy32 
+78ae 585c5c5c setarg 0x5c5c5c 
+78af 1fed0400 lshift8 pdata ,temp 
+78b0 1841845c or_into 0x5c ,temp 
+78b1 d8c00a1a arg mem_sp_dhkey_end ,contr 
+78b2 18007206 force 6 ,loopcnt 
+78b3 2040780a call pad_xor 
+78b4 204077c0 call sha_init 
+78b5 204077c7 call sha 
+78b6 d8c00722 arg memahsave_end ,contr 
+78b7 d8a005e2 arg memdat ,contw 
+78b8 18007208 force 8 ,loopcnt 
+78b9 20407926 call memcpy_dword_swap 
+78ba 58800000 setarg 0x800000 
+78bb 1fed7e00 lshift8 pdata ,pdata 
+78bc e7e80005 istore 4 ,contw 
+78bd 20407ca0 call bn_zero 
+78be 58000300 setarg 0x0300 
+78bf e7e80005 istore 4 ,contw 
+78c0 204077c7 call sha 
+78c1 20207803 branch sha_result 
+
+function_f3a:
+78c2 6fe24634 fetch 1 ,mem_ssp_mode_flag 
+78c3 c08178d3 bne ssp_mode_passkey_entry_flag ,function_f3a_no_pin 
+
+function_f3a_common:
+78c4 474c4033 bpatchx patch33_0 ,mem_patch33 
+78c5 58363636 setarg 0x363636 
+78c6 1fed0400 lshift8 pdata ,temp 
+78c7 18418436 or_into 0x36 ,temp 
+78c8 d8c00a1a arg mem_sp_dhkey_end ,contr 
+78c9 18007206 force 6 ,loopcnt 
+78ca 2040780a call pad_xor 
+78cb 204077c0 call sha_init 
+78cc 204077c7 call sha 
+78cd d8c00a3a arg mem_sp_random_remote_end ,contr 
+78ce d8a005e2 arg memdat ,contw 
+78cf 20407925 call memcpy_dword_swap4 
+78d0 d8c00a2a arg mem_sp_random_local_end ,contr 
+78d1 20407925 call memcpy_dword_swap4 
+78d2 202078e8 branch function_f3_common 
+
+function_f3a_no_pin:
+78d3 58000000 setarg 0 
+78d4 67e84658 store 4 ,mem_pin 
+78d5 202078c4 branch function_f3a_common 
+
+function_f3b_no_pin:
+78d6 58000000 setarg 0 
+78d7 67e84658 store 4 ,mem_pin 
+78d8 202078db branch function_f3b_common 
+
+function_f3b:
+78d9 6fe24634 fetch 1 ,mem_ssp_mode_flag 
+78da c08178d6 bne ssp_mode_passkey_entry_flag ,function_f3b_no_pin 
+
+function_f3b_common:
+78db 58363636 setarg 0x363636 
+78dc 1fed0400 lshift8 pdata ,temp 
+78dd 18418436 or_into 0x36 ,temp 
+78de d8c00a1a arg mem_sp_dhkey_end ,contr 
+78df 18007206 force 6 ,loopcnt 
+78e0 2040780a call pad_xor 
+78e1 204077c0 call sha_init 
+78e2 204077c7 call sha 
+78e3 d8c00a2a arg mem_sp_random_local_end ,contr 
+78e4 d8a005e2 arg memdat ,contw 
+78e5 20407925 call memcpy_dword_swap4 
+78e6 d8c00a3a arg mem_sp_random_remote_end ,contr 
+78e7 20407925 call memcpy_dword_swap4 
+
+function_f3_common:
+78e8 58000000 setarg 0x0 
+78e9 e7f00005 istore 8 ,contw 
+78ea e7e80005 istore 4 ,contw 
+78eb 6fe84658 fetch 4 ,mem_pin 
+78ec e7e80005 istore 4 ,contw 
+78ed 18a20400 copy contw ,temp 
+78ee 70072280 jam 0x80 ,mem_addr_padding 
+78ef 18420a00 copy temp ,contw 
+78f0 d8c00732 arg mem_addr_iocap_end ,contr 
+78f1 20407925 call memcpy_dword_swap4 
+78f2 204077c7 call sha 
+78f3 d8a005e2 arg memdat ,contw 
+78f4 18007207 force 7 ,loopcnt 
+78f5 20407ca1 call memset0 
+78f6 e7e80005 istore 4 ,contw 
+78f7 580003f8 setarg 0x03F8 
+78f8 e7e80005 istore 4 ,contw 
+78f9 204077c7 call sha 
+78fa 20407803 call sha_result 
+78fb d8c00a3a arg memresult ,contr 
+78fc d8a00702 arg memahsave ,contw 
+78fd 20407c98 call memcpy32 
+78fe 585c5c5c setarg 0x5c5c5c 
+78ff 1fed0400 lshift8 pdata ,temp 
+7900 1841845c or_into 0x5c ,temp 
+7901 d8c00a1a arg mem_sp_dhkey_end ,contr 
+7902 18007206 force 6 ,loopcnt 
+7903 2040780a call pad_xor 
+7904 204077c0 call sha_init 
+7905 204077c7 call sha 
+7906 d8c00722 arg memahsave_end ,contr 
+7907 d8a005e2 arg memdat ,contw 
+7908 18007208 force 8 ,loopcnt 
+7909 20407926 call memcpy_dword_swap 
+790a 58800000 setarg 0x800000 
+790b 1fed7e00 lshift8 pdata ,pdata 
+790c e7e80005 istore 4 ,contw 
+790d 20407ca0 call bn_zero 
+790e 58000300 setarg 0x0300 
+790f e7e80005 istore 4 ,contw 
+7910 204077c7 call sha 
+7911 20207803 branch sha_result 
+
+eckp_calc_init:
+7912 7005dfc0 jam 192 ,mem_ec_loopc 
+
+eckp_calc_init_1:
+7913 6fe205df fetch 1 ,mem_ec_loopc 
+7914 207a0000 rtn blank 
+7915 1fe0ffff increase -1 ,pdata 
+7916 67e205df store 1 ,mem_ec_loopc 
+7917 d8c006ba arg mem_k ,contr 
+7918 204075a1 call bn_testbit 
+7919 2020f913 branch eckp_calc_init_1 ,true 
+791a d8c005e2 arg mem_ax ,contr 
+791b d8a00672 arg mem_cx ,contw 
+791c 202075a7 branch ec_copy 
+
+eckp_calc:
+791d 204076b8 call ecdbl 
+791e 6fe205df fetch 1 ,mem_ec_loopc 
+791f 1fe0ffff increase -1 ,pdata 
+7920 67e205df store 1 ,mem_ec_loopc 
+7921 d8c006ba arg mem_k ,contr 
+7922 204075a1 call bn_testbit 
+7923 20608000 rtn true 
+7924 20207709 branch ecadd 
+
+memcpy_dword_swap4:
+7925 18007204 force 4 ,loopcnt 
+
+memcpy_dword_swap:
+7926 18c08dfc increase -4 ,contr 
+
+memcpy_dword_swap_loop:
+7927 efe80006 ifetch 4 ,contr 
+7928 e7e80005 istore 4 ,contw 
+7929 18c08df8 increase -8 ,contr 
+792a c2007927 loop memcpy_dword_swap_loop 
+792b 20600000 rtn 
+
+sp_initialize_256:
+792c 474cc033 bpatchx patch33_1 ,mem_patch33 
+792d 6fe24490 fetch 1 ,mem_le_secure_connect_enable 
+792e 203a5ed0 branch le_secure_connection_disable ,blank 
+792f 20405ecc call le_secure_connection_enable 
+7930 20407438 call sp_clear_flags 
+7931 20207932 branch sp_pubkey_calc_256 
+
+sp_pubkey_calc_256:
+7932 6fe24495 fetch 1 ,mem_le_sc_local_key_invalid 
+7933 c1800000 rtnne sp_key_invalid 
+7934 6fe24492 fetch 1 ,mem_le_sc_calc 
+7935 c1800000 rtnne sp_calc_standby 
+7936 d8a04584 arg mem_le_private_key_256 ,contw 
+7937 18000e0f force 15 ,queue 
+7938 20407557 call random_generator 
+7939 180a7e00 random pdata 
+793a 1fe37e00 rshift pdata ,pdata 
+793b e7e40005 istore 2 ,contw 
+793c d8a00762 arg mem_k_256 ,contw 
+793d d8c04584 arg mem_le_private_key_256 ,contr 
+793e 20407c98 call memcpy32 
+793f d8a00642 arg mem_ax_256 ,contw 
+7940 d8c0095a arg mem_gx_256 ,contr 
+7941 20407c8e call memcpy64 
+7942 d8a00682 arg mem_az_256 ,contw 
+7943 20407cab call clear_mem_256 
+7944 70068201 jam 1 ,mem_az_256 
+7945 2040797c call eckp_calc_init_256 
+7946 70449203 jam sp_calc_pubkey_256 ,mem_le_sc_calc 
+7947 20600000 rtn 
+
+sp_pubkey_generated_256:
+7948 d8a045a4 arg mem_le_pubkey_local_x_256 ,contw 
+7949 d8c006a2 arg mem_bx_256 ,contr 
+794a 20407c8e call memcpy64 
+794b 70449503 jam sp_key_valid_256 ,mem_le_sc_local_key_invalid 
+794c 70449200 jam sp_calc_standby ,mem_le_sc_calc 
+794d 20600000 rtn 
+
+sp_dhkey_calc_256:
+794e 6fe209b5 fetch 1 ,mem_sp_dhkey_invalid 
+794f c1800000 rtnne sp_key_invalid 
+7950 6fe24492 fetch 1 ,mem_le_sc_calc 
+7951 c1800000 rtnne sp_calc_standby 
+7952 d8a00762 arg mem_k_256 ,contw 
+7953 d8c04584 arg mem_le_private_key_256 ,contr 
+7954 20407c98 call memcpy32 
+7955 d8a00642 arg mem_ax_256 ,contw 
+7956 d8c009ba arg mem_le_pubkey_remote_x_256 ,contr 
+7957 20407c8e call memcpy64 
+7958 d8a00682 arg mem_az_256 ,contw 
+7959 20407cab call clear_mem_256 
+795a 70068201 jam 1 ,mem_az_256 
+795b 2040797c call eckp_calc_init_256 
+795c 70449204 jam sp_calc_dhkey_256 ,mem_le_sc_calc 
+795d 20600000 rtn 
+
+sp_dhkey_generated_256:
+795e d8a009fa arg mem_le_dhkey_256 ,contw 
+795f d8c006a2 arg mem_bx_256 ,contr 
+7960 20407c98 call memcpy32 
+7961 7009b503 jam sp_key_valid_256 ,mem_sp_dhkey_invalid 
+7962 70449200 jam sp_calc_standby ,mem_le_sc_calc 
+7963 20600000 rtn 
+
+sp_calc_sequence_256:
+7964 6fe24490 fetch 1 ,mem_le_secure_connect_enable 
+7965 207a0000 rtn blank 
+7966 6fe24492 fetch 1 ,mem_le_sc_calc 
+7967 207a0000 rtn blank 
+7968 1fe0fe80 increase 0x80 ,pdata 
+7969 67e24492 store 1 ,mem_le_sc_calc 
+796a c3838000 rtnbit1 7 
+796b 6fe405df fetch 2 ,mem_ec_loopc 
+796c 203a796e branch sp_calc_sequence_done_256 ,blank 
+796d 20207974 branch eckp_calc_256 
+
+sp_calc_sequence_done_256:
+796e 474d4033 bpatchx patch33_2 ,mem_patch33 
+796f 20407989 call ecunmapz_256 
+7970 6fe24492 fetch 1 ,mem_le_sc_calc 
+7971 c001f948 beq sp_calc_pubkey_256 ,sp_pubkey_generated_256 
+7972 c002795e beq sp_calc_dhkey_256 ,sp_dhkey_generated_256 
+7973 20600000 rtn 
+
+eckp_calc_256:
+7974 2040799b call ecdbl_256 
+7975 6fe405df fetch 2 ,mem_ec_loopc 
+7976 1fe0ffff increase -1 ,pdata 
+7977 67e405df store 2 ,mem_ec_loopc 
+7978 d8c00762 arg mem_k_256 ,contr 
+7979 204075a1 call bn_testbit 
+797a 20608000 rtn true 
+797b 202079ec branch ecadd_256 
+
+eckp_calc_init_256:
+797c 474dc033 bpatchx patch33_3 ,mem_patch33 
+797d 58000100 setarg 256 ,pdata 
+797e 67e405df store 2 ,mem_ec_loopc 
+
+eckp_calc_init_256_1:
+797f 6fe405df fetch 2 ,mem_ec_loopc 
+7980 207a0000 rtn blank 
+7981 1fe0ffff increase -1 ,pdata 
+7982 67e405df store 2 ,mem_ec_loopc 
+7983 d8c00762 arg mem_k_256 ,contr 
+7984 204075a1 call bn_testbit 
+7985 2020f97f branch eckp_calc_init_256_1 ,true 
+7986 d8c00642 arg mem_ax_256 ,contr 
+7987 d8a00702 arg mem_cx_256 ,contw 
+7988 20207c8d branch memcpy96 
+
+ecunmapz_256:
+7989 da200742 arg mem_cz_256 ,rega 
+798a d8a00842 arg mem_t3_256 ,contw 
+798b 20407a58 call bn_invmod_256 
+798c da200842 arg mem_t3_256 ,rega 
+798d d8a007e2 arg mem_t1_256 ,contw 
+798e 20407b2e call bn_sqrmod_256 
+798f da200702 arg mem_cx_256 ,rega 
+7990 da4007e2 arg mem_t1_256 ,regb 
+7991 d8a006a2 arg mem_bx_256 ,contw 
+7992 20407a96 call bn_mulmod_256 
+7993 da200842 arg mem_t3_256 ,rega 
+7994 da4007e2 arg mem_t1_256 ,regb 
+7995 d8a00822 arg mem_t2_256 ,contw 
+7996 20407a96 call bn_mulmod_256 
+7997 da200722 arg mem_cy_256 ,rega 
+7998 da400822 arg mem_t2_256 ,regb 
+7999 d8a006c2 arg mem_by_256 ,contw 
+799a 20207a96 branch bn_mulmod_256 
+
+ecdbl_256:
+799b da200742 arg mem_cz_256 ,rega 
+799c d8a00822 arg mem_t2_256 ,contw 
+799d 20407b2e call bn_sqrmod_256 
+799e da200822 arg mem_t2_256 ,rega 
+799f d8a00842 arg mem_t3_256 ,contw 
+79a0 20407b2e call bn_sqrmod_256 
+79a1 da20093a arg mem_a_256 ,rega 
+79a2 da400842 arg mem_t3_256 ,regb 
+79a3 d8a00842 arg mem_t3_256 ,contw 
+79a4 20407a96 call bn_mulmod_256 
+79a5 da200702 arg mem_cx_256 ,rega 
+79a6 d8a00822 arg mem_t2_256 ,contw 
+79a7 20407b2e call bn_sqrmod_256 
+79a8 d8c00822 arg mem_t2_256 ,contr 
+79a9 d8a007e2 arg mem_t1_256 ,contw 
+79aa 20407c98 call memcpy32 
+79ab da2007e2 arg mem_t1_256 ,rega 
+79ac 20407b35 call bn_lshiftmod_256 
+79ad da200822 arg mem_t2_256 ,rega 
+79ae da4007e2 arg mem_t1_256 ,regb 
+79af d8a00822 arg mem_t2_256 ,contw 
+79b0 20407b32 call bn_addmod_256 
+79b1 da200822 arg mem_t2_256 ,rega 
+79b2 da400842 arg mem_t3_256 ,regb 
+79b3 d8a00822 arg mem_t2_256 ,contw 
+79b4 20407b32 call bn_addmod_256 
+79b5 d8c00702 arg mem_cx_256 ,contr 
+79b6 d8a007e2 arg mem_t1_256 ,contw 
+79b7 20407c98 call memcpy32 
+79b8 da200722 arg mem_cy_256 ,rega 
+79b9 d8a00842 arg mem_t3_256 ,contw 
+79ba 20407b2e call bn_sqrmod_256 
+79bb da2007e2 arg mem_t1_256 ,rega 
+79bc 20407b35 call bn_lshiftmod_256 
+79bd da2007e2 arg mem_t1_256 ,rega 
+79be 20407b35 call bn_lshiftmod_256 
+79bf da2007e2 arg mem_t1_256 ,rega 
+79c0 da400842 arg mem_t3_256 ,regb 
+79c1 d8a007e2 arg mem_t1_256 ,contw 
+79c2 20407a96 call bn_mulmod_256 
+79c3 da200842 arg mem_t3_256 ,rega 
+79c4 d8a00802 arg mem_t0_256 ,contw 
+79c5 20407b2e call bn_sqrmod_256 
+79c6 da200802 arg mem_t0_256 ,rega 
+79c7 20407b35 call bn_lshiftmod_256 
+79c8 da200802 arg mem_t0_256 ,rega 
+79c9 20407b35 call bn_lshiftmod_256 
+79ca da200802 arg mem_t0_256 ,rega 
+79cb 20407b35 call bn_lshiftmod_256 
+79cc d8c00722 arg mem_cy_256 ,contr 
+79cd d8a00842 arg mem_t3_256 ,contw 
+79ce 20407c98 call memcpy32 
+79cf da200842 arg mem_t3_256 ,rega 
+79d0 20407b35 call bn_lshiftmod_256 
+79d1 da200842 arg mem_t3_256 ,rega 
+79d2 da400742 arg mem_cz_256 ,regb 
+79d3 d8a00742 arg mem_cz_256 ,contw 
+79d4 20407a96 call bn_mulmod_256 
+79d5 da200822 arg mem_t2_256 ,rega 
+79d6 d8a00842 arg mem_t3_256 ,contw 
+79d7 20407b2e call bn_sqrmod_256 
+79d8 da200842 arg mem_t3_256 ,rega 
+79d9 da4007e2 arg mem_t1_256 ,regb 
+79da d8a00842 arg mem_t3_256 ,contw 
+79db 20407b4b call bn_submod_256 
+79dc da200842 arg mem_t3_256 ,rega 
+79dd da4007e2 arg mem_t1_256 ,regb 
+79de d8a00702 arg mem_cx_256 ,contw 
+79df 20407b4b call bn_submod_256 
+79e0 da2007e2 arg mem_t1_256 ,rega 
+79e1 da400702 arg mem_cx_256 ,regb 
+79e2 d8a00842 arg mem_t3_256 ,contw 
+79e3 20407b4b call bn_submod_256 
+79e4 da200842 arg mem_t3_256 ,rega 
+79e5 da400822 arg mem_t2_256 ,regb 
+79e6 d8a00842 arg mem_t3_256 ,contw 
+79e7 20407a96 call bn_mulmod_256 
+79e8 da200842 arg mem_t3_256 ,rega 
+79e9 da400802 arg mem_t0_256 ,regb 
+79ea d8a00722 arg mem_cy_256 ,contw 
+79eb 20207b4b branch bn_submod_256 
+
+ecadd_256:
+79ec da200682 arg mem_az_256 ,rega 
+79ed d8a00862 arg mem_t7_256 ,contw 
+79ee 20407b2e call bn_sqrmod_256 
+79ef da200702 arg mem_cx_256 ,rega 
+79f0 da400862 arg mem_t7_256 ,regb 
+79f1 d8a00802 arg mem_t0_256 ,contw 
+79f2 20407a96 call bn_mulmod_256 
+79f3 da200682 arg mem_az_256 ,rega 
+79f4 da400862 arg mem_t7_256 ,regb 
+79f5 d8a00862 arg mem_t7_256 ,contw 
+79f6 20407a96 call bn_mulmod_256 
+79f7 da200722 arg mem_cy_256 ,rega 
+79f8 da400862 arg mem_t7_256 ,regb 
+79f9 d8a007e2 arg mem_t1_256 ,contw 
+79fa 20407a96 call bn_mulmod_256 
+79fb da200742 arg mem_cz_256 ,rega 
+79fc d8a00862 arg mem_t7_256 ,contw 
+79fd 20407b2e call bn_sqrmod_256 
+79fe da200642 arg mem_ax_256 ,rega 
+79ff da400862 arg mem_t7_256 ,regb 
+7a00 d8a00822 arg mem_t2_256 ,contw 
+7a01 20407a96 call bn_mulmod_256 
+7a02 da200742 arg mem_cz_256 ,rega 
+7a03 da400862 arg mem_t7_256 ,regb 
+7a04 d8a00862 arg mem_t7_256 ,contw 
+7a05 20407a96 call bn_mulmod_256 
+7a06 da200662 arg mem_ay_256 ,rega 
+7a07 da400862 arg mem_t7_256 ,regb 
+7a08 d8a00842 arg mem_t3_256 ,contw 
+7a09 20407a96 call bn_mulmod_256 
+7a0a da400802 arg mem_t0_256 ,regb 
+7a0b da200822 arg mem_t2_256 ,rega 
+7a0c d8a00862 arg mem_t7_256 ,contw 
+7a0d 20407b4b call bn_submod_256 
+7a0e da200802 arg mem_t0_256 ,rega 
+7a0f da400822 arg mem_t2_256 ,regb 
+7a10 d8a00802 arg mem_t0_256 ,contw 
+7a11 20407b32 call bn_addmod_256 
+7a12 da4007e2 arg mem_t1_256 ,regb 
+7a13 da200842 arg mem_t3_256 ,rega 
+7a14 d8a00822 arg mem_t2_256 ,contw 
+7a15 20407b4b call bn_submod_256 
+7a16 da2007e2 arg mem_t1_256 ,rega 
+7a17 da400842 arg mem_t3_256 ,regb 
+7a18 d8a007e2 arg mem_t1_256 ,contw 
+7a19 20407b32 call bn_addmod_256 
+7a1a da2007e2 arg mem_t1_256 ,rega 
+7a1b da400862 arg mem_t7_256 ,regb 
+7a1c d8a007e2 arg mem_t1_256 ,contw 
+7a1d 20407a96 call bn_mulmod_256 
+7a1e da200742 arg mem_cz_256 ,rega 
+7a1f da400682 arg mem_az_256 ,regb 
+7a20 d8a00842 arg mem_t3_256 ,contw 
+7a21 20407a96 call bn_mulmod_256 
+7a22 da200842 arg mem_t3_256 ,rega 
+7a23 da400862 arg mem_t7_256 ,regb 
+7a24 d8a00742 arg mem_cz_256 ,contw 
+7a25 20407a96 call bn_mulmod_256 
+7a26 da200862 arg mem_t7_256 ,rega 
+7a27 d8a00862 arg mem_t7_256 ,contw 
+7a28 20407b2e call bn_sqrmod_256 
+7a29 da200862 arg mem_t7_256 ,rega 
+7a2a da400802 arg mem_t0_256 ,regb 
+7a2b d8a00842 arg mem_t3_256 ,contw 
+7a2c 20407a96 call bn_mulmod_256 
+7a2d da200862 arg mem_t7_256 ,rega 
+7a2e da4007e2 arg mem_t1_256 ,regb 
+7a2f d8a007e2 arg mem_t1_256 ,contw 
+7a30 20407a96 call bn_mulmod_256 
+7a31 da200822 arg mem_t2_256 ,rega 
+7a32 d8a00702 arg mem_cx_256 ,contw 
+7a33 20407b2e call bn_sqrmod_256 
+7a34 da200702 arg mem_cx_256 ,rega 
+7a35 da400842 arg mem_t3_256 ,regb 
+7a36 d8a00702 arg mem_cx_256 ,contw 
+7a37 20407b4b call bn_submod_256 
+7a38 d8c00702 arg mem_cx_256 ,contr 
+7a39 d8a00862 arg mem_t7_256 ,contw 
+7a3a 20407c98 call memcpy32 
+7a3b da200862 arg mem_t7_256 ,rega 
+7a3c 20407b35 call bn_lshiftmod_256 
+7a3d da200842 arg mem_t3_256 ,rega 
+7a3e da400862 arg mem_t7_256 ,regb 
+7a3f d8a00842 arg mem_t3_256 ,contw 
+7a40 20407b4b call bn_submod_256 
+7a41 da200842 arg mem_t3_256 ,rega 
+7a42 da400822 arg mem_t2_256 ,regb 
+7a43 d8a00822 arg mem_t2_256 ,contw 
+7a44 20407a96 call bn_mulmod_256 
+7a45 da200822 arg mem_t2_256 ,rega 
+7a46 da4007e2 arg mem_t1_256 ,regb 
+7a47 d8a00722 arg mem_cy_256 ,contw 
+7a48 20407b4b call bn_submod_256 
+7a49 da200722 arg mem_cy_256 ,rega 
+7a4a da40091a arg mem_p_256 ,regb 
+7a4b d8a00722 arg mem_cy_256 ,contw 
+7a4c 18002600 force 0 ,regc 
+7a4d 6fe20722 fetch 1 ,mem_cy_256 
+7a4e 2feffe00 isolate1 0 ,pdata 
+7a4f 2040fb30 call bn_add_256 ,true 
+7a50 1a626000 copy regc ,alarm 
+7a51 da200722 arg mem_cy_256 ,rega 
+7a52 20407b60 call bn_rshift_256 
+7a53 6fe20741 fetch 1 ,mem_cy5_256 
+7a54 2e0ffe00 isolate1 0 ,alarm 
+7a55 7920fe07 setflag true ,7 ,pdata 
+7a56 67e20741 store 1 ,mem_cy5_256 
+7a57 20600000 rtn 
+
+bn_invmod_256:
+7a58 18a21600 copy contw ,timeup 
+7a59 d8a00802 arg mem_tmp0_256 ,contw 
+7a5a 20407cab call clear_mem_256 
+7a5b 18007e00 force 0 ,pdata 
+7a5c 67e80822 store 4 ,mem_t2_256 
+7a5d 70080201 jam 1 ,mem_tmp0_256 
+7a5e d8a00782 arg mem_tmp1_256 ,contw 
+7a5f 20407cad call clear_mem_512 
+7a60 d8c0091a arg mem_p_256 ,contr 
+7a61 d8a007c2 arg mem_tmp2_256 ,contw 
+7a62 20407c98 call memcpy32 
+7a63 1a220c00 copy rega ,contr 
+7a64 d8a007e2 arg mem_tmp3_256 ,contw 
+7a65 20407c98 call memcpy32 
+
+bn_invmod_256_2:
+7a66 d8c007e2 arg mem_tmp3_256 ,contr 
+7a67 20407b6a call bn_eq_zero_256 
+7a68 203a7a8f branch bn_invmod_256_0 ,blank 
+7a69 da2007e2 arg mem_tmp3_256 ,rega 
+7a6a da400802 arg mem_tmp0_256 ,regb 
+7a6b 20407b6d call bn_rshifteven_256 
+7a6c da2007c2 arg mem_tmp2_256 ,rega 
+7a6d da400782 arg mem_tmp1_256 ,regb 
+7a6e 20407b6d call bn_rshifteven_256 
+7a6f da2007e2 arg mem_tmp3_256 ,rega 
+7a70 da4007c2 arg mem_tmp2_256 ,regb 
+7a71 20407b66 call bn_bigeq_256 
+7a72 20217a81 branch bn_invmod_256_1 ,positive 
+7a73 da2007c2 arg mem_tmp2_256 ,rega 
+7a74 da4007e2 arg mem_tmp3_256 ,regb 
+7a75 1a220a00 copy rega ,contw 
+7a76 20407b5e call bn_sub_256 
+7a77 da200802 arg mem_tmp0_256 ,rega 
+7a78 da400782 arg mem_tmp1_256 ,regb 
+7a79 1a420a00 copy regb ,contw 
+7a7a 20407b30 call bn_add_256 
+7a7b efe20011 ifetch 1 ,rega 
+7a7c 9a60a600 iadd regc ,regc 
+7a7d efe20012 ifetch 1 ,regb 
+7a7e 9a60fe00 iadd regc ,pdata 
+7a7f e7e20012 istore 1 ,regb 
+7a80 20207a66 branch bn_invmod_256_2 
+
+bn_invmod_256_1:
+7a81 da2007e2 arg mem_tmp3_256 ,rega 
+7a82 da4007c2 arg mem_tmp2_256 ,regb 
+7a83 1a220a00 copy rega ,contw 
+7a84 20407b5e call bn_sub_256 
+7a85 da200782 arg mem_tmp1_256 ,rega 
+7a86 da400802 arg mem_tmp0_256 ,regb 
+7a87 1a420a00 copy regb ,contw 
+7a88 20407b30 call bn_add_256 
+7a89 efe20011 ifetch 1 ,rega 
+7a8a 9a60a600 iadd regc ,regc 
+7a8b efe20012 ifetch 1 ,regb 
+7a8c 9a60fe00 iadd regc ,pdata 
+7a8d e7e20012 istore 1 ,regb 
+7a8e 20207a66 branch bn_invmod_256_2 
+
+bn_invmod_256_0:
+7a8f da200782 arg mem_tmp1_256 ,rega 
+7a90 19620a00 copy timeup ,contw 
+7a91 20407abf call bn_p256mod 
+7a92 da20091a arg mem_p_256 ,rega 
+7a93 19622400 copy timeup ,regb 
+7a94 19620a00 copy timeup ,contw 
+7a95 20207b4b branch bn_submod_256 
+
+bn_mulmod_256:
+7a96 18a21600 copy contw ,timeup 
+7a97 18007000 force 0 ,regext_index 
+7a98 d8a00782 arg mem_tmp1_256 ,contw 
+7a99 20407cad call clear_mem_512 
+7a9a d8a00ace arg mem_regext ,contw 
+7a9b 20407cad call clear_mem_512 
+7a9c 1a220c00 copy rega ,contr 
+7a9d 700ace00 jam 0 ,mem_regext 
+7a9e 58000000 setarg 0 
+7a9f 20407b28 call bn_load_mem 
+7aa0 1a420c00 copy regb ,contr 
+7aa1 20407b2c call bn_load_256 
+7aa2 18000e00 force 0 ,queue 
+7aa3 d8a00782 arg mem_tmp1_256 ,contw 
+
+bn_mulmod_256_1:
+7aa4 d8400ace arg mem_regext ,temp 
+7aa5 18e22400 copy queue ,regb 
+7aa6 1a4bfe00 lshift2 regb ,pdata 
+7aa7 9840a400 iadd temp ,regb 
+7aa8 18000400 force 0 ,temp 
+7aa9 18002600 force 0 ,regc 
+
+bn_mulmod_256_0:
+7aaa efe80005 ifetch 4 ,contw 
+7aab 98002200 iforce rega 
+7aac efe80012 ifetch 4 ,regb 
+7aad 1a627000 copy regc ,regext_index 
+7aae 9deffe00 imul32 regext ,pdata 
+7aaf 9a20fe00 iadd rega ,pdata 
+7ab0 9840fe00 iadd temp ,pdata 
+7ab1 e7e80005 istore 4 ,contw 
+7ab2 1fef0400 rshift32 pdata ,temp 
+7ab3 1a60a601 increase 1 ,regc 
+7ab4 2a61fe08 compare 8 ,regc ,0xff 
+7ab5 2420faaa nbranch bn_mulmod_256_0 ,true 
+7ab6 18427e00 deposit temp 
+7ab7 e7e80005 istore 4 ,contw 
+7ab8 18a08be0 increase -32 ,contw 
+7ab9 18e08e01 increase 1 ,queue 
+7aba 28e1fe08 compare 8 ,queue ,0xff 
+7abb 2420faa4 nbranch bn_mulmod_256_1 ,true 
+7abc da200782 arg mem_tmp1_256 ,rega 
+7abd 19620a00 copy timeup ,contw 
+7abe 20207abf branch bn_p256mod 
+
+bn_p256mod:
+7abf 474e4033 bpatchx patch33_4 ,mem_patch33 
+7ac0 18a21600 copy contw ,timeup 
+7ac1 1a226000 copy rega ,alarm 
+7ac2 da4007c2 arg mem_tmp2_256 ,regb 
+7ac3 1a420a00 copy regb ,contw 
+7ac4 20407ca8 call memset0_4 
+7ac5 e7f00005 istore 8 ,contw 
+7ac6 1a208c2c add rega ,44 ,contr 
+7ac7 20407c94 call memcpy8 
+7ac8 20407c90 call memcpy12 
+7ac9 1a422200 copy regb ,rega 
+7aca 20407b35 call bn_lshiftmod_256 
+7acb da4007c2 arg mem_tmp2_256 ,regb 
+7acc 1e022200 copy alarm ,rega 
+7acd 19620a00 copy timeup ,contw 
+7ace 20407b32 call bn_addmod_256 
+7acf da4007c2 arg mem_tmp2_256 ,regb 
+7ad0 1a420a00 copy regb ,contw 
+7ad1 20407ca8 call memset0_4 
+7ad2 e7f00005 istore 8 ,contw 
+7ad3 1e008c30 add alarm ,48 ,contr 
+7ad4 20407c9a call memcpy16 
+7ad5 20407ca8 call memset0_4 
+7ad6 1a422200 copy regb ,rega 
+7ad7 20407b35 call bn_lshiftmod_256 
+7ad8 da4007c2 arg mem_tmp2_256 ,regb 
+7ad9 19622200 copy timeup ,rega 
+7ada 1a220a00 copy rega ,contw 
+7adb 20407b32 call bn_addmod_256 
+7adc da4007c2 arg mem_tmp2_256 ,regb 
+7add 1a420a00 copy regb ,contw 
+7ade 1e008c20 add alarm ,32 ,contr 
+7adf 20407c90 call memcpy12 
+7ae0 20407ca8 call memset0_4 
+7ae1 e7f00005 istore 8 ,contw 
+7ae2 1e008c38 add alarm ,56 ,contr 
+7ae3 20407c94 call memcpy8 
+7ae4 19622200 copy timeup ,rega 
+7ae5 1a220a00 copy rega ,contw 
+7ae6 20407b32 call bn_addmod_256 
+7ae7 da4007c2 arg mem_tmp2_256 ,regb 
+7ae8 1a420a00 copy regb ,contw 
+7ae9 1e008c24 add alarm ,36 ,contr 
+7aea 20407c90 call memcpy12 
+7aeb 1e008c34 add alarm ,52 ,contr 
+7aec 20407c90 call memcpy12 
+7aed 1e008c34 add alarm ,52 ,contr 
+7aee 20407c91 call memcpy4 
+7aef 1e008c20 add alarm ,32 ,contr 
+7af0 20407c91 call memcpy4 
+7af1 19622200 copy timeup ,rega 
+7af2 1a220a00 copy rega ,contw 
+7af3 20407b32 call bn_addmod_256 
+7af4 da4007c2 arg mem_tmp2_256 ,regb 
+7af5 1a420a00 copy regb ,contw 
+7af6 1e008c2c add alarm ,44 ,contr 
+7af7 20407c90 call memcpy12 
+7af8 20407ca8 call memset0_4 
+7af9 e7f00005 istore 8 ,contw 
+7afa 1e008c20 add alarm ,32 ,contr 
+7afb 20407c91 call memcpy4 
+7afc 1e008c28 add alarm ,40 ,contr 
+7afd 20407c91 call memcpy4 
+7afe 19622200 copy timeup ,rega 
+7aff 1a220a00 copy rega ,contw 
+7b00 20407b4b call bn_submod_256 
+7b01 da4007c2 arg mem_tmp2_256 ,regb 
+7b02 1a420a00 copy regb ,contw 
+7b03 1e008c30 add alarm ,48 ,contr 
+7b04 20407c94 call memcpy8 
+7b05 20407c94 call memcpy8 
+7b06 18007e00 force 0 ,pdata 
+7b07 e7f00005 istore 8 ,contw 
+7b08 1e008c24 add alarm ,36 ,contr 
+7b09 20407c91 call memcpy4 
+7b0a 1e008c2c add alarm ,44 ,contr 
+7b0b 20407c91 call memcpy4 
+7b0c 19622200 copy timeup ,rega 
+7b0d 1a220a00 copy rega ,contw 
+7b0e 20407b4b call bn_submod_256 
+7b0f da4007c2 arg mem_tmp2_256 ,regb 
+7b10 1a420a00 copy regb ,contw 
+7b11 1e008c34 add alarm ,52 ,contr 
+7b12 20407c90 call memcpy12 
+7b13 1e008c20 add alarm ,32 ,contr 
+7b14 20407c90 call memcpy12 
+7b15 20407ca8 call memset0_4 
+7b16 1e008c30 add alarm ,48 ,contr 
+7b17 20407c91 call memcpy4 
+7b18 19622200 copy timeup ,rega 
+7b19 1a220a00 copy rega ,contw 
+7b1a 20407b4b call bn_submod_256 
+7b1b da4007c2 arg mem_tmp2_256 ,regb 
+7b1c 1a420a00 copy regb ,contw 
+7b1d 1e008c38 add alarm ,56 ,contr 
+7b1e 20407c94 call memcpy8 
+7b1f 20407ca8 call memset0_4 
+7b20 1e008c24 add alarm ,36 ,contr 
+7b21 20407c90 call memcpy12 
+7b22 20407ca8 call memset0_4 
+7b23 1e008c34 add alarm ,52 ,contr 
+7b24 20407c91 call memcpy4 
+7b25 19622200 copy timeup ,rega 
+7b26 1a220a00 copy rega ,contw 
+7b27 20207b4b branch bn_submod_256 
+
+bn_load_mem:
+7b28 18007220 force 32 ,loopcnt 
+7b29 d8a00ace arg mem_regext ,contw 
+7b2a 98a08a00 iadd contw ,contw 
+7b2b 20207cdc branch memcpy 
+
+bn_load_256:
+7b2c 18007208 force 8 ,loopcnt 
+7b2d 20207636 branch bn_load_0 
+
+bn_sqrmod_256:
+7b2e 1a222400 copy rega ,regb 
+7b2f 20207a96 branch bn_mulmod_256 
+
+bn_add_256:
+7b30 18007208 force 8 ,loopcnt 
+7b31 202075c7 branch bn_add + 1 
+
+bn_addmod_256:
+7b32 20407b30 call bn_add_256 
+7b33 18a22200 copy contw ,rega 
+7b34 20207b36 branch bn_lshiftmod_ismod_256 
+
+bn_lshiftmod_256:
+7b35 20407b63 call bn_lshift_256 
+
+bn_lshiftmod_ismod_256:
+7b36 2a6ffe00 isolate1 0 ,regc 
+7b37 2020fb3f branch bn_lshiftmod_p_256 ,true 
+7b38 da40091a arg mem_p_256 ,regb 
+7b39 1a222600 copy rega ,regc 
+7b3a 1a20a3e0 increase -32 ,rega 
+7b3b 20407b66 call bn_bigeq_256 
+7b3c 24610000 nrtn positive 
+7b3d 1a622200 copy regc ,rega 
+7b3e 20207b47 branch sub_p2_256 
+
+bn_lshiftmod_p_256:
+7b3f 20407b47 call sub_p2_256 
+7b40 1a222600 copy rega ,regc 
+7b41 1a20a3e0 increase -32 ,rega 
+7b42 da40091a arg mem_p_256 ,regb 
+7b43 20407b66 call bn_bigeq_256 
+7b44 24610000 nrtn positive 
+7b45 1a622200 copy regc ,rega 
+7b46 20207b47 branch sub_p2_256 
+
+sub_p2_256:
+7b47 1a20a3e0 increase -32 ,rega 
+7b48 da40091a arg mem_p_256 ,regb 
+7b49 1a220a00 copy rega ,contw 
+7b4a 20207b5e branch bn_sub_256 
+
+bn_submod_256:
+7b4b 20407b5e call bn_sub_256 
+7b4c 2020fb55 branch bn_submod_256_np ,true 
+7b4d 18a0a3e0 add contw ,-32 ,rega 
+7b4e da40091a arg mem_p_256 ,regb 
+7b4f 20407b66 call bn_bigeq_256 
+7b50 24610000 nrtn positive 
+7b51 da40091a arg mem_p_256 ,regb 
+7b52 18a0a3e0 add contw ,-32 ,rega 
+7b53 1a220a00 copy rega ,contw 
+7b54 20207b5e branch bn_sub_256 
+
+bn_submod_256_np:
+7b55 18a0a3e0 add contw ,-32 ,rega 
+7b56 da40091a arg mem_p_256 ,regb 
+7b57 1a220a00 copy rega ,contw 
+7b58 20407b30 call bn_add_256 
+7b59 20608000 rtn true 
+7b5a 18a0a3e0 add contw ,-32 ,rega 
+7b5b da40091a arg mem_p_256 ,regb 
+7b5c 1a220a00 copy rega ,contw 
+7b5d 20207b30 branch bn_add_256 
+
+bn_sub_256:
+7b5e 18007208 force 8 ,loopcnt 
+7b5f 202075d5 branch bn_sub + 1 
+
+bn_rshift_256:
+7b60 18007208 force 8 ,loopcnt 
+7b61 1a20a21c increase 28 ,rega 
+7b62 202075e4 branch bn_rshift 
+
+bn_lshift_256:
+7b63 18007208 force 8 ,loopcnt 
+7b64 18002600 force 0 ,regc 
+7b65 202075f2 branch bn_lshift_0 
+
+bn_bigeq_256:
+7b66 18007208 force 8 ,loopcnt 
+7b67 1a20a21c increase 28 ,rega 
+7b68 1a40a41c increase 28 ,regb 
+7b69 202075bc branch bn_bigeq_0 
+
+bn_eq_zero_256:
+7b6a eff00006 ifetch 8 ,contr 
+7b6b 247a0000 nrtn blank 
+7b6c 202075aa branch bn_eq_zero 
+
+bn_rshifteven_256:
+7b6d 1a226000 copy rega ,alarm 
+
+bn_rshifteven_256_1:
+7b6e 1e022200 copy alarm ,rega 
+7b6f efe20011 ifetch 1 ,rega 
+7b70 2feffe00 isolate1 0 ,pdata 
+7b71 20608000 rtn true 
+7b72 20407b60 call bn_rshift_256 
+7b73 efe20012 ifetch 1 ,regb 
+7b74 2fec0000 isolate0 0 ,pdata 
+7b75 2020fb7d branch bn_rshifteven_256_0 ,true 
+7b76 da20091a arg mem_p_256 ,rega 
+7b77 1a420a00 copy regb ,contw 
+7b78 20407b30 call bn_add_256 
+7b79 efe20012 ifetch 1 ,regb 
+7b7a 9a60fe00 iadd regc ,pdata 
+7b7b e7e20012 istore 1 ,regb 
+7b7c 1a40a5e0 increase -32 ,regb 
+
+bn_rshifteven_256_0:
+7b7d 1a40a220 add regb ,32 ,rega 
+7b7e 18007209 force 9 ,loopcnt 
+7b7f 204075e4 call bn_rshift 
+7b80 20207b6e branch bn_rshifteven_256_1 
+
+ui_init:
+7b81 20404c20 call lpm_disable_exen_output 
+7b82 20758000 rtn wake 
+7b83 20207b9a branch ui_timer_init 
+
+ui_dispatch:
+7b84 20207b89 branch ui_timer_check 
+
+ui_timer_timeout:
+7b85 58001000 setarg 0x1000 
+7b86 1ff07e00 lshift16 pdata ,pdata 
+7b87 9a40a400 iadd regb ,regb 
+7b88 20600000 rtn 
+
+ui_timer_check:
+7b89 474ec033 bpatchx patch33_5 ,mem_patch33 
+7b8a da200000 arg 0 ,rega 
+7b8b 6848464a fetcht 4 ,mem_ui_timer_last_btclk 
+7b8c 1c422400 copy clkn_bt ,regb 
+7b8d 1a427e00 copy regb ,pdata 
+7b8e 98467c00 isub temp ,null 
+7b8f 24417b85 ncall ui_timer_timeout ,positive 
+
+ui_timer_check_loop:
+7b90 1a427e00 copy regb ,pdata 
+7b91 184084a0 increase 160 ,temp 
+7b92 184084a0 increase 160 ,temp 
+7b93 98467c00 isub temp ,null 
+7b94 24217b9d nbranch ui_timer_check_end ,positive 
+7b95 1a20a201 increase 1 ,rega 
+7b96 1a217e0f and rega ,0x0f ,pdata 
+7b97 243a7b90 nbranch ui_timer_check_loop ,blank 
+7b98 da200000 arg 0 ,rega 
+7b99 20407ba4 call ui_timer_check_send_evt 
+
+ui_timer_init:
+7b9a 1c427e00 copy clkn_bt ,pdata 
+7b9b 67e8464a store 4 ,mem_ui_timer_last_btclk 
+7b9c 20600000 rtn 
+
+ui_timer_check_end:
+7b9d 474f4033 bpatchx patch33_6 ,mem_patch33 
+7b9e 1a227e00 copy rega ,pdata 
+7b9f 207a0000 rtn blank 
+7ba0 18408560 increase -160 ,temp 
+7ba1 18408560 increase -160 ,temp 
+7ba2 793f841c set0 28 ,temp 
+7ba3 6048464a storet 4 ,mem_ui_timer_last_btclk 
+
+ui_timer_check_send_evt:
+7ba4 20204cf8 branch app_evt_timer 
+
+ui_ipc_get_lock:
+7ba5 70463801 jam 1 ,mem_ipc_lock_bt 
+
+ui_ipc_get_lock_wait:
+7ba6 6fe24639 fetch 1 ,mem_ipc_lock_c51 
+7ba7 243a7ba6 nbranch ui_ipc_get_lock_wait ,blank 
+7ba8 20600000 rtn 
+
+ui_ipc_put_lock:
+7ba9 70463800 jam 0 ,mem_ipc_lock_bt 
+7baa 20600000 rtn 
+
+ui_ipc_send_event:
+7bab 474fc033 bpatchx patch33_7 ,mem_patch33 
+7bac 20407ba5 call ui_ipc_get_lock 
+7bad 1a227e00 copy rega ,pdata 
+7bae 67e80a8d store 4 ,mem_ipc_rega_temp 
+7baf da20463a arg mem_ipc_fifo_bt2c51 ,rega 
+7bb0 20407d90 call fifo_in 
+7bb1 6fe80a8d fetch 4 ,mem_ipc_rega_temp 
+7bb2 1fe22200 copy pdata ,rega 
+7bb3 20207ba9 branch ui_ipc_put_lock 
+
+ui_ipc_send_cmd:
+7bb4 47504034 bpatchx patch34_0 ,mem_patch34 
+7bb5 20407ba5 call ui_ipc_get_lock 
+7bb6 1a227e00 copy rega ,pdata 
+7bb7 67e80a8d store 4 ,mem_ipc_rega_temp 
+7bb8 da204642 arg mem_ipc_fifo_c512bt ,rega 
+7bb9 20407d90 call fifo_in 
+7bba 6fe80a8d fetch 4 ,mem_ipc_rega_temp 
+7bbb 1fe22200 copy pdata ,rega 
+7bbc 20207ba9 branch ui_ipc_put_lock 
+
+ui_ipc_clean_all_fifo:
+7bbd 58000000 setarg 0 
+7bbe 67f04642 store util_fifo_len ,mem_ipc_fifo_c512bt 
+7bbf 67f0463a store util_fifo_len ,mem_ipc_fifo_bt2c51 
+7bc0 20600000 rtn 
+
+check_51cmd:
+7bc1 4750c034 bpatchx patch34_1 ,mem_patch34 
+7bc2 6fe241cf fetch 1 ,mem_hci_cmd 
+7bc3 247a0000 nrtn blank 
+7bc4 da204642 arg mem_ipc_fifo_c512bt ,rega 
+7bc5 20407da8 call fifo_is_empty 
+7bc6 207a0000 rtn blank 
+7bc7 700a8c00 jam ipc_continue_process ,mem_ipc_skip_continue_proc 
+7bc8 20407bcc call check_51cmd_once 
+7bc9 6fe20a8c fetch 1 ,mem_ipc_skip_continue_proc 
+7bca 203a7bc1 branch check_51cmd ,blank 
+7bcb 20600000 rtn 
+
+check_51cmd_once:
+7bcc 20407ba5 call ui_ipc_get_lock 
+7bcd da204642 arg mem_ipc_fifo_c512bt ,rega 
+7bce 20407d9c call fifo_out 
+7bcf 1fe20400 copy pdata ,temp 
+7bd0 20407ba9 call ui_ipc_put_lock 
+7bd1 47514034 bpatchx patch34_2 ,mem_patch34 
+7bd2 18427e00 copy temp ,pdata 
+7bd3 207a0000 rtn blank 
+7bd4 c000fbff beq bt_cmd_start_discovery ,check_51cmd_start_discovery 
+7bd5 c0017c04 beq bt_cmd_stop_discovery ,check_51cmd_stop_discovery 
+7bd6 c001fc0a beq bt_cmd_reconnect ,check_51cmd_reconnect 
+7bd7 c003fc0f beq bt_cmd_enter_sniff_subrating ,check_51cmd_enter_sniff_subrating 
+7bd8 c0047c10 beq bt_cmd_exit_sniff_subrating ,check_51cmd_exit_sniff_subrating 
+7bd9 c004fc11 beq bt_cmd_sniff_test ,check_51cmd_sniff_test 
+7bda c005fc14 beq bt_cmd_start_inquiry ,check_51cmd_inq 
+7bdb c0067c15 beq bt_cmd_stop_inquiry ,check_51cmd_stop_inq 
+7bdc c006fc16 beq bt_cmd_start_adv ,check_51cmd_adv 
+7bdd c0077c1c beq bt_cmd_stop_adv ,check_51cmd_stop_adv 
+7bde c007fc21 beq bt_cmd_start_direct_adv ,check_51cmd_direct_adv 
+7bdf c0087c27 beq bt_cmd_stop_direct_adv ,check_51cmd_stop_direct_adv 
+7be0 c00b7c31 beq bt_cmd_le_start_conn ,check_51cmd_le_start_con 
+7be1 c00bfc34 beq bt_cmd_le_start_scan ,check_51cmd_start_scan 
+7be2 c00c7c36 beq bt_cmd_le_stop_scan ,check_51cmd_stop_scan 
+7be3 c00cfc39 beq bt_cmd_enter_hibernate ,check_51cmd_hibernate 
+7be4 c00dfc3d beq bt_cmd_le_smp_security_request ,check_51cmd_le_smp_sec_req 
+7be5 c00f7c47 beq bt_cmd_bb_reconn_cancel ,check_51cmd_bb_reconn_cancel 
+7be6 67e20a95 store 1 ,mem_fifo_temp 
+7be7 4751c034 bpatchx patch34_3 ,mem_patch34 
+7be8 2040669e call lmo_fifo_check 
+7be9 243a7bfd nbranch check_51cmd_restore ,blank 
+
+check_51cmd_once_continue:
+7bea 6fe20a95 fetch 1 ,mem_fifo_temp 
+7beb c584fbf8 bmark0 mark_context ,check_51cmd_check_idle 
+7bec c0027c0c beq bt_cmd_disconnect ,check_51cmd_disconnect 
+7bed c002d0fd beq bt_cmd_enter_sniff ,cmd_in_sniff 
+7bee c003510c beq bt_cmd_exit_sniff ,cmd_exit_sniff 
+7bef c0057c12 beq bt_cmd_set_pin_code ,check_51cmd_pincode 
+7bf0 c008fc2c beq bt_cmd_le_disconnect ,check_51cmd_le_disconnect 
+7bf1 c0097c30 beq bt_cmd_le_update_conn ,check_51cmd_ble_update_connect_param 
+7bf2 c00efc3e beq bt_cmd_role_switch ,check_51cmd_role_switch 
+7bf3 c00fe7fd beq bt_cmd_store_reconn_info_le ,eeprom_store_le_reconn_info 
+7bf4 c01067fd beq bt_cmd_store_reconn_info_bt ,eeprom_store_bd_reconn_info 
+7bf5 c010fc49 beq bt_cmd_dhkey_not_accept ,check_51cmd_dhkey_not_accept 
+7bf6 c012e7fd beq bt_cmd_store_reconn_info ,check_51cmd_store_reconn_info 
+7bf7 20600000 rtn 
+
+check_51cmd_check_idle:
+7bf8 67e20a95 store 1 ,mem_fifo_temp 
+7bf9 2040424e call context_check_idle 
+7bfa 2022fbfd branch check_51cmd_restore ,zero 
+7bfb 20404256 call context_search_plap 
+7bfc 24628000 nrtn zero 
+
+check_51cmd_restore:
+7bfd 700a8c01 jam ipc_skip_continue_process ,mem_ipc_skip_continue_proc 
+7bfe 20207bb4 branch ui_ipc_send_cmd 
+
+check_51cmd_start_discovery:
+7bff 6fe44652 fetch 2 ,mem_ui_state_map 
+7c00 79207e06 set1 ui_state_bt_discovery 
+7c01 67e44652 store 2 ,mem_ui_state_map 
+7c02 70409303 jam 3 ,mem_scan_mode 
+7c03 20600000 rtn 
+
+check_51cmd_stop_discovery:
+7c04 70465000 jam 0 ,mem_hid_handshake_timer_count 
+7c05 70409300 jam 0 ,mem_scan_mode 
+7c06 6fe44652 fetch 2 ,mem_ui_state_map 
+7c07 793ffe06 set0 ui_state_bt_discovery 
+7c08 67e44652 store 2 ,mem_ui_state_map 
+7c09 20600000 rtn 
+
+check_51cmd_reconnect:
+7c0a 7041cf05 jam hci_cmd_create_conn ,mem_hci_cmd 
+7c0b 20600000 rtn 
+
+check_51cmd_disconnect:
+7c0c 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+7c0d 7004c613 jam other_end_terminated ,mem_disconn_reason_send 
+7c0e 20600000 rtn 
+
+check_51cmd_enter_sniff_subrating:
+7c0f 20600000 rtn 
+
+check_51cmd_exit_sniff_subrating:
+7c10 20600000 rtn 
+
+check_51cmd_sniff_test:
+7c11 20600000 rtn 
+
+check_51cmd_pincode:
+7c12 7004d002 jam pincode_state_pincode_ready ,mem_pincode_state 
+7c13 202050f0 branch cmd_pair 
+
+check_51cmd_inq:
+7c14 20600000 rtn 
+
+check_51cmd_stop_inq:
+7c15 20600000 rtn 
+
+check_51cmd_adv:
+7c16 70434001 jam on ,mem_le_adv_enable 
+7c17 70445600 jam adv_ind ,mem_le_adv_type 
+7c18 6fe44652 fetch 2 ,mem_ui_state_map 
+7c19 79207e0b set1 ui_state_ble_adv ,pdata 
+7c1a 67e44652 store 2 ,mem_ui_state_map 
+7c1b 20600000 rtn 
+
+check_51cmd_stop_adv:
+7c1c 6fe44652 fetch 2 ,mem_ui_state_map 
+7c1d 793ffe0b set0 ui_state_ble_adv ,pdata 
+7c1e 67e44652 store 2 ,mem_ui_state_map 
+7c1f 70434000 jam off ,mem_le_adv_enable 
+7c20 20600000 rtn 
+
+check_51cmd_direct_adv:
+7c21 70434001 jam on ,mem_le_adv_enable 
+7c22 70445601 jam adv_direct_ind ,mem_le_adv_type 
+7c23 6fe44652 fetch 2 ,mem_ui_state_map 
+7c24 79207e0b set1 ui_state_ble_adv ,pdata 
+7c25 67e44652 store 2 ,mem_ui_state_map 
+7c26 20600000 rtn 
+
+check_51cmd_stop_direct_adv:
+7c27 6fe44652 fetch 2 ,mem_ui_state_map 
+7c28 793ffe0b set0 ui_state_ble_adv ,pdata 
+7c29 67e44652 store 2 ,mem_ui_state_map 
+7c2a 70434000 jam off ,mem_le_adv_enable 
+7c2b 20600000 rtn 
+
+check_51cmd_le_disconnect:
+7c2c 58000014 setarg 20 
+7c2d 67e40469 store 2 ,mem_le_superto 
+7c2e 67e4448c store 2 ,mem_le_init_superto 
+7c2f 20206073 branch le_send_terminate_ind_user_terminated 
+
+check_51cmd_ble_update_connect_param:
+7c30 20205e9f branch le_l2cap_tx_update_req 
+
+check_51cmd_le_start_con:
+7c31 70433b01 jam on ,mem_le_scan_enable 
+7c32 7041cf1b jam hci_cmd_le_create_conn ,mem_hci_cmd 
+7c33 20600000 rtn 
+
+check_51cmd_start_scan:
+7c34 70433b01 jam on ,mem_le_scan_enable 
+7c35 20600000 rtn 
+
+check_51cmd_stop_scan:
+7c36 70433b00 jam off ,mem_le_scan_enable 
+7c37 7041cf00 jam 0 ,mem_hci_cmd 
+7c38 20600000 rtn 
+
+check_51cmd_hibernate:
+7c39 6fe441ec fetch 2 ,mem_cb_before_hibernate 
+7c3a 20407d77 call callback_func 
+7c3b 20407bbd call ui_ipc_clean_all_fifo 
+7c3c 20204afe branch lpm_hibernate 
+
+check_51cmd_le_smp_sec_req:
+7c3d 20205ee2 branch le_send_smp_security_request 
+
+check_51cmd_role_switch:
+7c3e 70007c34 jam lmp_slot_offset ,mem_lmo_opcode2 
+7c3f 79200003 set1 mark_switch_initiated ,mark 
+7c40 24748000 nrtn master 
+7c41 70452d00 jam switch_flag_init ,mem_switch_flag 
+7c42 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+7c43 6fe2016b fetch 1 ,mem_connection_options 
+7c44 793ffe02 set0 connection_switch ,pdata 
+7c45 67e2016b store 1 ,mem_connection_options 
+7c46 20600000 rtn 
+
+check_51cmd_bb_reconn_cancel:
+7c47 18000e03 force page_length_timer ,queue 
+7c48 20207ce2 branch timer_stop 
+
+check_51cmd_dhkey_not_accept:
+7c49 204066da call tid_set_reply 
+7c4a 70007d41 jam lmp_dhkey_check ,mem_lmi_opcode2 
+7c4b 2020637f branch parse_lmp_dhkey_check_reject 
+
+right_shift_n:
+7c4c 1f267c00 sub loopcnt ,0 ,null 
+7c4d 20628000 rtn zero 
+
+right_shift_n_loop:
+7c4e 1fe37e00 rshift pdata ,pdata 
+7c4f c2007c4e loop right_shift_n_loop 
+7c50 20600000 rtn 
+
+left_shift_n:
+7c51 18007e01 force 1 ,pdata 
+7c52 1f267c00 sub loopcnt ,0 ,null 
+7c53 20628000 rtn zero 
+
+left_shift_n_loop:
+7c54 1fe3fe00 lshift pdata ,pdata 
+7c55 c2007c54 loop left_shift_n_loop 
+7c56 20600000 rtn 
+
+push_stack:
+7c57 18a27e00 deposit contw 
+7c58 67e40ab7 store 2 ,mem_contw 
+7c59 60500a9e storet 8 ,mem_temp 
+7c5a 19627e00 deposit timeup 
+7c5b 67e80aa6 store 4 ,mem_timeup 
+7c5c 20407c60 call push_stack_rega_b_c 
+7c5d 18c27e00 deposit contr 
+7c5e 67e40ab5 store 2 ,mem_contr 
+7c5f 20600000 rtn 
+
+push_stack_rega_b_c:
+7c60 1a227e00 deposit rega 
+7c61 67e80aaa store 4 ,mem_rega 
+7c62 1a427e00 deposit regb 
+7c63 67e80aae store 4 ,mem_regb 
+7c64 1a627e00 deposit regc 
+7c65 67e60ab2 store 3 ,mem_regc 
+7c66 20600000 rtn 
+
+pop_stack:
+7c67 68500a9e fetcht 8 ,mem_temp 
+7c68 6fe80aa6 fetch 4 ,mem_timeup 
+7c69 98001600 iforce timeup 
+7c6a 20407c70 call pop_stack_rega_b_c 
+7c6b 6fe40ab7 fetch 2 ,mem_contw 
+7c6c 98000a00 iforce contw 
+7c6d 6fe40ab5 fetch 2 ,mem_contr 
+7c6e 98000c00 iforce contr 
+7c6f 20600000 rtn 
+
+pop_stack_rega_b_c:
+7c70 6fe80aaa fetch 4 ,mem_rega 
+7c71 98002200 iforce rega 
+7c72 6fe80aae fetch 4 ,mem_regb 
+7c73 98002400 iforce regb 
+7c74 6fe60ab2 fetch 3 ,mem_regc 
+7c75 98002600 iforce regc 
+7c76 20600000 rtn 
+
+get_contw:
+7c77 6fe40ab7 fetch 2 ,mem_contw 
+7c78 1fe20a00 copy pdata ,contw 
+7c79 20600000 rtn 
+
+get_contr:
+7c7a 6fe40ab5 fetch 2 ,mem_contr 
+7c7b 1fe20c00 copy pdata ,contr 
+7c7c 20600000 rtn 
+
+store_contw:
+7c7d 18a27e00 copy contw ,pdata 
+7c7e 67e40ab7 store 2 ,mem_contw 
+7c7f 20600000 rtn 
+
+store_contr:
+7c80 18c27e00 copy contr ,pdata 
+7c81 67e40ab5 store 2 ,mem_contr 
+7c82 20600000 rtn 
+
+save_cont_pointers:
+7c83 18a27e00 copy contw ,pdata 
+7c84 67e40a93 store 2 ,mem_hold_contw 
+7c85 18c27e00 copy contr ,pdata 
+7c86 67e40a91 store 2 ,mem_hold_contr 
+7c87 20600000 rtn 
+
+load_cont_pointers:
+7c88 6fe40a93 fetch 2 ,mem_hold_contw 
+7c89 1fe20a00 copy pdata ,contw 
+7c8a 6fe40a91 fetch 2 ,mem_hold_contr 
+7c8b 1fe20c00 copy pdata ,contr 
+7c8c 20600000 rtn 
+
+memcpy96:
+7c8d 20407c98 call memcpy32 
+
+memcpy64:
+7c8e 20407c98 call memcpy32 
+7c8f 20207c98 branch memcpy32 
+
+memcpy12:
+7c90 20407c94 call memcpy8 
+
+memcpy4:
+7c91 efe80006 ifetch 4 ,contr 
+7c92 e7e80005 istore 4 ,contw 
+7c93 20600000 rtn 
+
+memcpy8:
+7c94 eff00006 ifetch 8 ,contr 
+7c95 e7f00005 istore 8 ,contw 
+7c96 20600000 rtn 
+
+memcpy48:
+7c97 20407c9a call memcpy16 
+
+memcpy32:
+7c98 20407c94 call memcpy8 
+
+memcpy24:
+7c99 20407c94 call memcpy8 
+
+memcpy16:
+7c9a 20407c94 call memcpy8 
+7c9b 20207c94 branch memcpy8 
+
+delay_10ms:
+7c9c df20000a arg 10 ,loopcnt 
+
+delay_ms_wait:
+7c9d 20002ee0 nop 12000 
+7c9e c2007c9d loop delay_ms_wait 
+7c9f 20600000 rtn 
+
+bn_zero:
+7ca0 18007203 force 3 ,loopcnt 
+
+memset0:
+7ca1 18007e00 force 0 ,pdata 
+
+memset8:
+7ca2 e7f00005 istore 8 ,contw 
+7ca3 c2007ca2 loop memset8 
+7ca4 20600000 rtn 
+
+memset0_8:
+7ca5 18007e00 force 0 ,pdata 
+7ca6 e7f00005 istore 8 ,contw 
+7ca7 20600000 rtn 
+
+memset0_4:
+7ca8 18007e00 force 0 ,pdata 
+7ca9 e7e80005 istore 4 ,contw 
+7caa 20600000 rtn 
+
+clear_mem_256:
+7cab 18007204 force 4 ,loopcnt 
+7cac 20207ca1 branch memset0 
+
+clear_mem_512:
+7cad 18007208 force 8 ,loopcnt 
+7cae 20207ca1 branch memset0 
+
+clear_mem:
+7caf 1f227e00 deposit loopcnt 
+7cb0 207a0000 rtn blank 
+7cb1 58000000 setarg 0 
+
+clear_mem_loop:
+7cb2 e7e20005 istore 1 ,contw 
+7cb3 c2007cb2 loop clear_mem_loop 
+7cb4 20600000 rtn 
+
+clear_temp_block:
+7cb5 df200020 arg 32 ,loopcnt 
+7cb6 d8a00abe arg mem_temp_block0 ,contw 
+7cb7 20207caf branch clear_mem 
+
+xor_loop:
+7cb8 efe80013 ifetch 4 ,regc 
+7cb9 e8480011 ifetcht 4 ,rega 
+7cba 9842fe00 ixor temp ,pdata 
+7cbb e7e80005 istore 4 ,contw 
+7cbc 1a20a204 increase 4 ,rega 
+7cbd 1a60a604 increase 4 ,regc 
+7cbe c2007cb8 loop xor_loop 
+7cbf 20600000 rtn 
+
+inverse_data:
+7cc0 47524034 bpatchx patch34_4 ,mem_patch34 
+7cc1 1f227e00 copy loopcnt ,pdata 
+7cc2 1fe67c01 sub pdata ,1 ,null 
+7cc3 20610000 rtn positive 
+7cc4 9a20a400 iadd rega ,regb 
+7cc5 1a40a5ff increase -1 ,regb 
+7cc6 1f237200 rshift loopcnt ,loopcnt 
+
+inverse_loop:
+7cc7 e8420011 ifetcht 1 ,rega 
+7cc8 efe20012 ifetch 1 ,regb 
+7cc9 e7e20011 istore 1 ,rega 
+7cca e0420012 istoret 1 ,regb 
+7ccb 1a40a5ff increase -1 ,regb 
+7ccc 1a20a201 increase 1 ,rega 
+7ccd c2007cc7 loop inverse_loop 
+7cce 20600000 rtn 
+
+memcpy_fast:
+7ccf 1f227e00 deposit loopcnt 
+7cd0 207a0000 rtn blank 
+
+memcpy_fast_loop:
+7cd1 1f20f3f8 increase -8 ,loopcnt 
+7cd2 20417c94 call memcpy8 ,positive 
+7cd3 20628000 rtn zero 
+7cd4 20217cd1 branch memcpy_fast_loop ,positive 
+7cd5 1f20f208 increase 8 ,loopcnt 
+
+memcpy_fast_loop_four:
+7cd6 1f20f3fc increase -4 ,loopcnt 
+7cd7 20417c91 call memcpy4 ,positive 
+7cd8 20628000 rtn zero 
+7cd9 20217cd6 branch memcpy_fast_loop_four ,positive 
+7cda 1f20f204 increase 4 ,loopcnt 
+7cdb 20207cdc branch memcpy 
+
+memcpy:
+7cdc 1f227e00 deposit loopcnt 
+7cdd 207a0000 rtn blank 
+
+memcpy_loop:
+7cde efe20006 ifetch 1 ,contr 
+7cdf e7e20005 istore 1 ,contw 
+7ce0 c2007cde loop memcpy_loop 
+7ce1 20600000 rtn 
+
+timer_stop:
+7ce2 58000000 setarg 0 
+
+timer_init:
+7ce3 1c430400 rshift clkn_bt ,temp 
+7ce4 60484094 storet 4 ,mem_last_clkn 
+7ce5 d8a0419e arg mem_timers ,contw 
+7ce6 98000400 iforce temp 
+7ce7 18e3fe00 lshift queue ,pdata 
+7ce8 98a08a00 iadd contw ,contw 
+7ce9 e0440005 istoret 2 ,contw 
+7cea 4752c034 bpatchx patch34_5 ,mem_patch34 
+7ceb 20600000 rtn 
+
+timer_check_timeout:
+7cec d9600800 arg 0x800 ,timeup 
+7ced 19701600 lshift16 timeup ,timeup 
+7cee 9960fe00 iadd timeup ,pdata 
+7cef 20600000 rtn 
+
+timer_reinit:
+7cf0 d8e00000 arg 0 ,queue 
+
+timer_check:
+7cf1 47534034 bpatchx patch34_6 ,mem_patch34 
+7cf2 68484094 fetcht 4 ,mem_last_clkn 
+7cf3 1c437e00 rshift clkn_bt ,pdata 
+7cf4 67e84094 store 4 ,mem_last_clkn 
+7cf5 98467c00 isub temp ,null 
+7cf6 24417cec ncall timer_check_timeout ,positive 
+7cf7 98461600 isub temp ,timeup 
+7cf8 19620400 copy timeup ,temp 
+7cf9 d8c0419e arg mem_timers ,contr 
+7cfa 18c20a00 copy contr ,contw 
+7cfb df200010 arg 16 ,loopcnt 
+
+timer_loop:
+7cfc efe40006 ifetch 2 ,contr 
+7cfd 98467e00 isub temp ,pdata 
+7cfe 20217d00 branch timer_counting ,positive 
+7cff 18007e00 force 0 ,pdata 
+
+timer_counting:
+7d00 e7e40005 istore 2 ,contw 
+7d01 c2007cfc loop timer_loop 
+7d02 d8c0419e arg mem_timers ,contr 
+7d03 18e3fe00 lshift queue ,pdata 
+7d04 98c08c00 iadd contr ,contr 
+7d05 efe40006 ifetch 2 ,contr 
+7d06 20600000 rtn 
+
+clk_add:
+7d07 98408400 iadd temp ,temp 
+7d08 18427200 copy temp ,loopcnt 
+7d09 58000ea6 setarg 3750 
+7d0a 9f267e00 isub loopcnt ,pdata 
+7d0b 20610000 rtn positive 
+7d0c 1fe67e00 sub pdata ,0 ,pdata 
+7d0d 18510400 rshift16 temp ,temp 
+7d0e 18408401 increase 1 ,temp 
+7d0f 18500400 lshift16 temp ,temp 
+7d10 98418400 ior temp ,temp 
+7d11 20600000 rtn 
+
+clk_diff_rt:
+7d12 20407d14 call clk_diff 
+7d13 20207d1e branch clk2rt 
+
+clk_diff:
+7d14 78547c00 disable user 
+7d15 98467e00 isub temp ,pdata 
+7d16 20217d19 branch clk_diff_pos ,positive 
+7d17 78347c00 enable user 
+7d18 1fe67e00 sub pdata ,0 ,pdata 
+
+clk_diff_pos:
+7d19 c4078000 rtnbit0 15 
+7d1a d85f0ea6 arg -61786 ,temp 
+7d1b 9840fe00 iadd temp ,pdata 
+7d1c 793ffe40 set0 64 ,pdata 
+7d1d 20600000 rtn 
+
+clk2rt:
+7d1e 98000c00 iforce contr 
+7d1f 1ff17e00 rshift16 pdata ,pdata 
+7d20 d8400ea6 arg 3750 ,temp 
+7d21 984ffe00 imul32 temp ,pdata 
+7d22 98c0fe00 iadd contr ,pdata 
+7d23 20600000 rtn 
+
+clk2lpo:
+7d24 1fed7e00 lshift8 pdata ,pdata 
+7d25 1ff27e00 lshift4 pdata ,pdata 
+7d26 68464170 fetcht 3 ,mem_clks_per_lpo 
+7d27 9846fc00 idiv temp 
+7d28 20407d61 call wait_div_end 
+7d29 18078400 quotient temp 
+7d2a 20600000 rtn 
+
+clk2bt:
+7d2b d8400ea6 arg 3750 ,temp 
+7d2c 9846fc00 idiv temp 
+7d2d 20407d61 call wait_div_end 
+7d2e 1807fe00 quotient pdata 
+7d2f 1ff07e00 lshift16 pdata ,pdata 
+7d30 18070400 remainder temp 
+7d31 98418400 ior temp ,temp 
+7d32 20600000 rtn 
+
+string2dec_from_uart:
+7d33 d8400000 arg 0 ,temp 
+
+string2dec_from_uart_done:
+7d34 18422600 copy temp ,regc 
+7d35 efe20003 ifetch 1 ,contru 
+7d36 20407d3f call uchar2dialog 
+7d37 1a620400 copy regc ,temp 
+7d38 20407d70 call swap 
+7d39 da40000a arg 10 ,regb 
+7d3a 9a4ffe00 imul32 regb ,pdata 
+7d3b 9840fe00 iadd temp ,pdata 
+7d3c 1fe20400 copy pdata ,temp 
+7d3d c2007d34 loop string2dec_from_uart_done 
+7d3e 20600000 rtn 
+
+uchar2dialog:
+7d3f d840003a arg 0x3a ,temp 
+7d40 98467c00 isub temp ,null 
+7d41 24217d48 nbranch uchar2dialog_number ,positive 
+7d42 d8400061 arg 0x61 ,temp 
+7d43 98467c00 isub temp ,null 
+7d44 20217d4b branch uchar2dialog_a2f ,positive 
+7d45 d8400037 arg 0x37 ,temp 
+7d46 98467e00 isub temp ,pdata 
+7d47 20600000 rtn 
+
+uchar2dialog_number:
+7d48 d8400030 arg 0x30 ,temp 
+7d49 98467e00 isub temp ,pdata 
+7d4a 20600000 rtn 
+
+uchar2dialog_a2f:
+7d4b d8400057 arg 0x57 ,temp 
+7d4c 98467e00 isub temp ,pdata 
+7d4d 20600000 rtn 
+
+pn9:
+7d4e 18426000 copy temp ,alarm 
+7d4f 580001ff setarg 0x1ff 
+7d50 18002400 force 0 ,regb 
+
+pn9_loop:
+7d51 1fe92200 rshift3 pdata ,rega 
+7d52 1a232200 rshift rega ,rega 
+7d53 9a22a200 ixor rega ,rega 
+7d54 2a2ffe00 isolate1 0 ,rega 
+7d55 7920fe09 setflag true ,9 ,pdata 
+7d56 18430400 rshift temp ,temp 
+7d57 2feffe00 isolate1 0 ,pdata 
+7d58 79208407 setflag true ,7 ,temp 
+7d59 1fe37e00 rshift pdata ,pdata 
+7d5a 1a40a401 increase 1 ,regb 
+7d5b 2a400e00 compare 0 ,regb ,0x7 
+7d5c 2420fd51 nbranch pn9_loop ,true 
+7d5d e0420005 istoret 1 ,contw 
+7d5e c2007d51 loop pn9_loop 
+7d5f 1e020400 copy alarm ,temp 
+7d60 20600000 rtn 
+
+wait_div_end:
+7d61 207a8000 rtn modone 
+7d62 20207d61 branch wait_div_end 
+
+compare_loop:
+
+string_compare:
+7d63 efe20011 ifetch 1 ,rega 
+7d64 e8420012 ifetcht 1 ,regb 
+7d65 98467c00 isub temp ,null 
+7d66 24628000 nrtn zero 
+7d67 1a20a201 increase 1 ,rega 
+7d68 1a40a401 increase 1 ,regb 
+7d69 c2007d63 loop string_compare 
+7d6a 18007c00 force 0 ,null 
+7d6b 20600000 rtn 
+
+ceiling:
+7d6c 98467c00 isub temp ,null 
+7d6d 24610000 nrtn positive 
+7d6e 18427e00 deposit temp 
+7d6f 20600000 rtn 
+
+swap:
+7d70 9840fe00 iadd temp ,pdata 
+7d71 98460400 isub temp ,temp 
+7d72 98467e00 isub temp ,pdata 
+7d73 20600000 rtn 
+
+clean_mem:
+7d74 df200200 arg 0x200 ,loopcnt 
+7d75 d8a04000 arg 0x4000 ,contw 
+7d76 20207ca1 branch memset0 
+
+callback_func:
+7d77 207a0000 rtn blank 
+7d78 1fe27a00 copy pdata ,pc 
+
+ice_break:
+7d79 70820301 hjam 0x1 ,core_ice_ctrl 
+7d7a 20600000 rtn 
+
+ice_setbp:
+7d7b 67e48205 hstore 2 ,core_ice_break0 
+7d7c 6fe28203 hfetch 1 ,core_ice_ctrl 
+7d7d 79207e04 set1 4 ,pdata 
+7d7e 67e28203 hstore 1 ,core_ice_ctrl 
+7d7f 20600000 rtn 
+
+ice_setbp2:
+7d80 67e48207 hstore 2 ,core_ice_break1 
+7d81 6fe28203 hfetch 1 ,core_ice_ctrl 
+7d82 79207e06 set1 6 ,pdata 
+7d83 67e28203 hstore 1 ,core_ice_ctrl 
+7d84 20600000 rtn 
+
+ice_set_write_bp:
+7d85 67e48205 hstore 2 ,core_ice_break0 
+7d86 70820330 hjam 0x30 ,core_ice_ctrl 
+7d87 20600000 rtn 
+
+test_no_white:
+7d88 6fe28043 hfetch 1 ,core_config 
+7d89 79207e04 set1 whiteoff_bit ,pdata 
+7d8a 67e28043 hstore 1 ,core_config 
+7d8b 20600000 rtn 
+
+test_enable_white:
+7d8c 6fe28043 hfetch 1 ,core_config 
+7d8d 793ffe04 set0 whiteoff_bit ,pdata 
+7d8e 67e28043 hstore 1 ,core_config 
+7d8f 20600000 rtn 
+
+fifo_in:
+7d90 4753c034 bpatchx patch34_7 ,mem_patch34 
+7d91 e8500011 ifetcht util_fifo_len ,rega 
+7d92 18417eff and temp ,0xff ,pdata 
+7d93 243a7d96 nbranch fifo_in_push ,blank 
+7d94 184cfe00 rshift8 temp ,pdata 
+7d95 e7f00011 istore util_fifo_len ,rega 
+
+fifo_in_push:
+7d96 1a20a207 increase util_fifo_len + util_fifo_offset ,rega 
+7d97 efe20011 ifetch 1 ,rega 
+7d98 243a4a8b nbranch assert ,blank 
+7d99 6fe20a95 fetch 1 ,mem_fifo_temp 
+7d9a e7e20011 istore 1 ,rega 
+7d9b 20600000 rtn 
+
+fifo_out:
+7d9c 47544035 bpatchx patch35_0 ,mem_patch35 
+7d9d df200008 arg util_fifo_len ,loopcnt 
+7d9e eff00011 ifetch util_fifo_len ,rega 
+7d9f 207a0000 rtn blank 
+
+fifo_out_loop:
+7da0 efe20011 ifetch 1 ,rega 
+7da1 243a7da5 nbranch fifo_out_end ,blank 
+7da2 1a20a201 increase 1 ,rega 
+7da3 c2007da0 loop fifo_out_loop 
+7da4 20204a8b branch assert 
+
+fifo_out_end:
+7da5 d8400000 arg 0 ,temp 
+7da6 e0420011 istoret 1 ,rega 
+7da7 20600000 rtn 
+
+fifo_is_empty:
+7da8 eff00011 ifetch util_fifo_len ,rega 
+7da9 20600000 rtn 
+
+fifo_is_full:
+7daa efe20011 ifetch 1 ,rega 
+7dab 20600000 rtn 
+
+fifo_is_near_full:
+7dac efe40011 ifetch 2 ,rega 
+7dad 20600000 rtn 
+
+fifo_content_count:
+7dae d8400000 arg 0 ,temp 
+
+fifo_content_count_loop:
+7daf 6fe20006 fetch 1 ,contr 
+7db0 c2007daf loop fifo_content_count_loop ,blank 
+7db1 18408401 increase 1 ,temp 
+7db2 c2007daf loop fifo_content_count_loop 
+7db3 18427e00 copy temp ,pdata 
+7db4 20600000 rtn 
+
+not_greater_than:
+7db5 98467c00 isub temp ,null 
+7db6 24610000 nrtn positive 
+7db7 18427e00 copy temp ,pdata 
+7db8 20600000 rtn 
+
+disable_positive:
+7db9 18007dff force -1 ,null 
+7dba 20600000 rtn 
+
+enable_positive:
+
+disable_zero:
+7dbb 18007c01 force 1 ,null 
+7dbc 20600000 rtn 
+
+enable_zero:
+7dbd 18007c00 force 0 ,null 
+7dbe 20600000 rtn 
+
+enable_user:
+7dbf 78347c00 enable user 
+7dc0 20600000 rtn 
+
+disable_user:
+7dc1 78547c00 disable user 
+7dc2 20600000 rtn 
+
+enable_user2:
+7dc3 78367c00 enable user2 
+7dc4 20600000 rtn 
+
+disable_user2:
+7dc5 78567c00 disable user2 
+7dc6 20600000 rtn 
+
+disable_blank:
+7dc7 58000001 setarg 1 
+7dc8 20600000 rtn 
+
+enable_blank:
+7dc9 58000000 setarg 0 
+7dca 20600000 rtn 
+
+reverse_byte:
+7dcb 1f227e00 copy loopcnt ,pdata 
+7dcc 207a0000 rtn blank 
+7dcd 18c27e00 copy contr ,pdata 
+7dce 9f20fe00 iadd loopcnt ,pdata 
+7dcf 1fe0ffff increase -1 ,pdata 
+7dd0 1fe20c00 copy pdata ,contr 
+
+reverse_loop:
+7dd1 efe20006 ifetch 1 ,contr 
+7dd2 18c08dfe increase -2 ,contr 
+7dd3 e7e20005 istore 1 ,contw 
+7dd4 c2007dd1 loop reverse_loop 
+7dd5 20600000 rtn 
+
Index: ModuleDemo/BlueTooth/print/branches/jingchen/patch/patch.prog
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/patch/patch.prog	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/patch/patch.prog	(working copy)
@@ -0,0 +1,1439 @@
+
+
+/******************************************/
+/**************   Start   *****************/
+/******************************************/
+
+p_start:
+	bbit1 8,pf_patch_ext
+	beq patch00_1,p_soft_reset
+	beq patch0c_0,p_process_dmh_data_end
+	beq patch10_5,p_shutdown_radio
+	beq patch11_1,p_set_freq_tx
+//	beq patch11_2,p_initialize_radio_cont
+	beq patch11_5,p_set_rccal
+	beq patch12_4,p_ahead_window
+	beq patch14_2,p_init_param
+	beq patch14_3,p_lpm_adjust_clk
+	beq patch15_1,p_lpm_dispatch_next
+	beq patch15_4,p_lpm_unconn_nossp
+//	beq patch16_1,p_lpm_check_wake_lock
+	beq patch17_0,p_module_init
+	beq patch17_3,p_module_hci_cmd_control
+	beq patch17_4,p_module_hci_cmd_transmit_le_notify
+	beq patch18_7,p_l2cap_process_one_signal
+	beq patch1a_5,p_ml2cap_call_proc_signal
+	beq patch1d_3,p_le_init_conn
+	beq patch1e_1,p_le_slave_dispatch
+	beq patch1e_5,p_le_slave_more_data
+	branch assert
+pf_patch_ext:
+	beq patch20_3,p_le_receive_skip
+	beq patch20_5,p_le_transmit_receive_sifs
+	beq patch20_6,p_le_transmit
+	beq patch20_7,p_le_transmit0
+	beq patch21_0,p_le_send_adv_ind
+	beq patch21_3,p_le_send_scan_response
+	beq patch22_3,p_le_acknowledge
+	beq patch22_4,p_le_check_wak
+	beq patch23_4,p_le_prepare_tx
+	beq patch23_6,p_le_send_packet
+	beq patch23_7,p_le_parse
+	beq patch24_2,p_le_parse_l2cap	
+	beq patch26_2,p_le_lpm_set_mult
+	beq patch27_2,p_parse_lmp
+
+	beq patch27_6,p_send_lmp
+	beq patch28_1,p_ssp_disable
+	beq patch2a_2,p_parse_dlci0_rp
+	beq patch31_5,p_le_encrypt
+	beq patch33_1,p_sp_initialize_256
+	branch assert
+
+
+
+p_initialize_radio_cont:
+	call lpm_cal_xtal_startup
+	call switchto_dpllclk
+	arg 5,loopcnt
+	call delay_ms_wait
+	branch initialize_radio_cont+3
+
+
+
+p_set_rccal:
+	fetch 1,mem_rf_rccal
+	set0 5,pdata
+	sub pdata,0x09,null
+	branch p_reset_mem_rf_rccal_min09,positive
+	sub pdata,0x0f,null
+	nbranch p_reset_mem_rf_rccal_max0f,positive
+	branch set_rccal+1
+
+p_reset_mem_rf_rccal_min09:
+	jam 0x09,mem_rf_rccal
+	branch set_rccal+1
+p_reset_mem_rf_rccal_max0f:
+	jam 0x0f,mem_rf_rccal
+	branch set_rccal+1
+
+	
+p_ml2cap_call_proc_signal:
+	call l2cap_malloc_signal_channel
+	force 0,regB
+	call l2cap_get_signal_tx_payload
+	copy pdata,contw
+	fetch 2,mem_l2cap_rx_pkt_length
+	copy pdata,regC
+	fetch 2,mem_l2cap_payload_ptr
+	iforce contr
+p_ml2cap_proc_one_comm_loop:
+	call p_ml2cap_proc_one_comm
+	increase -4,regC
+	nbranch p_ml2cap_proc_one_comm_loop,zero
+	copy regB,temp
+	call ml2cap_send_signal
+	branch l2cap_rx_reset_state
+
+p_ml2cap_proc_one_comm:
+	ifetch 1,contr
+	beq signal_echo_req,p_l2cap_proc_signal_echo_req
+	branch ml2cap_proc_one_comm+1
+
+p_l2cap_proc_signal_echo_req:
+	copy contr,rega
+	arg 0x0f,addhi
+	jam 0x3f,0x18700
+	jam 0x3e,0x18700
+	arg 0,addhi
+	copy rega,contr
+	branch l2cap_proc_signal_echo_req
+	
+
+
+p_l2cap_process_one_signal:
+	ifetch 1,contr
+	beq signal_echo_req,p_l2cap_proc_signal_echo_req
+	branch l2cap_process_one_signal+2
+	
+p_process_dmh_data_end:
+	fetch 1,mem_l2cap_rxbuff_new
+	beq 1,p_process_l2cap_pass_crc_buff1
+	beq 2,p_process_l2cap_pass_crc_buff2
+	branch assert
+
+p_process_l2cap_pass_crc_buff1:
+	fetch 2,mem_l2cap_rxbuff1_len
+	fetcht 2,mem_len
+	iadd temp,pdata
+	store 2,mem_l2cap_rxbuff1_len
+	sub pdata,0,null
+	branch assert,zero
+	fetcht 2,mem_l2cap_rxbuff1// l2cap payload length
+	increase 4,temp
+	isub temp,null
+	call l2cap_buff1_inuse,zero //l2cap pkts not ended
+	branch process_dmh_cont
+	
+p_process_l2cap_pass_crc_buff2:
+	fetch 2,mem_l2cap_rxbuff2_len
+	fetcht 2,mem_len
+	iadd temp,pdata
+	store 2,mem_l2cap_rxbuff2_len
+	sub pdata,0,null
+	branch assert,zero
+	fetcht 2,mem_l2cap_rxbuff2// l2cap payload length 
+	add temp,4,temp
+	isub temp,null
+	call l2cap_buff2_inuse,zero //l2cap pkts not ended
+	branch process_dmh_cont
+
+	
+p_le_slave_dispatch:
+//	bpatch patch1e_1,mem_patch1e
+	set0 mark_buf_full,mark
+	jam 0,mem_le_md_count
+ifdef SECURE_CONNECTION
+	call sp_calc_sequence_256
+	call le_secure_connect_sm
+endif
+	disable attempt
+	call le_supervision_update
+	branch le_slave_disconn,positive
+	call check_ble_disabled
+	call le_setup
+	call le_receive_slave
+	nbranch le_slave_unsync,sync	// vol.6 part B 4.5.1 respond even crc error
+	call p_check_ipcbuf_size,match
+	fetch 1,mem_ipcbuf_bt2m0_flag
+	ncall p_buf_full,blank
+	call le_got_first_packet
+	branch le_slave_match,match
+	bmark1 mark_buf_full,le_slave_match
+	branch le_slave_cont	
+p_buf_full:
+	set1 mark_buf_full,mark
+	disable match
+	rtn
+p_le_slave_more_data:
+//	bpatch patch1e_5,mem_patch1e
+	enable attempt
+	call le_transmit_receive_sifs_notx
+	call p_check_ipcbuf_size,match
+	fetch 1,mem_ipcbuf_bt2m0_flag
+	ncall p_buf_full,blank
+	branch le_slave_match,match
+	bmark1 mark_buf_full,le_slave_match
+	branch le_slave_cont
+p_ahead_window:
+    copy temp,pdata
+    call clk2bt
+    lshift16 bt_clk,pdata
+    set1 44,pdata
+    call clk_diff
+    set0 44,pdata
+    call get_clk
+    call clk_diff
+    rtn user
+    call p_clk2rt
+    branch ahead_window+12
+    
+p_lpm_adjust_clk:
+    deposit clke
+    call p_clk_diff_rt
+    branch lpm_adjust_clk+3
+
+p_lpm_dispatch_next:
+    fetch 2,mem_context + coffset_rx_window
+    rshift pdata,pdata
+    call clk2bt
+    deposit alarm
+    call clk_diff
+    copy clke,temp
+    call p_clk_diff_rt
+    branch lpm_dispatch_next+30
+
+p_clk_diff_rt:
+    call clk_diff
+p_clk2rt:
+    iforce contr
+    set0 16,contr
+    branch clk2rt+1
+
+	
+p_soft_reset:
+	call rfcomm_init
+	call init_lmp
+	call p_ui_init
+	branch soft_reset + 9
+
+p_ui_init:
+	rtn wake
+	branch ui_timer_init
+
+p_shutdown_radio:
+	branch p_shutdown_radio0,is_rx
+	hjam 0xd4, 0x955
+	nop 4
+	hjam 0xd2, 0x955
+	nop 4
+	hjam 0xd1, 0x955
+	nop 4	
+	fetch 1,mem_tx_power
+	beq TX_POWER_0DB,p_shutdown_radio_0db
+	beq TX_POWER_3DB,p_shutdown_radio_3db
+	beq TX_POWER_5DB,p_shutdown_radio_5db
+	beq TX_POWER_f3DB,p_shutdown_radio_f3db
+	beq TX_POWER_f5DB,p_shutdown_radio_f5db
+	beq TX_POWER_PAIR,p_shutdown_radio_pair
+p_shutdown_radio_5db:	
+p_shutdown_radio_0db:
+	hjam 0xd0, 0x955
+	hjam 0xe0, 0x956
+p_shutdown_radio0:
+	force 0x08,radio_ctrl
+	force 0,radio_ctrl
+	disable is_rx
+	disable is_tx
+	pulse packet_end
+	hjam 0x0,rfen_mdm
+	hjam 0x0,rfen_tx
+	hjam 0x0,rfen_rx
+	hjam 0,rfen_sn
+	hjam 0x70,rfen_msc
+	fetch 1,rfen_adc
+	set1 0,pdata
+	store 1,rfen_adc
+	rtn
+	
+p_shutdown_radio_pair:
+p_shutdown_radio_f5db:
+p_shutdown_radio_f3db:
+p_shutdown_radio_3db:
+	hjam 0xd0,0x955
+	hjam 0xc0,0x956
+	branch p_shutdown_radio0
+
+p_set_freq_tx:
+	storet 1,mem_last_freq
+	call set_freq_tx_offset
+	call rf_write_freq
+	setarg param_pll_setup
+	call sleep
+p_txon:	
+	fetch 1,rfen_adc
+	set1 0,pdata
+	store 1,rfen_adc
+	branch txon+1
+
+
+p_init_param:
+	hjam 0x7c,rfen_adc
+	rtn wake
+	setarg 0
+	store 2,mem_tx_len
+	rshift clkn_bt,pdata
+	store 4,mem_last_clkn
+/*
+	hfetch 1,rf_rccal_sel		//0x8953
+	set0 1,pdata
+	hstore 1,rf_rccal_sel
+
+	hfetch 1,rf_rx_vctrl_reg1	//0x894b
+	set1 6,pdata
+	set1 7,pdata
+	hstore 1,rf_rx_vctrl_reg1
+
+	hfetch 1,rf_rx_vctrl_reg2	//0x894c
+	set1 0,pdata
+	set1 1,pdata
+	hstore 1,rf_rx_vctrl_reg2
+
+	hfetch 1,0x895b
+	set1 0,pdata
+	set1 1,pdata
+	set0 2,pdata
+	hstore 1,0x895b
+*/	
+	rtn
+	
+p_lpm_unconn_nossp:
+	branch lpm_unconn_cont				//BT/BLE discover don't infect lpm
+
+p_module_init:
+	setarg p_module_process_bb_event
+	store 2,mem_cb_bb_event_process
+
+	setarg p_module_bb_event_timer
+	store 2,mem_cb_event_timer
+
+	setarg p_module_le_receive_data
+	store 2,mem_cb_att_write
+
+	setarg p_module_lpm_lock
+	store 2,mem_cb_check_wakelock
+
+	setarg p_module_bt_conn_process
+	store 2,mem_cb_bt_process
+
+	setarg p_module_hci_event_receive_spp_data
+	store 2,mem_cb_receive_spp_data
+
+	call module_lpm_uart_init
+	call module_gpio_init
+	call check_module_disabled
+	branch module_hci_event_enter_standby_mode
+
+
+
+	
+
+p_module_process_bb_event:
+	copy regc,pdata
+	beq BT_EVT_SPP_DISCONNECTED,p_module_process_spp_disconnected
+	beq BT_EVT_BB_DISCONNECTED,p_module_process_bb_event_disconned
+	beq BT_EVT_LE_CONNECTED,p_module_process_le_conn
+	branch module_process_bb_event + 1
+	
+
+p_module_process_bb_event_disconned:
+    	jam 0,mem_module_rfcomm_disconnect_count
+	branch module_process_bb_event_disconned
+
+p_module_process_spp_disconnected:
+	fetch 1,mem_rfcomm_lmp_dis_flag
+	ncall p_set_rfcomm_disconnect_count,blank
+	jam 6,mem_module_rfcomm_disconnect_count
+	branch module_process_spp_disconnected
+p_set_rfcomm_disconnect_count:
+	jam 6,mem_module_rfcomm_disconnect_count
+	rtn
+p_module_process_le_conn:
+	call module_clear_recv_confirm_flag
+	branch module_process_le_conn
+
+
+p_module_bb_event_timer:
+	call p_module_rfcomm_disconnect_timer
+	branch module_bb_event_timer
+	
+	
+
+p_module_rfcomm_disconnect_timer:
+	fetch 1,mem_module_rfcomm_disconnect_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_module_rfcomm_disconnect_count
+	nrtn blank
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	rtn
+
+p_module_le_receive_data:
+	call module_check_ble_encrypt_state
+	rtn user
+	copy rega,pdata
+	store 2,mem_module_le_rx_data_address
+	call p_check_ble_40_or_42
+//	copy loopcnt,pdata
+	store 1,mem_module_le_rx_data_len
+	fetcht 2,mem_le_att_handle
+	storet 2,mem_module_le_rx_data_handle
+
+	call le_att_get_handle_info
+	nbranch assert,blank
+	fetch 1,mem_le_cur_uuid_length	//	uuid length
+//	bne 0x02,module_hci_event_receive_le_data
+//	ifetcht 2,contr
+//	setarg CLIENT_CHARACTERTIC_CONFIGURATION
+//	isub temp,null
+//	rtn zero		//filter ccc handle data
+//	branch p_module_hci_event_receive_le_data_notify,zero
+	branch module_hci_event_receive_le_data
+	
+p_check_ble_40_or_42:
+	fetch 1,mem_ble_dle_enable
+	nbranch p_check_ble_40,blank
+p_check_ble_42:
+	copy loopcnt,pdata
+	rtn	
+p_check_ble_40:
+	copy regb,pdata
+	rtn
+	
+
+p_module_lpm_lock:
+	call p_le_check_complete_packet
+	nbranch app_get_lpm_wake_lock,user
+	branch module_lpm_lock
+
+p_module_bt_conn_process:
+	call p_module_spp_enter_sniff
+	branch module_control_air_flow
+
+p_module_spp_enter_sniff:
+	branch module_spp_enter_sniff+1
+
+p_module_hci_event_receive_spp_data:
+	call module_spp_clear_last_transmite_clock
+p_ng_event_receive_spp_data0:
+	jam HCI_EVENT_SPP_DATA_REP,mem_module_uart_opcode
+	fetch 2,mem_current_length
+	rtn blank
+	arg 255,temp
+	call not_greater_than
+	copy pdata,loopcnt
+	fetch 2,mem_current_length
+	isub loopcnt,pdata
+	store 2,mem_current_length
+	copy loopcnt,pdata
+	call module_hci_prepare_tx
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	call uart_copy_tx_bytes_fast
+	copy contr,pdata
+	store 2,mem_rfcomm_uih_payload_ptr
+	call uartd_send
+	branch p_ng_event_receive_spp_data0
+
+
+
+p_module_hci_cmd_control:
+	fetch 1,mem_module_uart_opcode
+	beq HCI_CMD_SLEEP,p_module_hci_cmd_enter_sleep
+	beq HCI_CMD_SET_PAIRING_REQ,p_module_hci_cmd_set_pairing_mode
+	beq HCI_CMD_DELETE_CUSTOMIZE_SERVICE,module_hci_cmd_delete_customize_service
+	beq HCI_CMD_ADD_SERVICE_UUID,module_hci_cmd_add_service_uuid
+	beq HCI_CMD_ADD_CHARACTERISTIC_UUID,module_hci_cmd_add_characteristic_uuid
+	beq HCI_CMD_SET_COD,module_hci_cmd_le_set_adv_data_set_cod
+	beq HCI_CMD_ALL_ROUND,module_hci_cmd_all_round
+//	beq HCI_CMD_SET_VISIBILITY_REQ,p_module_hci_cmd_set_visibility	
+	branch module_hci_cmd_control + 2
+
+p_module_hci_cmd_set_visibility:
+	hfetch 1,0x8950
+	bne 0x7c,p_module_reset_89xx
+	/*
+	hfetch 1,0x8952
+	bne 0x0f,p_module_reset_89xx
+	hfetch 1,0x8955
+	bne 0xd8,p_module_reset_89xx
+	hfetch 1,0x8956
+	bne 0xf0,p_module_reset_89xx
+	*/
+	branch module_hci_cmd_set_visibility
+
+p_module_reset_89xx:
+	hjam 0x7c,0x8950
+	hjam 0x0f,0x8952
+	hjam 0xd8,0x8955
+	hjam 0xf0,0x8956
+	branch module_hci_cmd_set_visibility
+	
+p_module_hci_cmd_set_pairing_mode:
+	copy rega,contru
+	ifetch 1,contru
+	beq PAIRING_PINCODE,module_hci_pairing_pincode_mode
+	beq PAIRING_JUSTWORK,module_hci_pairing_just_work_mode
+	beq PAIRING_PASSKEY,module_hci_pairing_passkey
+	beq PAIRING_CONFIRM,p_module_hci_pairing_numeric_comparison
+	branch module_hci_event_receive_invalid_cmd
+
+p_module_hci_pairing_numeric_comparison:
+	setarg 0x000001
+	branch module_hci_sspairing_mode
+
+module_hci_cmd_delete_customize_service:
+	arg 0x000c,temp
+	call le_att_get_handle_ptr2
+	add contr,-2,contw
+	setarg 0x0000
+	istore 2,contw
+	branch module_hci_event_receive_valid_cmd
+
+module_hci_cmd_add_service_uuid:
+	call module_hci_cmd_add_service_uuid_set_uuid
+	call uart_copy_rx_bytes_len_data
+	setarg 0x0000
+	istore 2,contw
+	branch module_hci_event_uuid_handle
+
+module_hci_cmd_add_characteristic_uuid:
+	ifetch 1,contru	//Characteristic
+	call module_hci_cmd_add_characteristic_uuid_set_handle
+	call module_hci_cmd_add_characteristic_uuid_set_uuid
+	branch module_hci_event_uuid_handle
+
+module_hci_cmd_add_service_uuid_set_uuid:
+	call le_att_creat_new_handle
+	setarg 0x280002
+	istore 3,contw
+	rtn
+
+module_hci_cmd_add_characteristic_uuid_set_handle:
+	store 1,mem_pdatatemp
+	call le_att_creat_new_handle
+	setarg 0x01280302
+	istore 4,contw
+	fetch 1,mem_pdatatemp
+	istore 3,contw
+	rtn
+
+module_hci_cmd_add_characteristic_uuid_set_uuid:
+	call le_att_creat_new_handle
+	call uart_copy_rx_bytes_len_data		//uuid
+	call uart_copy_rx_bytes_len_data		//data
+	setarg 0
+	istore 2,contw
+	increase -1,temp
+	call le_att_get_handle_ptr2
+	add contr,4,contr
+	ifetch 1,contr		//characteristic data
+	bbit1 BIT_CHARACTERISTIC_NOTIFY,module_hci_cmd_add_characteristic_uuid_set_ccc_uuid
+	bbit1 BIT_CHARACTERISTIC_INDICATE,module_hci_cmd_add_characteristic_uuid_set_ccc_uuid
+	increase 1,temp
+	rtn
+
+module_hci_cmd_add_characteristic_uuid_set_ccc_uuid:
+	call le_att_creat_new_handle
+	setarg 0x02290202
+	istore 8,contw
+	increase -1,temp
+	rtn
+
+
+uart_copy_rx_bytes_len_data:
+	ifetch 1,contru
+	copy pdata,loopcnt
+	istore 1,contw
+	branch uart_copy_rx_bytes
+
+
+le_att_creat_new_handle:
+	call le_att_get_last_handle
+	istoret 2,contw
+	rtn
+
+//output:temp:new handle num
+//contr:address write data
+le_att_get_last_handle:
+	fetch 2,mem_ui_le_uuid_table
+	iforce contr
+le_att_get_last_handle_loop:
+	ifetch 2,contr
+	rtn blank
+	add pdata,1,temp
+	ifetch 1,contr
+	iadd contr,contr	
+	ifetch 1,contr			// length
+	iadd contr,contr
+	copy contr,contw
+	branch le_att_get_last_handle_loop
+
+
+//input:temp uuid number
+module_hci_event_uuid_handle:
+	storet 2,mem_temp
+	jam HCI_EVENT_UUID_HANDLE,mem_module_uart_opcode
+	setarg 2
+	call module_hci_prepare_tx
+	fetcht 2,mem_temp
+	istoret 2,contwu
+	branch uartd_send
+
+module_hci_cmd_le_set_adv_data_set_cod:
+	ifetch 3,contru
+	store 3,mem_class
+	branch module_hci_event_receive_valid_cmd
+	
+module_hci_cmd_all_round:
+	ifetch 1,contru
+	beq 0x00,module_hci_cmd_all_round_write
+	beq 0x01,module_hci_cmd_all_round_read
+	beq 0x02,module_hci_cmd_all_round_write_addhi
+	branch module_hci_event_receive_invalid_cmd
+	
+module_hci_cmd_all_round_read:
+	ifetch 2,contru
+	copy pdata,regb
+	ifetch 1,contru
+	copy pdata,rega
+	arg 0x00,temp
+	branch module_hci_event_set_cmd
+
+module_hci_cmd_all_round_write:
+	ifetch 2,contru
+	copy pdata,contw
+	ifetch 1,contru
+	copy pdata,loopcnt
+	call uart_copy_rx_bytes_fast
+	branch module_hci_event_receive_valid_cmd
+
+module_hci_cmd_all_round_write_addhi:
+	ifetch 1,contru
+	copy pdata,addhi
+	branch module_hci_event_receive_valid_cmd
+
+
+p_module_hci_cmd_enter_sleep:
+	call module_hci_event_receive_valid_cmd
+	branch app_enter_hibernate
+
+p_module_hci_cmd_transmit_le_notify:
+	fetch 1,mem_module_flag
+	bbit1 MODULE_RECEIVE_COMPLETE_PREPARE_WRITE_REQ,p_le_send_att_prepare_write_response
+	fetch 1,mem_module_flag
+	rtnbit1 MODULE_RECV_CONFIRM
+	add temp,-3,pdata		//sub handle and opcode
+	arg 200,temp	
+	call not_greater_than
+	fetcht 1,mem_module_hci_notify_len
+	call not_greater_than
+	copy pdata,rega
+	copy temp,pdata
+	isub rega,pdata
+	store 1,mem_module_hci_notify_len
+	fetcht 2,mem_module_hci_notify_handle
+	increase -1,temp
+	call le_att_get_handle_ptr2
+	branch p_module_hci_cmd_transmit_handle_error,blank
+	ifetcht 4,contr		//flag
+	setarg 0x01280302
+	isub temp,null
+	nbranch p_module_hci_cmd_transmit_handle_error,zero
+	ifetch 1,contr			//Characteristic
+	bbit1 BIT_CHARACTERISTIC_INDICATE,p_module_hci_cmd_transmit_le_indicate
+	bbit1 BIT_CHARACTERISTIC_NOTIFY,module_hci_cmd_transmit_le_notify + 13
+	branch p_module_hci_cmd_transmit_handle_error
+
+p_module_hci_cmd_transmit_le_indicate:
+	call module_set_recv_confirm_flag
+	fetcht 2,mem_module_hci_notify_handle
+	call le_att_malloc_tx_indication
+	branch module_hci_cmd_transmit_le_notify+15
+
+p_module_hci_cmd_transmit_handle_error:
+	jam 0,mem_module_hci_notify_len
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet 
+	call module_clear_le_tx_data_flag
+	branch module_hci_event_receive_invalid_cmd
+
+p_le_init_conn:
+	fetch 1,mem_ble_dle_enable
+	nbranch le_init_conn+1,blank
+
+	call le_init_conn+1
+	jam 1,mem_le_txheader_temp
+	jam 0,mem_le_txlen_temp
+	setarg 0
+	store 8,mem_le_buff_len
+	setarg 27
+	store 2,mem_module_master_rx_max
+	rtn
+
+p_le_receive_skip:
+	call save_rssi
+	enable enable_white
+	enable enable_crc
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	store 1,mem_le_rxbuf
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	copy pdata,loopcnt
+	branch lerx_nopayload,blank
+	branch lerx_loop
+
+p_le_transmit_receive_sifs:
+	call le_transmit
+	call set_sync_on
+	fetcht 1,mem_last_freq
+	call set_freq_rx
+	nop 1500
+	call rf_rx_enable
+	enable swfine
+	arg 5500,timeup 
+	branch le_receive_rxon
+
+p_le_transmit:
+	call le_prep
+	call p_letx_setfreq
+	branch le_transmit0
+
+p_letx_setfreq:
+	branch p_txon,match
+	bmark1 mark_buf_full,p_txon
+	branch letx_setfreq+1
+
+p_le_transmit0:
+	fetch 1,mem_ble_dle_enable
+	nbranch le_transmit0+12,blank
+	
+	fetch 1,mem_le_txheader_temp
+	inject mod,8
+	ifetch 1,contr
+	copy pdata,loopcnt
+	inject mod,8
+	branch letr_nopayload,zero
+	branch letr_loop
+
+p_le_send_adv_ind:
+	fetch 1,mem_ble_dle_enable
+	nbranch le_send_adv_ind+1,blank
+
+	fetch 1,mem_le_adv_type
+	beq ADV_DIRECT_IND,le_send_adv_direct_ind
+	fetch 1,mem_le_adv_own_addr_type
+	lshift4 pdata,pdata
+	lshift2 pdata,pdata
+	store 1,mem_le_txheader_temp
+	fetcht 1,mem_le_adv_data_len
+	add temp,6,pdata
+	store 1,mem_le_txlen_temp
+	fetch 6,mem_le_lap
+	store 6,mem_le_txpayload_temp
+	copy temp,loopcnt
+	arg mem_le_adv_data,contr
+	call memcpy_fast
+	branch le_send_adv_transmit
+
+
+p_le_send_scan_response:
+	fetch 1,mem_ble_dle_enable
+	nbranch le_send_scan_response+1,blank
+
+	arg SCAN_RSP,temp
+	fetch 1,mem_le_adv_own_addr_type
+	nsetflag blank,LE_SENDER_ADDR_BIT,temp
+	storet 1,mem_le_txheader_temp
+	fetcht 1,mem_le_scan_data_len
+	add temp,6,pdata
+	store 1,mem_le_txlen_temp
+	fetch 6,mem_le_lap
+	store 6,mem_le_txpayload_temp
+	arg mem_le_scan_data,contr
+	copy temp,loopcnt
+	call memcpy_fast
+	call le_transmit_norx
+	branch le_adv_not_match
+
+p_le_acknowledge:
+	call le_supervision_flush
+	rtnmark1 mark_buf_full
+	call le_check_wak
+	fetch 1,mem_le_rxbuf
+	isolate1 md,pdata
+	setflag true,mark_ble_rx_md,mark
+	rshift pdata,pdata
+	ixor temp,pdata
+	isolate1 nesn,pdata
+	setflag true,mark_old_packet,mark	/* retransmit */
+	rtnmark1 mark_old_packet
+	fetch 1,mem_le_rxbuf+1			
+	branch p_le_ack_unenc,blank		/* empty packet, no decryption */
+	fetch 1,mem_le_state
+	bbit0 lestate_encryption,p_le_ack_unenc
+	call load_sk
+	call le_decrypt
+	nsetflag blank,mark_old_packet,mark
+	nrtn blank
+p_le_ack_unenc:
+	fetcht 1,mem_le_arq
+	setflip nesn,temp
+	storet 1,mem_le_arq
+
+	fetch 1,mem_ble_dle_enable
+	nrtn blank
+
+	branch p_le_parse_writing_attribute
+
+p_le_parse_writing_attribute:
+	fetch 1,mem_le_rxbuf+1
+	rtn blank		//empty packet
+	fetch 1,mem_le_rxbuf
+	compare 1,pdata,3
+	branch p_le_parse_writing_attribute_continue,true //ACL-U continue
+	compare 2,pdata,3
+	branch p_le_parse_writing_attribute_start,true
+	rtn
+
+p_le_parse_writing_attribute_start:
+	fetch 2,mem_le_rxbuf+4//CID
+	rtnne LE_L2CAP_CID_ATT
+	ifetch 3,contr
+	store 3,mem_le_att_opcode
+	set1 mark_old_packet,mark
+	beq ATTOP_WRITE_REQUEST,p_le_parse_att_write_request
+	beq ATTOP_WRITE_COMMAND,p_le_parse_att_write_command
+	beq ATTOP_PREPARE_WRITE_REQUEST,p_le_parse_att_prepare_write_request
+	beq ATTOP_EXECUTE_WRITE_REQUEST,le_parse_att_execute_write_request
+	beq ATTOP_EXCHANGE_MTU_REQUEST,le_parse_att_exchange_mtu_request
+	beq ATTOP_HANDLE_VALUE_CONFIRMATION,p_le_parse_handle_value_confirmation
+	set0 mark_old_packet,mark
+	rtn
+
+p_le_parse_att_prepare_write_request:
+	setarg mem_module_prepare_write_request_packet
+	store 2,mem_module_prepare_write_request_contw
+	call p_le_long_packet_patch
+	increase -2,loopcnt			//attribute value offset
+	arg mem_le_rxbuf+11,rega
+	call le_writeatt_cb
+	branch p_le_parse_att_prepare_write_request_finish
+
+	
+p_le_parse_att_write_request:
+	call p_le_parse_att_write_command
+	branch p_le_send_att_write_response_check_auth
+
+
+p_le_parse_att_write_command:
+	call p_le_long_packet_patch
+	arg mem_le_rxbuf+9,rega
+	branch le_writeatt_cb
+
+
+p_le_long_packet_patch:
+	fetch 1,mem_le_rxbuf+1
+	add pdata,-7,loopcnt
+	increase -4,pdata
+	store 2,mem_le_buff_len	//payload length
+	ifetcht 2,contr		//l2cap length
+	storet 2,mem_le_buff_len_all
+	rtn
+
+
+p_le_parse_writing_attribute_continue:
+	set1 mark_old_packet,mark
+	call p_parse_l2cap_continue_common
+	fetch 1,mem_le_att_opcode
+	beq ATTOP_WRITE_REQUEST,p_parse_l2cap_continue_write_request
+	beq ATTOP_PREPARE_WRITE_REQUEST,p_parse_l2cap_continue_prepare_write_request
+	rtneq ATTOP_WRITE_COMMAND
+	set0 mark_old_packet,mark
+	rtn
+
+p_parse_l2cap_continue_write_common:
+p_parse_l2cap_continue_common:
+	fetch 1,mem_le_rxbuf+1
+	fetcht 2,mem_le_buff_len
+	iadd temp,temp
+	storet 2,mem_le_buff_len
+	copy pdata,loopcnt
+	arg mem_le_rxbuf+2,rega
+	branch le_writeatt_cb
+
+p_parse_l2cap_continue_prepare_write_request:
+	branch p_le_parse_att_prepare_write_request_finish
+
+p_parse_l2cap_continue_write_request:
+p_le_send_att_write_response_check_auth:
+	call p_le_check_complete_packet
+	nrtn user
+	branch le_send_att_write_response_check_auth
+
+//enable user,recevie complete packet
+p_le_check_complete_packet:
+	call disable_user
+	fetch 2,mem_le_buff_len_all
+	fetcht 2,mem_le_buff_len
+	isub temp,null
+	nrtn zero
+	branch enable_user
+
+p_le_parse_att_prepare_write_request_finish:
+	fetch 2,mem_module_prepare_write_request_contw
+	copy pdata,contw
+
+	fetch 1,mem_le_rxbuf+1	//payload length
+	copy pdata,loopcnt
+	call memcpy
+	copy contw,pdata
+	store 2,mem_module_prepare_write_request_contw
+
+	call p_le_check_complete_packet
+	nrtn user
+	arg MODULE_RECEIVE_COMPLETE_PREPARE_WRITE_REQ,queue
+	call module_set_state
+	branch p_le_send_att_prepare_write_response
+
+
+p_le_send_att_prepare_write_response:
+	call le_fifo_check_empty
+	nrtn blank
+	jam ATTOP_PREPARE_WRITE_RESPONSE,mem_module_prepare_write_request_opcode
+	setarg mem_module_prepare_write_request_packet
+	store 2,mem_module_prepare_write_request_contr
+	fetcht 2,mem_module_prepare_write_request_PDU_length
+	increase 4,temp
+	setarg LE_BASEBAND_MAX_BUFFER
+	call not_greater_than
+	add pdata,-4,regb
+	force LLID_START,type
+p_le_send_att_prepare_write_response_continue:
+	copy pdata,rega
+	call le_fifo_malloc_tx + 2
+	fetch 2,mem_module_prepare_write_request_contr
+	copy pdata,contr
+	copy rega,loopcnt
+	call memcpy_fast
+	copy contr,pdata
+	store 2,mem_module_prepare_write_request_contr
+	fetch 2,mem_module_prepare_write_request_PDU_length
+	isub regb,pdata
+	store 2,mem_module_prepare_write_request_PDU_length
+	branch p_le_send_att_prepare_write_response_ending,blank
+	arg LE_BASEBAND_MAX_BUFFER,temp
+	call not_greater_than
+	copy pdata,regb
+	force LLID_CONTINUE,type
+	branch p_le_send_att_prepare_write_response_continue
+
+p_le_send_att_prepare_write_response_ending:
+	setarg 0
+	store 2,mem_module_prepare_write_request_contw
+	arg MODULE_RECEIVE_COMPLETE_PREPARE_WRITE_REQ,queue
+	branch module_clr_state
+
+p_check_ipcbuf_size:
+	jam 0,mem_ipcbuf_bt2m0_flag
+	//call	p_get_ipc_tx_buff
+	fetcht 2,IPC_BT2M0_START_ADDR
+	fetch 2,IPC_BT2M0_END_ADDR
+	isub temp,rega
+	fetcht 2,IPC_BT2M0_READ_PTR
+	fetch 2,IPC_BT2M0_WRITE_PTR
+	storet 2,mem_ipcbuf_bt2m0_read
+	store 2,mem_ipcbuf_bt2m0_write
+	isub temp,pdata
+	branch start_calc_ipcbuf,positive
+	branch start_calc_ipcbuf,zero
+	copy rega,temp
+	fetch 2,mem_ipcbuf_bt2m0_write
+	iadd temp,pdata
+	fetcht 2,mem_ipcbuf_bt2m0_read
+	isub temp,pdata
+	//store 2,0x4bfc
+start_calc_ipcbuf:	
+	arg 0x300,temp
+	isub temp,null
+	nrtn positive
+	jam 1,mem_ipcbuf_bt2m0_flag
+	rtn
+	
+p_le_check_wak:	
+//	call p_check_ipcbuf_size
+	fetcht 1,mem_le_arq
+	isolate0 wak,temp
+	rtn true
+	fetch 1,mem_le_rxbuf
+	lshift pdata,pdata
+	ixor temp,pdata
+	rtnbit0 sn			/* received NESN is same as SN, NAK */
+	set0 wak,temp
+	setflip sn,temp
+p_le_check_wak_1:
+	storet 1,mem_le_arq
+	compare 3,temp,3
+	nrtn true
+
+	fetch 1,mem_ble_dle_enable
+	nbranch  le_check_wak_2,blank
+	
+	fetch 1,mem_le_txpayload_temp
+	branch le_check_wak_3
+le_check_wak_2:
+	fetch 1,mem_le_txpayload
+le_check_wak_3:
+	beq LL_START_ENC_REQ,le_set_enc
+	fetch 1,mem_le_enc_state
+	beq FLAG_LE_ENC_PAUSE,le_clear_enc
+	rtn
+
+p_le_prepare_tx:
+	fetch 1,mem_le_arq
+	rtnbit1 wak
+	call le_check_tx_md
+
+
+	fetch 1,mem_ble_dle_enable
+	nbranch le_prepare_tx+4,blank
+	
+	call le_fifo_get_first_tx_ptr	//no packet to send
+	branch le_send_empty,blank
+	ifetch 1,contr
+	ifetcht 1,contr
+	copy temp,rega
+	isub rega,pdata
+	call p_le_get_master_rx_max
+	call not_greater_than
+	copy pdata,temp
+	ifetch 1,contr
+	copy pdata,type
+	copy rega,pdata
+	iadd contr,contr
+	arg mem_le_txpayload_temp,contw
+	copy temp,loopcnt
+	call memcpy_fast
+	call le_update_tx_type
+	call le_send_packet
+	
+	call le_fifo_get_first_tx_ptr
+	ifetch 1,contr
+	copy pdata,rega
+	copy contr,regc
+	ifetcht 1,contr
+	copy temp,regb
+	isub regb,pdata
+	call p_le_get_master_rx_max
+	call not_greater_than
+	iadd regb,pdata
+	istore 1,regc
+	isub rega,null
+	nrtn zero
+	branch le_fifo_release_first_node
+
+
+p_le_get_master_rx_max:
+	copy contr,contw
+	fetcht 2,mem_module_master_rx_max
+	copy contw,contr
+	rtn
+
+p_le_send_packet:
+	fetch 1,mem_ble_dle_enable
+	nbranch le_send_packet+1,blank
+
+	storet 1,mem_le_txlen_temp
+	fetcht 1,mem_le_arq
+	set1 wak,temp
+	and temp,0xfc,pdata
+	ior type,pdata
+	store 1,mem_le_arq
+	and_into 0x1f,pdata
+	isolate1 mark_ble_tx_md,mark
+	setflag true,md,pdata
+	store 1,mem_le_txheader_temp
+
+	fetch 1,mem_le_txheader_temp
+	compare 1,type,3
+	nbranch p_le_send_no_txlen,true
+	fetch 1,mem_le_txlen_temp
+	rtn blank
+p_le_send_no_txlen:
+	fetch 1,mem_le_state
+	rtnbit0 lestate_encryption
+	call load_sk
+	branch le_encrypt
+
+p_le_encrypt:
+	fetch 1,mem_ble_dle_enable
+	nbranch le_encrypt+1,blank
+
+	arg mem_le_txheader_temp,regc
+	fetcht 5,mem_le_pcnt_tx
+	call generate_mic
+	force regidx_xor,regext_index
+	iforce regext
+	force 0,rega					/* rega is block counter */
+	call first_block_data
+	call aes_init				// 1021s ->  do_aes_ctr
+	arg mem_le_txpayload_temp,regc
+	fetch 1,mem_le_txlen_temp
+	add pdata,-1,regb
+	iadd regc,contw
+	force regidx_result,regext_index
+	deposit regext
+	istore 4,contw	
+	call aes_crypt_data
+	fetch 1,mem_le_txlen_temp
+	increase 4,pdata
+	store 1,mem_le_txlen_temp
+	fetcht 5,mem_le_pcnt_tx
+	increase 1,temp
+	storet 5,mem_le_pcnt_tx
+	rtn
+
+p_le_parse:
+	rtnmark1 mark_old_packet
+	rtnmark1 mark_buf_full
+	call le_fifo_check_full
+	nrtn blank
+	fetch 1,mem_le_rxbuf
+	and pdata,0x3,pdata
+	store 1,mem_le_packet_llid
+	ifetch 1,contr
+	store 1,mem_le_packet_size
+	rtn blank							//empty rtn
+	copy contr,pdata
+	store 2,mem_le_payload_ptr
+	fetch 1,mem_le_packet_llid
+	beq LLID_LE_LL,p_le_parse_ll
+	call p_le_check_l2cap_complete
+	arg wake_lock_ble_rx_patch,queue
+	nbranch lpm_get_wake_lock,user
+	call lpm_put_wake_lock
+	branch le_parse_l2cap + 3
+
+
+p_le_check_l2cap_complete:
+	fetch 1,mem_le_packet_llid
+	beq LLID_START,p_le_check_l2cap_llid_start
+	beq LLID_CONTINUE,p_le_check_l2cap_llid_continue
+	rtn
+	
+p_le_check_l2cap_llid_start:
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	ifetch 2,contr
+	store 2,mem_le_l2cap_size
+	ifetch 2,contr			//CID
+	call le_check_l2cap_CID_legal
+	nrtn user
+	fetcht 1,mem_le_packet_size
+	storet 1,mem_le_packet_len_recved
+	fetch 2,mem_le_l2cap_size
+	increase 4,pdata
+	isub temp,null
+	branch enable_user,zero
+	fetch 1,mem_le_packet_size
+	copy pdata,loopcnt
+	arg mem_le_l2capbuf_new,contw
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	call memcpy
+	branch disable_user
+	
+p_le_check_l2cap_llid_continue:
+	call le_check_l2cap_continue_legal
+	nrtn user
+	fetch 1,mem_le_packet_len_recved
+	arg mem_le_l2capbuf_new,contw
+	iadd contw,rega
+	fetcht 1,mem_le_packet_size
+	iadd temp,pdata
+	store 1,mem_le_packet_len_recved
+	fetch 1,mem_le_packet_size
+	copy pdata,loopcnt
+	copy rega,contw
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	call memcpy_fast
+	setarg mem_le_l2capbuf_new
+	store 2,mem_le_payload_ptr		//update ptr->mem_le_l2capbuff
+	fetch 2,mem_le_l2cap_size
+	increase 4,pdata
+	fetcht 1,mem_le_packet_len_recved
+	isub temp,null
+	branch enable_user,zero
+	branch disable_user
+
+
+p_le_parse_ll:
+//	fetch 1,mem_ble_dle_enable
+//	nbranch le_parse_ll,blank
+	fetch 1,mem_le_rxbuf+2
+	beq LL_FEATURE_REQ,p_le_parse_feature_req
+	beq LL_LENGTH_REQ,le_parse_length_request
+	branch le_parse_ll+1
+	
+p_le_parse_feature_req:
+p_le_send_feature_rsp:
+	arg 9,rega
+	arg LL_FEATURE_RSP,regb
+	call le_fifo_malloc_tx_ll
+	//bit0 LE encryption
+	//bit5 LE Data packet Length extension
+	setarg 0x21	
+	istore 8,contw
+	call p_check_ble_dle_enable
+	rtn
+p_check_ble_dle_enable:
+	fetch 1,mem_le_rxbuf+3
+	and pdata,0x20,pdata
+	branch p_set_ble_dle_disable,blank
+	jam DLE_ENABLE,mem_ble_dle_enable
+	rtn
+p_set_ble_dle_disable:
+	jam DLE_DISABLE,mem_ble_dle_enable
+	rtn
+
+le_parse_length_request:
+	ifetch 2,contr
+	store 2,mem_module_master_rx_max
+	branch le_send_length_res
+
+le_send_length_res:
+	arg 9,rega
+	arg LL_LENGTH_RSP,regb
+	call le_fifo_malloc_tx_ll
+	//MaxRxOctets >=27B <=251
+	setarg 251
+	istore 2,contw
+	//MaxRxTime >=328ms <=2120
+	setarg 2120
+	istore 2,contw
+	//MaxTxOctets >=27B
+	setarg 251
+	istore 2,contw
+	//MaxTxTime >=328ms
+	setarg 2120
+	istore 2,contw
+	rtn
+
+
+p_le_parse_l2cap:
+	ifetch 2,contr
+	beq LE_L2CAP_CID_ATT,p_le_parse_att
+	beq LE_L2CAP_CID_SMP,le_parse_smp
+	beq LE_L2CAP_CID_SIGNAL,le_parse_signaling
+	rtn
+
+p_le_parse_att:
+	ifetch 3,contr
+	store 3,mem_le_att_opcode
+//	beq ATTOP_HANDLE_VALUE_CONFIRMATION,p_le_parse_handle_value_confirmation
+	beq ATTOP_READ_BY_GROUP_TYPE_REQUEST,p_le_parse_att_read_by_group_type_request
+	beq ATTOP_READ_BY_TYPE_REQUEST,p_le_parse_att_read_by_type_request
+	branch le_parse_att+2
+
+p_le_parse_handle_value_confirmation:
+module_clear_recv_confirm_flag:
+	arg MODULE_RECV_CONFIRM,queue
+	branch module_clr_state
+
+p_le_parse_att_read_by_group_type_request:
+	call le_get_search_handle_start_end_common
+ 	call le_get_search_att_type
+	arg 1,timeup
+	branch le_send_att_read_by_group_type_response+1
+
+module_set_recv_confirm_flag:
+	arg MODULE_RECV_CONFIRM,queue
+	branch module_set_state
+
+p_le_parse_att_exchange_mtu_request:
+	call le_parse_att_exchange_mtu_response
+	store 2,mem_le_local_mtu
+	branch le_send_att_exchange_mtu_response
+
+p_le_parse_att_read_by_type_request:
+	call le_get_search_handle_start_end_common
+	call le_get_search_att_uuid
+	branch p_le_send_att_read_by_type_response
+
+p_le_send_att_read_by_type_response:
+	fetcht 2,mem_le_search_handle_start
+	storet 2,mem_temp
+	call le_init_attlist_search
+	call le_att_get_handle_ptr2
+	increase -2,contr
+	copy contr,pdata
+	store 2,mem_le_cur_attlist_start_ptr
+
+	fetcht 2,mem_le_search_uuid
+	setarg UUID_CHRCTR_DEVICE_NAME
+	isub temp,null
+	branch p_le_send_att_read_by_type_res_device_name,zero
+	branch le_send_att_read_by_type_response+11
+
+
+
+p_le_send_att_read_by_type_res_device_name:
+	arg UUID_CHRCTR_DEVICE_NAME,temp
+	call le_att_get_short_uuid_ptr
+//	rtn blank
+	branch le_send_att_error_response_notfound,blank
+	branch le_send_att_read_by_type_res_device_name+3
+
+
+
+
+
+
+p_le_lpm_set_mult:
+	fetch 1,mem_ble_dle_enable
+	nbranch le_lpm_set_mult+1,blank
+	
+	disable wake
+	branch p_le_lpm_set_mult_attempt,attempt
+	nbranch le_lpm_lost,match
+p_le_lpm_set_mult_attempt:
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_le_receive_window
+
+	nbranch lpm_mult_short,match
+	bmark1 mark_old_packet,lpm_mult_short
+
+	fetch 1,mem_le_packet_size
+	nbranch lpm_mult_short,blank		// rx not empty, short interval
+	fetch 1,mem_le_txlen_temp
+	nbranch lpm_mult_short,blank		// tx not empty, short interval
+	
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_SHORT_MULT,lpm_mult_short	//check flag,if flag is 1,always short mult
+	
+	fetch 1,mem_le_state
+	bbit1 lestate_update_param,lpm_mult_short
+	branch lpm_mult_wait_timeout
+
+
+p_parse_lmp:
+	fetch 1,mem_lmi_opcode2
+ 	beq LMP_ENCRYPTION_KEY_SIZE_REQ,p_parse_lmp_crypt_key
+	beq LMP_SNIFF_REQ, p_parse_lmp_sniff_req
+ 	branch parse_lmp + 21
+
+p_parse_lmp_crypt_key:
+	fetcht 1,mem_rxbuf+1
+	sub temp,6,null
+	branch reject_lmp_packet_pdu_not_allowed,positive
+	branch parse_lmp_crypt_key + 1
+	
+reject_lmp_packet_pdu_not_allowed:
+	jam PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch reject_lmp_packet
+
+p_parse_lmp_sniff_req:
+	branch parse_lmp_sniff_req+1
+
+
+
+
+p_send_lmp:
+	disable user
+	call lmo_fifo_process
+	fetch 1,mem_lmp_to_send
+	rtn blank
+	bbit1 7,p_send_lmp_escape
+	branch send_lmp0
+	
+p_send_lmp_escape:
+	beq LMP_EXT_FEATURES_RES,p_send_lmpext_features_res
+	beq LMP_EXT_FEATURES_REQ,p_send_lmpext_features_req	
+	branch send_lmp_escape
+
+p_send_lmpext_features_res:
+	call p_check_ssp_enable
+	fetch 1,mem_lmp_to_send
+	branch send_lmpext_features_res
+p_send_lmpext_features_req:
+	call p_check_ssp_enable
+	fetch 1,mem_lmp_to_send
+	branch send_lmpext_features_req
+
+p_check_ssp_enable:
+	fetch 1,mem_ssp_enable 
+	branch ssp_disable, blank
+	branch  ssp_enable
+
+p_ssp_disable:
+	fetch 1,mem_features+6
+	set0 param_featrue_ssp,pdata
+	store 1,mem_features+6
+	setarg 0x1
+	store 2,mem_lmpext_ssp_enable
+	rtn
+
+
+p_parse_dlci0_rp:
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_SABM,rfcomm_rx_process_DLCI0_sabm
+	beq RFCOMM_FRAME_TYPE_UA,rfcomm_rx_process_DLCI0_ua
+	beq RFCOMM_FRAME_TYPE_UIH,p_parse_DLCI0_rp_uih
+	beq RFCOMM_FRAME_TYPE_DISCONN,parse_uih_rp_spp_disconn_send_event
+	rtn
+p_parse_DLCI0_rp_uih:
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_uih_head_struct
+	fetch 1,mem_uih_cmd_type
+	beq UIH_PARAM_NEG_CMD,parse_DLCI0_rp_uih_pn_cmd
+	beq UIH_PARAM_NEG_RES,parse_DLCI0_rp_uih_pn_res
+	beq UIH_MODEM_STATUS_CMD,parse_DLCI0_rp_uih_ms_cmd
+	beq UIH_MODEM_STATUS_RES,p_parse_DLCI0_rp_uih_ms_res
+	beq UIH_PARAM_CMD_REMOVE_PORT,parse_DLCI0_rp_uih_cmd_port	
+	branch rfcomm_rx_process_end
+p_parse_DLCI0_rp_uih_ms_res:
+	jam BT_EVT_SPP_CONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	call get_rfcomm_param_modem_status
+	branch parse_DLCI0_rp_uih_ms_res_spp
+
+
+
+
+
+
+
+p_sp_initialize_256:	
+	fetch 1,mem_le_secure_connect_enable
+	branch  le_secure_connection_disable,blank
+//	call le_secure_connection_enable
+	call sp_clear_flags
+	branch sp_pubkey_calc_256
+
+
+
Index: ModuleDemo/BlueTooth/print/branches/jingchen/sched/109x.dat
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/sched/109x.dat	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/sched/109x.dat	(working copy)
@@ -0,0 +1,52 @@
+mem_patch00:02
+mem_patch10:20
+mem_patch11:02
+mem_patch14:04
+mem_patch17:09
+mem_patch20:68
+mem_patch27:44
+mem_patch28:02
+mem_patch2a:04
+mem_patch33:02
+
+#mem_lpm_config:0f 84 30
+mem_lpm_config:0f 84 f0
+mem_lpm_xtalcnt:00 0b b2 32
+mem_lpm_hibernate_switch:8b
+mem_lpm_doze_switch:0b
+mem_gpio_wakeup:00 00 00 00 00 00 00 00
+
+mem_fcomp_mul:02
+mem_fcomp_div:24
+mem_iscan_window:40 00
+mem_iscan_interval:00 02
+mem_pscan_window:32 00
+mem_pscan_interval:00 02
+
+mem_inq_window:20 00
+mem_page_window:20 00
+mem_page_to:00 20
+mem_rx_window_init:80 04
+mem_rx_window_sniff:00 10
+
+
+
+mem_lmp_version:08 0e 05 04 00
+
+mem_eeprom_base:30 1f
+mem_eeprom_block_size:20
+mem_context_number:01
+
+mem_rf_init:
+4b ba
+55 d0
+56 e0
+57 88
+58 6c
+59 10
+07 ff
+ff
+mem_rf_init_ptr:mem_rf_init
+
+
+
Index: ModuleDemo/BlueTooth/print/branches/jingchen/sched/DM_module.dat
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/sched/DM_module.dat	(nonexistent)
+++ /YC3121_demo/ModuleDemo/BlueTooth/print/branches/jingchen/sched/DM_module.dat	(working copy)
@@ -0,0 +1,377 @@
+
+mem_device_option:0a
+mem_ui_profile_supported:40
+mem_app_connection_options:13
+mem_ptt:01
+mem_features:
+ff
+fb
+8f
+fa	#openACL3M fe    2M fa
+8B	#AFHclose 83
+85
+59
+83	#83 ssp
+
+
+##############NVRAM CONFIG##############
+mem_nv_data_ptr:mem_module_nv_data
+mem_nv_data_number:05
+#####################################
+
+##############SPP CONFIG##############
+mem_credit_flag:01
+mem_rfcomm_max_frame_size:ff 00 
+mem_rfcomm_credit_init_data:03
+#####################################
+
+##############SSP CONFIG##############
+mem_sp_iocap_local:03 00 04
+mem_ssp_enable:01
+mem_pin_length:04  30 30 30 30 30
+#####################################
+
+
+################IPC BUFFER INIT#####################
+4FF0:00 1C
+4FF2:FF 1F
+4FF4:00 1C
+4FF6:00 1C
+4FF8:00 4C
+4FFA:E0 4F
+4FFC:00 4C
+4FFE:00 4C
+#####################################
+mem_2m0_tmier_address: 00 80 02#0x28000
+
+##############BLUETOOTH CONFIG##############
+###commom###
+mem_soft_version_num:10 0d
+mem_module_state:03
+mem_module_bluetooth_stauts_by_command:07
+mem_class:24 04 04
+
+mem_module_flag:00
+#bit0 MODULE_FLAG_UART_FLOW_CONTROL
+#bit1 MODULE_FLAG_BLE_SEND_MTU23
+#bit2 MODULE_FLAG_BLE_DATA_ENCRYPT
+mem_rfcomm_lmp_dis_flag:00
+# 1: tianyu    MPOS
+# 0: wobosi  printer
+mem_lpm_mode:00
+mem_lpm_interval:00 01
+mem_lpm_overhead:08
+mem_lpm_mult_timeout:02
+
+
+###3.0###
+mem_scan_mode:00
+mem_module_spp_lpm_mult:28
+mem_lap:a7 2a 2a 21 10 55
+mem_local_name_length:
+'3121 Mou Bt121
+
+###3.0 sinff param###
+mem_sniff_param_interval:20 00
+mem_sniff_param_attempt:02
+mem_sniff_param_timeout:01
+
+
+###ble###
+mem_le_secure_connect_enable:01
+mem_le_adv_channel_map:07
+mem_le_pairing_mode:00
+
+mem_module_data_write_handle:2d 00
+mem_module_data_write_handle2:2f 00
+
+
+mem_le_adv_enable:00
+mem_le_adv_interval:40 00
+mem_module_le_lpm_mult:05
+mem_le_lap:21 22 01 33 02 3a
+mem_le_name_len:
+'3121 Mou Ble
+
+mem_le_adv_data_len:03
+mem_le_adv_data:
+02 01 02
+
+mem_le_scan_data_len:0e
+
+mem_le_scan_data:# 1 byte length + 1 byte type + N bytes data
+02 01 02
+'\093121 Mou Ble
+
+mem_le_pres:02 03 00 05 10 02 03
+
+mem_le_interval_min:
+08 00 #min interval
+10 00 #max interval
+00 00 #latency
+2c 01 #timeout
+
+
+mem_le_local_mtu:f0
+mem_le_remote_mtu:17
+
+mem_le_pairing_handle:31 00
+
+#####################################
+
+
+mem_eir_enable:01
+mem_all_uuid_16bits: 
+05
+03#Type: Complete list of 16-bit UUIDs
+0012 0001 0100 0111 0300 
+
+mem_all_uuid_128bits:
+01
+07
+00000000decafadedecadeafdecacaff
+
+
+mem_ui_uuid_table:mem_module_uuid_list
+
+mem_module_uuid_list:
+03
+12
+00
+01
+00
+00
+01
+00
+01
+00
+01
+36
+00
+52
+09
+00
+00
+0a
+00
+01
+00
+01
+09
+00
+01
+35
+03
+19
+12
+00
+09
+00
+04
+35
+0d
+35
+06
+19
+01
+00
+09
+00
+01
+35
+03
+19
+00
+01
+09
+00
+09
+35
+08
+35
+06
+19
+12
+00
+09
+01
+00
+09
+02
+00
+09
+01
+03
+09
+02
+01
+09
+05
+ac
+09
+02
+02
+09
+02
+39
+09
+02
+03
+09
+06
+44
+09
+02
+04
+28
+01
+09
+02
+05
+09
+00
+02
+03
+11
+01
+00
+03
+01
+00
+00
+01
+00
+03
+36
+00
+46
+09
+00
+00
+0a
+00
+01
+00
+03
+09
+00
+01
+35
+03
+19
+11
+01
+09
+00
+02
+0a
+00
+00
+00
+00
+09
+00
+04
+35
+0c
+35
+03
+19
+01
+00
+35
+05
+19
+00
+03
+08
+01
+09
+00
+06
+35
+09
+09
+65
+6e
+09
+00
+6a
+09
+01
+00
+09
+01
+00
+25
+0a
+53
+50
+50
+20
+73
+6c
+61
+76
+65
+00
+00
+00
+01
+00
+
+
+mem_ui_le_uuid_table:mem_module_le_att_list
+
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_module_le_att_list:
+#Primary service yichip transmit ------
+01 00 02 00 28 02 01 18
+#Service Changed
+02 00 02 03 28 01 20
+03 00 02 05 2a 01 00
+#Client Characteristic Configuration
+04 00 02 02 29 02 01 00
+
+#Primary service GAP ------
+05 00 02 00 28 02 00 18
+
+#Device name
+06 00 02 03 28 01 4e
+07 00 02 00 2a 13 41 73 74 20 4c 45 20 4d 6f 75 73 65 20 20 20 20 20 20 20
+
+#Apperance
+08 00 02 03 28 01 4e
+09 00 02 01 2a 02 00 00
+
+#Perpheral Preferred Connection Parameters
+0a 00 02 03 28 01 02
+0b 00 02 04 2a 08 10 00 20 00 05 00 2c 01
+
+
+#Primary service yichip transmit ------
+0c 00 02 00 28 10 55 e4 05 d2 af 9f a9 8f e5 4a 7d fe 43 53 53 49
+#Characteristic tx--notify read
+0d  00 02 03 28 01 12
+0e 00 10 16 96 24 47 C6 23 61 BA D9 4B 4D 1E 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+#Client Characteristic Configuration
+0f 00 02 02 29 02 00 00
+
+#Characteristic rx--write
+10 00 02 03 28 01 08
+11 00 10 B3 9B 72 34 BE EC D4 A8 F4 43 41 88 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#Characteristic rx-- write without Response
+12 00 02 03 28 01 04
+13 00 10 fe 69 ca 9a 56 19 f6 ab 02 4d aa 6d 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#Characteristic rx tx --read write notify
+14 00 02 03 28 01 1a
+15 00 10 18 03 A6 28 5E D8 EC 91 1C 48 A3 AC 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+#Client Characteristic Configuration
+16 00 02 02 29 02 00 00
+
+#End of Attribute list
+00 00
+
+
