505 lines
11 KiB
NASM
Executable File
505 lines
11 KiB
NASM
Executable File
; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
|
|
|
|
TTL d:\MyProject\VS2005\Tcpmp\tcpmp\amr\amrwb.c
|
|
CODE32
|
|
|
|
AREA |.drectve|, DRECTVE
|
|
DCB "/nodefaultlib:libc.lib "
|
|
DCB "/nodefaultlib:libcd.lib "
|
|
DCB "/nodefaultlib:oldnames.lib "
|
|
DCB "-defaultlib:LIBCMT "
|
|
DCB "-defaultlib:OLDNAMES "
|
|
|
|
|
|
AREA |.rdata|, DATA, READONLY
|
|
|AMRWB| DCD 0x3a8
|
|
DCD 0x57524d41
|
|
DCD 0x43444f43
|
|
DCD 0x3e8
|
|
DCD |Create|
|
|
DCD 0x0
|
|
|AMRWBFile| DCD 0x0
|
|
DCD 0x57464d41
|
|
DCD 0x41574152
|
|
DCD 0x3e3
|
|
% 8
|
|
|
|
AREA |.data|, DATA
|
|
|$SG4267| DCB "#!AMR-WB", 0xa, 0x0
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T4327| DCD |$LN5@Create|
|
|
DCD 0x40001804
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Create| PROC
|
|
; File d:\myproject\vs2005\tcpmp\tcpmp\amr\amrwb.c
|
|
; Line 109
|
|
|$LN5@Create|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #4
|
|
|$M4324|
|
|
; Line 110
|
|
ldr r3, [sp, #0xC]
|
|
add r2, r3, #0x1C
|
|
ldr r3, [pc, #0x3C]
|
|
str r3, [r2]
|
|
; Line 111
|
|
ldr r3, [sp, #0xC]
|
|
add r2, r3, #0x10
|
|
ldr r3, [pc, #0x28]
|
|
str r3, [r2]
|
|
; Line 112
|
|
ldr r3, [sp, #0xC]
|
|
add r2, r3, #0x18
|
|
ldr r3, [pc, #0x14]
|
|
str r3, [r2]
|
|
; Line 113
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
; Line 114
|
|
ldr r0, [sp]
|
|
add sp, sp, #4
|
|
ldmia sp, {sp, pc}
|
|
|$LN6@Create|
|
|
DCD |Flush|
|
|
DCD |UpdateInput|
|
|
DCD |Process|
|
|
|$M4325|
|
|
|
|
ENDP ; |Create|
|
|
|
|
IMPORT |__imp_PacketFormatPCM|
|
|
IMPORT |D_IF_init|
|
|
IMPORT |__imp_BufferClear|
|
|
IMPORT |D_IF_exit|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T4334| DCD |$LN8@UpdateInpu|
|
|
DCD 0x40004204
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|UpdateInput| PROC
|
|
; Line 41
|
|
|$LN8@UpdateInpu|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M4331|
|
|
; Line 42
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #0x49, 30
|
|
ldr r3, [r3]
|
|
cmp r3, #0
|
|
beq |$LN3@UpdateInpu|
|
|
; Line 44
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #0x49, 30
|
|
ldr r0, [r3]
|
|
bl D_IF_exit
|
|
; Line 45
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, #0x49, 30
|
|
mov r3, #0
|
|
str r3, [r2]
|
|
|$LN3@UpdateInpu|
|
|
; Line 47
|
|
ldr r3, [sp, #0x10]
|
|
add r0, r3, #0x45, 30
|
|
ldr r3, [pc, #0xB0]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
; Line 49
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #0x30
|
|
ldr r3, [r3]
|
|
cmp r3, #2
|
|
bne |$LN2@UpdateInpu|
|
|
; Line 51
|
|
bl D_IF_init
|
|
str r0, [sp, #4]
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, #0x49, 30
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
; Line 52
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #0x49, 30
|
|
ldr r3, [r3]
|
|
cmp r3, #0
|
|
bne |$LN1@UpdateInpu|
|
|
; Line 53
|
|
mvn r3, #1
|
|
str r3, [sp]
|
|
b |$LN4@UpdateInpu|
|
|
|$LN1@UpdateInpu|
|
|
; Line 55
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, #0x50
|
|
mov r3, #0xFA, 26
|
|
str r3, [r2]
|
|
; Line 56
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, #0x4C
|
|
mov r3, #1
|
|
str r3, [r2]
|
|
; Line 58
|
|
mov r2, #0x10
|
|
ldr r3, [sp, #0x10]
|
|
add r1, r3, #0x30
|
|
ldr r3, [sp, #0x10]
|
|
add r0, r3, #0x84
|
|
ldr r3, [pc, #0x1C]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
|$LN2@UpdateInpu|
|
|
; Line 61
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
|$LN4@UpdateInpu|
|
|
; Line 62
|
|
ldr r0, [sp]
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$LN9@UpdateInpu|
|
|
DCD |__imp_PacketFormatPCM|
|
|
DCD |__imp_BufferClear|
|
|
|$M4332|
|
|
|
|
ENDP ; |UpdateInput|
|
|
|
|
IMPORT |D_IF_decode|
|
|
IMPORT |block_size|
|
|
IMPORT |memcmp|
|
|
IMPORT |__imp_BufferWrite|
|
|
IMPORT |__imp_BufferPack|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T4341| DCD |$LN11@Process|
|
|
DCD 0x4000a104
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Process| PROC
|
|
; Line 65
|
|
|$LN11@Process|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r4, r12, lr}
|
|
sub sp, sp, #0xC
|
|
|$M4338|
|
|
; Line 67
|
|
ldr r3, [sp, #0x1C]
|
|
cmp r3, #0
|
|
beq |$LN6@Process|
|
|
; Line 69
|
|
ldr r3, [sp, #0x1C]
|
|
add r3, r3, #0x24
|
|
ldr r3, [r3]
|
|
cmp r3, #0
|
|
blt |$LN5@Process|
|
|
; Line 70
|
|
ldr r3, [sp, #0x1C]
|
|
add r1, r3, #0x24
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0xF0
|
|
ldr r3, [r1]
|
|
str r3, [r2]
|
|
|$LN5@Process|
|
|
; Line 73
|
|
mov r1, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r0, r3, #0x45, 30
|
|
ldr r3, [pc, #0x224]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
; Line 74
|
|
mov r3, #1, 24
|
|
ldr r2, [sp, #0x1C]
|
|
add r2, r2, #0x20
|
|
ldr r2, [r2]
|
|
ldr r1, [sp, #0x1C]
|
|
ldr r1, [r1]
|
|
ldr r0, [sp, #0x18]
|
|
add r0, r0, #0x45, 30
|
|
ldr lr, [pc, #0x1F0]
|
|
ldr r4, [lr]
|
|
mov lr, pc
|
|
mov pc, r4
|
|
; Line 76
|
|
b |$LN4@Process|
|
|
|$LN6@Process|
|
|
; Line 77
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0xF0
|
|
mvn r3, #0
|
|
str r3, [r2]
|
|
|$LN4@Process|
|
|
; Line 79
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0x46, 30
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
ldr r2, [r2]
|
|
ldr r3, [r3]
|
|
sub r3, r2, r3
|
|
cmp r3, #1
|
|
bge |$LN3@Process|
|
|
; Line 80
|
|
mvn r3, #5
|
|
str r3, [sp, #4]
|
|
b |$LN7@Process|
|
|
|$LN3@Process|
|
|
; Line 84
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0x45, 30
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
ldr r2, [r2]
|
|
ldr r3, [r3]
|
|
add r3, r2, r3
|
|
ldrb r3, [r3]
|
|
cmp r3, #0x23
|
|
bne |$LN2@Process|
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0x46, 30
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
ldr r2, [r2]
|
|
ldr r3, [r3]
|
|
sub r3, r2, r3
|
|
cmp r3, #9
|
|
ble |$LN2@Process|
|
|
mov r2, #9
|
|
ldr r1, [pc, #0x148]
|
|
ldr r3, [sp, #0x18]
|
|
add r0, r3, #0x45, 30
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
ldr r0, [r0]
|
|
ldr r3, [r3]
|
|
add r0, r0, r3
|
|
bl memcmp
|
|
str r0, [sp, #8]
|
|
ldr r3, [sp, #8]
|
|
cmp r3, #0
|
|
bne |$LN2@Process|
|
|
; Line 85
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
ldr r3, [r3]
|
|
add r2, r3, #9
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
str r2, [r3]
|
|
|$LN2@Process|
|
|
; Line 87
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0x45, 30
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
ldr r2, [r2]
|
|
ldr r3, [r3]
|
|
add r3, r2, r3
|
|
ldrb r3, [r3]
|
|
mov r3, r3, asr #3
|
|
and r2, r3, #0xF
|
|
ldr r3, [pc, #0xCC]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
str r3, [sp]
|
|
; Line 89
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0x46, 30
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
ldr r2, [r2]
|
|
ldr r3, [r3]
|
|
sub r2, r2, r3
|
|
ldr r3, [sp]
|
|
cmp r2, r3
|
|
bge |$LN1@Process|
|
|
; Line 90
|
|
mvn r3, #5
|
|
str r3, [sp, #4]
|
|
b |$LN7@Process|
|
|
|$LN1@Process|
|
|
; Line 92
|
|
mov r3, #0
|
|
ldr r2, [sp, #0x18]
|
|
add r2, r2, #0x4A, 30
|
|
ldr r1, [sp, #0x18]
|
|
add r0, r1, #0x45, 30
|
|
ldr r1, [sp, #0x18]
|
|
add r1, r1, #0x47, 30
|
|
ldr r0, [r0]
|
|
ldr r1, [r1]
|
|
add r1, r0, r1
|
|
ldr r0, [sp, #0x18]
|
|
add r0, r0, #0x49, 30
|
|
ldr r0, [r0]
|
|
bl D_IF_decode
|
|
; Line 93
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
ldr r2, [r3]
|
|
ldr r3, [sp]
|
|
add r2, r2, r3
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0x47, 30
|
|
str r2, [r3]
|
|
; Line 94
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0xEC
|
|
mov r3, #0xA, 26
|
|
str r3, [r2]
|
|
; Line 95
|
|
ldr r3, [sp, #0x18]
|
|
add r2, r3, #0x4A, 30
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #0xCC
|
|
str r2, [r3]
|
|
; Line 96
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
|$LN7@Process|
|
|
; Line 97
|
|
ldr r0, [sp, #4]
|
|
add sp, sp, #0xC
|
|
ldmia sp, {r4, sp, pc}
|
|
|$LN12@Process|
|
|
DCD |block_size|
|
|
DCD |$SG4267|
|
|
DCD |__imp_BufferWrite|
|
|
DCD |__imp_BufferPack|
|
|
|$M4339|
|
|
|
|
ENDP ; |Process|
|
|
|
|
IMPORT |D_IF_reset|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T4348| DCD |$LN6@Flush|
|
|
DCD 0x40001204
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Flush| PROC
|
|
; Line 102
|
|
|$LN6@Flush|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #4
|
|
|$M4345|
|
|
; Line 103
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #0x49, 30
|
|
ldr r3, [r3]
|
|
cmp r3, #0
|
|
beq |$LN1@Flush|
|
|
; Line 104
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #0x49, 30
|
|
ldr r0, [r3]
|
|
bl D_IF_reset
|
|
|$LN1@Flush|
|
|
; Line 105
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
; Line 106
|
|
ldr r0, [sp]
|
|
add sp, sp, #4
|
|
ldmia sp, {sp, pc}
|
|
|$M4346|
|
|
|
|
ENDP ; |Flush|
|
|
|
|
EXPORT |AMRWB_Init|
|
|
IMPORT |__imp_NodeRegisterClass|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T4353| DCD |$LN5@AMRWB_Init|
|
|
DCD 0x40000f01
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|AMRWB_Init| PROC
|
|
; Line 135
|
|
|$LN5@AMRWB_Init|
|
|
str lr, [sp, #-4]!
|
|
|$M4350|
|
|
; Line 136
|
|
ldr r0, [pc, #0x2C]
|
|
ldr r3, [pc, #0x20]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
; Line 137
|
|
ldr r0, [pc, #0x14]
|
|
ldr r3, [pc, #0xC]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
; Line 138
|
|
ldr pc, [sp], #4
|
|
|$LN6@AMRWB_Init|
|
|
DCD |__imp_NodeRegisterClass|
|
|
DCD |AMRWBFile|
|
|
DCD |AMRWB|
|
|
|$M4351|
|
|
|
|
ENDP ; |AMRWB_Init|
|
|
|
|
EXPORT |AMRWB_Done|
|
|
IMPORT |__imp_NodeUnRegisterClass|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T4359| DCD |$LN5@AMRWB_Done|
|
|
DCD 0x40000f01
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|AMRWB_Done| PROC
|
|
; Line 141
|
|
|$LN5@AMRWB_Done|
|
|
str lr, [sp, #-4]!
|
|
|$M4356|
|
|
; Line 142
|
|
ldr r0, [pc, #0x2C]
|
|
ldr r3, [pc, #0x20]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
; Line 143
|
|
ldr r0, [pc, #0x14]
|
|
ldr r3, [pc, #0xC]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
; Line 144
|
|
ldr pc, [sp], #4
|
|
|$LN6@AMRWB_Done|
|
|
DCD |__imp_NodeUnRegisterClass|
|
|
DCD 0x57464d41
|
|
DCD 0x57524d41
|
|
|$M4357|
|
|
|
|
ENDP ; |AMRWB_Done|
|
|
|
|
END
|