Line | |
---|
1 | .sect .text; .sect .rom; .sect .data; .sect .bss
|
---|
2 | .extern .cfu
|
---|
3 | .sect .text
|
---|
4 | .cfu:
|
---|
5 | push ebp
|
---|
6 | mov ebp,esp
|
---|
7 | sub esp,20
|
---|
8 | push esi
|
---|
9 | push 12(ebp)
|
---|
10 | lea eax,-12(ebp)
|
---|
11 | push eax
|
---|
12 | lea eax,16(ebp)
|
---|
13 | push eax
|
---|
14 | call .extend
|
---|
15 | add esp,12
|
---|
16 | movsx eax,-10(ebp)
|
---|
17 | test eax,eax
|
---|
18 | jns I1_4
|
---|
19 | xor eax,eax
|
---|
20 | cmp 12(ebp),8
|
---|
21 | jne 1f
|
---|
22 | inc eax
|
---|
23 | 1:
|
---|
24 | mov 16(ebp)(eax*4),0
|
---|
25 | xor eax,eax
|
---|
26 | jmp I1_1
|
---|
27 | I1_4:
|
---|
28 | mov edx,8(ebp)
|
---|
29 | sal edx,3
|
---|
30 | dec edx
|
---|
31 | o16 mov -20(ebp),edx
|
---|
32 | movsx eax,-10(ebp)
|
---|
33 | movsx ebx,-20(ebp)
|
---|
34 | cmp eax,ebx
|
---|
35 | jle I1_7
|
---|
36 | push 3
|
---|
37 | call __fptrp
|
---|
38 | pop ecx
|
---|
39 | movsx eax,-10(ebp)
|
---|
40 | movsx ebx,-20(ebp)
|
---|
41 | cdq
|
---|
42 | idiv ebx
|
---|
43 | o16 mov -10(ebp),edx
|
---|
44 | I1_7:
|
---|
45 | movsx eax,-10(ebp)
|
---|
46 | sub eax,31
|
---|
47 | neg eax
|
---|
48 | mov ecx,eax
|
---|
49 | mov edx,-8(ebp)
|
---|
50 | shr edx,cl
|
---|
51 | mov esi,edx
|
---|
52 | xor eax,eax
|
---|
53 | cmp 12(ebp),8
|
---|
54 | jne 1f
|
---|
55 | inc eax
|
---|
56 | 1:
|
---|
57 | mov 16(ebp)(eax*4),esi
|
---|
58 | mov eax,esi
|
---|
59 | I1_1:
|
---|
60 | pop esi
|
---|
61 | leave
|
---|
62 | ret
|
---|
Note:
See
TracBrowser
for help on using the repository browser.