Function at 0x420815
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
cld
mov ecx, dword [ebp + 0x10]
test ecx, ecx
je 0x42179b
push esi
push edi
push ebx
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
movzx ebx, word [edi]
movzx edx, word [edi + 2]
push ebp
push edi
mov edi, edx
xor eax, eax
cmp ecx, 0x1500
jae 0x42105e
cmp ecx, 0x100
jae 0x420929
cmp ecx, 0x10
jae 0x420887
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
loop 0x420857
mov ebp, 0xfff1
mov eax, edi
xor edx, edx
div ebp
mov edi, edx
mov eax, ebx
xor edx, edx
div ebp
mov ebx, edx
mov edx, edi
pop edi
pop ebp
mov word [edi], bx
mov word [edi + 2], dx
pop ebx
pop edi
pop esi
leave
ret 0xc
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
sub ecx, 0x10
test ecx, ecx
jne 0x420852
mov ebp, 0xfff1
mov eax, edi
xor edx, edx
div ebp
mov edi, edx
mov eax, ebx
xor edx, edx
div ebp
mov ebx, edx
mov edx, edi
pop edi
pop ebp
mov word [edi], bx
mov word [edi + 2], dx
pop ebx
pop edi
pop esi
leave
ret 0xc
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
sub ecx, 0x100
test ecx, ecx
jne 0x420846
mov ebp, 0xfff1
mov eax, edi
xor edx, edx
div ebp
mov edi, edx
mov eax, ebx
xor edx, edx
div ebp
mov ebx, edx
mov edx, edi
pop edi
pop ebp
mov word [edi], bx
mov word [edi + 2], dx
pop ebx
pop edi
pop esi
leave
ret 0xc
mov ebp, 0x15
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
sub ecx, 0x100
dec ebp
jne 0x421063
mov ebp, 0xfff1
mov eax, edi
xor edx, edx
div ebp
mov edi, edx
mov eax, ebx
xor edx, edx
div ebp
mov ebx, edx
test ecx, ecx
jne 0x420838
mov edx, edi
pop edi
pop ebp
mov word [edi], bx
mov word [edi + 2], dx
pop ebx
pop edi
pop esi
leave
ret 0xc