Function at 0x40739d
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
cld
mov ecx, dword [ebp + 0x10]
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 0x407bde
cmp ecx, 0x100
jae 0x4074a9
cmp ecx, 0x10
jae 0x407407
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
loop 0x4073d7
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 0x4073d2
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 0x4073c6
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 0x407be3
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 0x4073b8
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