diff options
Diffstat (limited to 'csrc/mkf_asm.asm')
-rw-r--r-- | csrc/mkf_asm.asm | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/csrc/mkf_asm.asm b/csrc/mkf_asm.asm deleted file mode 100644 index 7a5d0b6..0000000 --- a/csrc/mkf_asm.asm +++ /dev/null @@ -1,88 +0,0 @@ -section .text -global fcn_00455040 -extern table_483430 -extern table_483530 -extern data_483630 -extern gtables -extern cfcn_45511b -extern cfcn_004550cc -extern cfcn_00455109 -extern cfcn_004551bb -extern cfcn_00455040 - -fcn_00455040: -jmp cfcn_00455040 -push ebp -mov ebp, esp -push ebx -push ecx -push esi -push edi -sub esp, 8 -mov esi, data_483630 -mov edi, gtables -mov ecx, 0x463 ; 1123 -rep movsd -mov edi, dword [ebp + 8] ; [0x8:4]=-1 ; 8 -mov esi, dword [ebp + 0xc] ; [0xc:4]=-1 ; 12 -xor edx, edx - -L0: - -mov [esp+4], ebx -mov [esp], ecx -lea eax, [esp+4] -push eax -lea eax, [esp+4] -push eax -push esi -call cfcn_004551bb -add esp, 12 -mov ecx, [esp] -mov ebx, [esp+4] - -or bh, bh -jne L1 -mov byte [edi], bl -inc edi -jmp L0 -L1: -mov eax, ecx -push ecx -shr eax, 3 -and ecx, 7 -mov eax, dword [esi + eax] -shr eax, cl -mov ebp, eax -and ebp, 0xff -mov cl, byte [ebp + table_483530] -mov dh, byte [ebp + table_483430] -shr eax, cl -mov dl, al -shl dl, 2 -shr dx, 2 -add cl, 6 -mov eax, ecx -and eax, 0xff -pop ecx -add ecx, eax -cmp dx, 0xfff -je L2 -mov ebp, ecx -sub ebx, 0xfd -push esi -lea esi, [edi - 1] -sub esi, edx -mov ecx, ebx -rep movsb -pop esi -mov ecx, ebp -jmp L0 -L2: -add esp, 8 -pop edi -pop esi -pop ecx -pop ebx -pop ebp -ret |