00bde510: push esi
00bde511: push edi
00bde512: mov esi, edx
00bde514: mov edi, ecx
00bde516: push 0x90
00bde51b: xor dl, dl
00bde51d: mov ecx, 0x2021610
00bde522: call 0xd95820
00bde527: push 0xdc
00bde52c: mov ecx, esi
00bde52e: call 0x873b20
00bde533: mov ecx, edi
00bde535: mov esi, eax
00bde537: call 0x9f4090
00bde53c: mov edx, esi
00bde53e: mov ecx, eax
00bde540: call 0xd958b0
00bde545: pop edi
00bde546: pop esi
00bde547: ret 

009f4090: mov eax, ecx
009f4092: mov edx, eax
009f4094: sub edx, 0
009f4097: je 0x9f409f
009f4099: dec edx
009f409a: je 0x9f409f
009f409c: xor eax, eax
009f409e: ret 

00873b20: cmp ecx, 0x45
00873b23: jne 0x873b2c
00873b25: xor ecx, ecx
00873b27: jmp 0x9f4090
00873b2c: cmp ecx, 0x46
00873b2f: jne 0x873b3b
00873b31: mov ecx, 1
00873b36: jmp 0x9f4090
00873b3b: jmp 0x5fe890
00873b40: jmp dword ptr [edx*4 + 0x873c54]
00873b47: mov eax, dword ptr [ecx + 0x14]
00873b4a: ret 

009f4090: mov eax, ecx
009f4092: mov edx, eax
009f4094: sub edx, 0
009f4097: je 0x9f409f
009f4099: dec edx
009f409a: je 0x9f409f
009f409c: xor eax, eax
009f409e: ret 
009f409f: imul eax, eax, 0xdc
009f40a5: add eax, 0x1f205e8
009f40aa: ret 
009f40ab: int3 
009f40ac: int3 
009f40ad: int3 
009f40ae: int3 
009f40af: int3 
009f40b0: call 0xaac570
009f40b5: xor edx, edx
009f40b7: mov ecx, eax
009f40b9: jmp 0xaac580
009f40be: int3 
009f40bf: int3 
009f40c0: call 0xaac570
009f40c5: mov edx, 1
009f40ca: mov ecx, eax

005fe890: push ebx
005fe891: push esi
005fe892: push edi
005fe893: mov ebx, ecx
005fe895: call 0xa09d00
005fe89a: test eax, eax
005fe89c: jne 0x5fe8a2
005fe89e: xor edi, edi
005fe8a0: jmp 0x5fe8a8
005fe8a2: mov edi, dword ptr [eax + 0xd8]
005fe8a8: xor esi, esi
005fe8aa: test edi, edi
005fe8ac: jle 0x5fe8ed
005fe8ae: mov edi, edi
005fe8b0: call 0xa09d00
005fe8b5: mov ecx, eax
005fe8b7: test ecx, ecx
005fe8b9: je 0x5fe8dc
005fe8bb: cmp esi, -1
005fe8be: je 0x5fe8dc
005fe8c0: test esi, esi
005fe8c2: js 0x5fe8dc
005fe8c4: cmp esi, dword ptr [ecx + 0xd8]
005fe8ca: jae 0x5fe8dc
005fe8cc: mov eax, esi
005fe8ce: imul eax, eax, 0xdc
005fe8d4: add eax, dword ptr [ecx + 0xdc]
005fe8da: jmp 0x5fe8de
005fe8dc: xor eax, eax
005fe8de: mov ecx, dword ptr [eax + 8]
005fe8e1: and ecx, 0x7f
005fe8e4: cmp ecx, ebx
005fe8e6: je 0x5fe8ef
005fe8e8: inc esi
005fe8e9: cmp esi, edi
005fe8eb: jl 0x5fe8b0
005fe8ed: xor eax, eax
005fe8ef: pop edi
005fe8f0: pop esi
005fe8f1: pop ebx
005fe8f2: ret 