Function at 0x4073e7
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 0x407c28
cmp ecx, 0x100
jae 0x4074f3
cmp ecx, 0x10
jae 0x407451
mov al, byte [esi]
inc esi
add ebx, eax
add edi, ebx
loop 0x407421
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 0x40741c
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 0x407410
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 0x407c2d
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 0x407402
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