Function at 0x10007920
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x12a4
call sub.ntdll.dll__chkstk
xor eax, eax
mov dword [ebp - 0x18], 0x10100
push ebx
push esi
push 0x100
push eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1a4]
push eax
mov dword [ebp - 0x14], 0x1010000
mov dword [ebp - 0xa4], 0x1010101
mov dword [ebp - 0xa0], 1
mov dword [ebp - 0x9c], 0x1010100
mov dword [ebp - 0x98], 0x101
mov dword [ebp - 0x94], 0x1010000
mov dword [ebp - 0x90], 0x10101
mov dword [ebp - 0x8c], 0x1000000
mov dword [ebp - 0x88], 0x1010101
mov dword [ebp - 0x84], 1
mov dword [ebp - 0x80], 0x1010101
mov dword [ebp - 0x7c], 0x101
mov dword [ebp - 0x78], 0x1010100
mov dword [ebp - 0x74], 0x10101
mov dword [ebp - 0x70], 0x1010000
mov dword [ebp - 0x6c], 0x1010101
mov dword [ebp - 0x68], 0x1000000
mov dword [ebp - 0x64], 0x3010102
mov dword [ebp - 0x60], 0x1010203
mov dword [ebp - 0x5c], 0x1020301
mov dword [ebp - 0x58], 0x2030101
call fcn.10001d60
push 0xff
lea eax, [ebp - 0x2a3]
push 0
push eax
call fcn.10001d60
push 0x800
lea eax, [ebp - 0xaa4]
push 0
push eax
call fcn.10001d60
push 0x800
lea eax, [ebp - 0x12a4]
push 0
push eax
call fcn.10001d60
add esp, 0x30
mov byte [ebp - 0x2a4], 1
mov esi, 1
jmp 0x10007a70
movzx eax, byte [ebp + esi - 0x2a5]
lea ebx, [eax + eax]
xor ebx, eax
mov al, bl
mov edx, ebx
xor al, 0x1b
and edx, 0x100
movzx ecx, al
movzx eax, bl
cmove ecx, eax
mov byte [ebp + esi - 0x2a4], cl
inc esi
cmp esi, 0x100
jl 0x10007a70
mov ecx, 1
jmp 0x10007ab0
movzx eax, byte [ebp + ecx - 0x2a4]
mov byte [ebp + eax - 0x1a4], cl
inc ecx
cmp ecx, 0xff
jl 0x10007ab0
mov byte [ebp - 0xa95], 1
mov esi, 2
jmp 0x10007ae0
movzx eax, byte [ebp + esi - 0x1a4]
lea ecx, [ebp - 0x1a5]
sub ecx, eax
mov dl, byte [ecx]
movzx ecx, dl
and dl, 1
mov eax, ecx
mov byte [ebp + esi*8 - 0xa9d], dl
shr eax, 7
mov byte [ebp + esi*8 - 0xaa4], al
mov eax, ecx
shr eax, 6
and al, 1
mov byte [ebp + esi*8 - 0xaa3], al
mov eax, ecx
shr eax, 5
and al, 1
mov byte [ebp + esi*8 - 0xaa2], al
mov eax, ecx
shr eax, 4
and al, 1
mov byte [ebp + esi*8 - 0xaa1], al
mov eax, ecx
shr eax, 3
and al, 1
mov byte [ebp + esi*8 - 0xaa0], al
mov eax, ecx
shr eax, 2
shr ecx, 1
and al, 1
and cl, 1
mov byte [ebp + esi*8 - 0xa9f], al
mov byte [ebp + esi*8 - 0xa9e], cl
inc esi
cmp esi, 0x100
jl 0x10007ae0
xor ebx, ebx
mov dword [ebp - 4], ebx
push edi
mov cl, byte [ebp + ebx - 0xaa2]
lea edi, [ebp - 0x12a4]
mov al, byte [ebp + ebx - 0xaa3]
xor esi, esi
mov byte [ebp - 0x4a], cl
add edi, ebx
mov cl, byte [ebp + ebx - 0xaa1]
mov byte [ebp - 0x4e], cl
mov cl, byte [ebp + ebx - 0xaa0]
mov byte [ebp - 0x4d], cl
mov cl, byte [ebp + ebx - 0xa9f]
mov byte [ebp - 0x4c], cl
mov cl, byte [ebp + ebx - 0xa9e]
mov byte [ebp - 0x4b], cl
mov cl, byte [ebp + ebx - 0xa9d]
mov bl, byte [ebp + ebx - 0xaa4]
mov bh, byte [ebp - 0x4a]
mov byte [ebp - 0x4f], al
mov byte [ebp - 0x50], cl
lea ebx, [ebx]
movzx edx, byte [ebp + esi*8 - 0xa3]
lea edi, [edi + 1]
movzx eax, al
imul edx, eax
movzx eax, cl
movzx ecx, byte [ebp + esi*8 - 0x9d]
imul ecx, eax
movzx eax, byte [ebp - 0x4b]
xor dl, cl
movzx ecx, byte [ebp + esi*8 - 0x9e]
imul ecx, eax
movzx eax, byte [ebp - 0x4c]
xor dl, cl
movzx ecx, byte [ebp + esi*8 - 0x9f]
imul ecx, eax
movzx eax, byte [ebp - 0x4d]
xor dl, cl
movzx ecx, byte [ebp + esi*8 - 0xa0]
imul ecx, eax
movzx eax, byte [ebp - 0x4e]
xor dl, cl
movzx ecx, byte [ebp + esi*8 - 0xa1]
imul ecx, eax
movzx eax, bh
xor dl, cl
movzx ecx, byte [ebp + esi*8 - 0xa2]
imul ecx, eax
movzx eax, bl
xor dl, cl
movzx ecx, byte [ebp + esi*8 - 0xa4]
imul ecx, eax
mov al, byte [ebp - 0x4f]
xor dl, cl
mov cl, byte [ebp - 0x50]
xor dl, byte [ebp + esi - 0x18]
inc esi
mov byte [edi - 1], dl
cmp esi, 8
jl 0x10007bd0
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 4], ebx
cmp ebx, 0x800
jl 0x10007b70
xor ecx, ecx
jmp 0x10007c90
mov al, byte [ebp + ecx*8 - 0x12a4]
add al, al
xor al, byte [ebp + ecx*8 - 0x12a3]
add al, al
xor al, byte [ebp + ecx*8 - 0x12a2]
add al, al
xor al, byte [ebp + ecx*8 - 0x12a1]
add al, al
xor al, byte [ebp + ecx*8 - 0x12a0]
add al, al
xor al, byte [ebp + ecx*8 - 0x129f]
add al, al
xor al, byte [ebp + ecx*8 - 0x129e]
add al, al
xor al, byte [ebp + ecx*8 - 0x129d]
mov byte [ecx + 0x1000df38], al
movzx eax, al
mov byte [eax + 0x1000e038], cl
inc ecx
cmp ecx, 0x100
jl 0x10007c90
xor ecx, ecx
lea edx, [ebp - 0x44]
movzx eax, byte [ebp + ecx*4 - 0x64]
lea edx, [edx + 9]
mov byte [ebp + ecx*8 - 0x48], al
movzx eax, byte [ebp + ecx*4 - 0x63]
mov byte [ebp + ecx*8 - 0x47], al
movzx eax, byte [ebp + ecx*4 - 0x62]
mov byte [ebp + ecx*8 - 0x46], al
movzx eax, byte [ebp + ecx*4 - 0x61]
mov byte [ebp + ecx*8 - 0x45], al
inc ecx
mov byte [edx - 9], 1
cmp ecx, 4
jl 0x10007cf3
xor esi, esi
mov ebx, 0xff
mov dword [ebp - 0x10], esi
mov dword [ebp - 0xc], ebx
jmp 0x10007d38
mov ebx, 0xff
lea eax, [ebp - 0x48]
add eax, esi
mov cl, byte [eax + esi*8]
lea edi, [eax + esi*8]
test cl, cl
jne 0x10007e01
lea edx, [esi + 1]
lea eax, [esi + edx*8]
cmp byte [ebp + eax - 0x48], cl
lea eax, [ebp + eax - 0x48]
jne 0x10007d6e
jmp 0x10007d60
cmp edx, 4
jge 0x10007d71
add eax, 8
inc edx
cmp byte [eax], 0
je 0x10007d60
cmp edx, 4
je 0x10007e01
movzx eax, byte [ebp + edx*8 - 0x48]
mov cl, byte [ebp + esi*8 - 0x48]
mov byte [ebp + esi*8 - 0x48], al
movzx eax, byte [ebp + edx*8 - 0x47]
mov byte [ebp + edx*8 - 0x48], cl
mov cl, byte [ebp + esi*8 - 0x47]
mov byte [ebp + esi*8 - 0x47], al
movzx eax, byte [ebp + edx*8 - 0x46]
mov byte [ebp + edx*8 - 0x47], cl
mov cl, byte [ebp + esi*8 - 0x46]
mov byte [ebp + esi*8 - 0x46], al
movzx eax, byte [ebp + edx*8 - 0x45]
mov byte [ebp + edx*8 - 0x46], cl
mov cl, byte [ebp + esi*8 - 0x45]
mov byte [ebp + esi*8 - 0x45], al
movzx eax, byte [ebp + edx*8 - 0x44]
mov byte [ebp + edx*8 - 0x45], cl
mov cl, byte [ebp + esi*8 - 0x44]
mov byte [ebp + esi*8 - 0x44], al
movzx eax, byte [ebp + edx*8 - 0x43]
mov byte [ebp + edx*8 - 0x44], cl
mov cl, byte [ebp + esi*8 - 0x43]
mov byte [ebp + esi*8 - 0x43], al
movzx eax, byte [ebp + edx*8 - 0x42]
mov byte [ebp + edx*8 - 0x43], cl
mov cl, byte [ebp + esi*8 - 0x42]
mov byte [ebp + esi*8 - 0x42], al
movzx eax, byte [ebp + edx*8 - 0x41]
mov byte [ebp + edx*8 - 0x42], cl
mov cl, byte [ebp + esi*8 - 0x41]
mov byte [ebp + esi*8 - 0x41], al
mov byte [ebp + edx*8 - 0x41], cl
mov cl, byte [edi]
movzx eax, cl
lea edi, [ebp - 0x1a4]
add edi, eax
mov al, byte [ebp + esi*8 - 0x48]
test al, al
je 0x10007e37
movzx ecx, byte [edi]
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
sub eax, ecx
add eax, 0xff
cdq
idiv ebx
mov al, byte [ebp + edx - 0x2a4]
mov byte [ebp + esi*8 - 0x48], al
mov al, byte [ebp + esi*8 - 0x47]
test al, al
je 0x10007e62
movzx ecx, byte [edi]
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
sub eax, ecx
add eax, 0xff
cdq
idiv ebx
mov al, byte [ebp + edx - 0x2a4]
mov byte [ebp + esi*8 - 0x47], al
mov al, byte [ebp + esi*8 - 0x46]
test al, al
je 0x10007e8d
movzx ecx, byte [edi]
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
sub eax, ecx
add eax, 0xff
cdq
idiv ebx
mov al, byte [ebp + edx - 0x2a4]
mov byte [ebp + esi*8 - 0x46], al
mov al, byte [ebp + esi*8 - 0x45]
test al, al
je 0x10007eb8
movzx ecx, byte [edi]
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
sub eax, ecx
add eax, 0xff
cdq
idiv ebx
mov al, byte [ebp + edx - 0x2a4]
mov byte [ebp + esi*8 - 0x45], al
mov al, byte [ebp + esi*8 - 0x44]
test al, al
je 0x10007ee3
movzx ecx, byte [edi]
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
sub eax, ecx
add eax, 0xff
cdq
idiv ebx
mov al, byte [ebp + edx - 0x2a4]
mov byte [ebp + esi*8 - 0x44], al
mov al, byte [ebp + esi*8 - 0x43]
test al, al
je 0x10007f0e
movzx ecx, byte [edi]
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
sub eax, ecx
add eax, 0xff
cdq
idiv ebx
mov al, byte [ebp + edx - 0x2a4]
mov byte [ebp + esi*8 - 0x43], al
mov al, byte [ebp + esi*8 - 0x42]
test al, al
je 0x10007f39
movzx ecx, byte [edi]
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
sub eax, ecx
add eax, 0xff
cdq
idiv ebx
mov al, byte [ebp + edx - 0x2a4]
mov byte [ebp + esi*8 - 0x42], al
mov al, byte [ebp + esi*8 - 0x41]
test al, al
je 0x10007f64
movzx ecx, byte [edi]
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
sub eax, ecx
add eax, 0xff
cdq
idiv ebx
mov al, byte [ebp + edx - 0x2a4]
mov byte [ebp + esi*8 - 0x41], al
xor eax, eax
lea ebx, [ebp - 0x48]
mov dword [ebp - 4], eax
add ebx, esi
mov edi, edi
cmp esi, eax
je 0x10007fd6
lea edx, [esi + 1]
mov edi, 8
lea eax, [edx + eax*8]
lea ecx, [ebp - 0x48]
add ecx, eax
lea eax, [edx + esi*8]
lea esi, [ebp - 0x48]
add esi, eax
sub edi, edx
mov edi, edi
mov al, byte [esi]
test al, al
je 0x10007fc2
mov dl, byte [ebx]
test dl, dl
je 0x10007fc2
movzx eax, al
movzx edx, dl
movzx eax, byte [ebp + eax - 0x1a4]
movzx edx, byte [ebp + edx - 0x1a4]
add eax, edx
xor edx, edx
div dword [ebp - 0xc]
mov al, byte [ebp + edx - 0x2a4]
jmp 0x10007fc4
xor al, al
xor byte [ecx], al
inc esi
inc ecx
sub edi, 1
jne 0x10007f90
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 0x10]
mov byte [ebx], 0
inc eax
add ebx, 8
mov dword [ebp - 4], eax
cmp eax, 4
jl 0x10007f70
inc esi
mov dword [ebp - 0x10], esi
cmp esi, 4
jl 0x10007d33
xor ecx, ecx
movzx eax, byte [ebp + ecx*8 - 0x44]
mov byte [ebp + ecx*4 - 0x28], al
movzx eax, byte [ebp + ecx*8 - 0x43]
mov byte [ebp + ecx*4 - 0x27], al
movzx eax, byte [ebp + ecx*8 - 0x42]
mov byte [ebp + ecx*4 - 0x26], al
movzx eax, byte [ebp + ecx*8 - 0x41]
mov byte [ebp + ecx*4 - 0x25], al
inc ecx
cmp ecx, 4
jl 0x10007ff1
xor eax, eax
mov dword [ebp - 0x54], eax
movzx ecx, byte [eax + 0x1000df38]
lea esi, [eax*4]
xor edx, edx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], esi
test ecx, ecx
jne 0x10008053
mov dword [esi + 0x1000f138], edx
mov ebx, esi
mov dword [esi + 0x1000f538], edx
mov dword [esi + 0x1000f938], edx
jmp 0x100081f4
movzx esi, byte [ebp + ecx - 0x1a4]
mov ebx, 0xff
movzx eax, byte [ebp - 0x1a2]
add eax, esi
div ebx
movzx eax, byte [ebp - 0x1a3]
add eax, esi
movzx edi, byte [ebp + edx - 0x2a4]
xor edx, edx
div ebx
movzx eax, byte [ebp - 0x1a1]
add eax, esi
shl edi, 8
movzx ecx, byte [ebp + edx - 0x2a4]
xor edx, edx
div ebx
mov ebx, dword [ebp - 4]
or edi, ecx
shl edi, 8
or edi, ecx
mov dword [ebp - 4], ebx
shl edi, 8
mov ecx, 0xff
movzx eax, byte [ebp + edx - 0x2a4]
xor edx, edx
or edi, eax
mov eax, dword [ebp - 0x10]
mov dword [ebx + 0x1000f138], edi
movzx esi, byte [ebp + eax - 0x1a4]
movzx eax, byte [ebp - 0x1a1]
add eax, esi
div ecx
movzx eax, byte [ebp - 0x1a2]
add eax, esi
movzx edi, byte [ebp + edx - 0x2a4]
xor edx, edx
div ecx
movzx eax, byte [ebp - 0x1a3]
add eax, esi
shl edi, 8
mov esi, 0xff
movzx ecx, byte [ebp + edx - 0x2a4]
xor edx, edx
div esi
or edi, ecx
shl edi, 8
movzx eax, byte [ebp + edx - 0x2a4]
xor edx, edx
or edi, eax
shl edi, 8
or edi, eax
mov eax, dword [ebp - 0x10]
mov dword [ebx + 0x1000f538], edi
movzx ecx, byte [ebp + eax - 0x1a4]
movzx eax, byte [ebp - 0x1a3]
add eax, ecx
div esi
movzx eax, byte [ebp - 0x1a1]
add eax, ecx
movzx edi, byte [ebp + edx - 0x2a4]
xor edx, edx
div esi
movzx eax, byte [ebp - 0x1a2]
add eax, ecx
mov ecx, 0xff
movzx esi, byte [ebp + edx - 0x2a4]
xor edx, edx
div ecx
mov ecx, edi
shl ecx, 8
or ecx, esi
shl ecx, 8
movzx eax, byte [ebp + edx - 0x2a4]
or ecx, eax
mov eax, dword [ebp - 0x10]
shl ecx, 8
or ecx, edi
mov dword [ebx + 0x1000f938], ecx
movzx edi, byte [ebp + eax - 0x1a4]
movzx eax, byte [ebp - 0x1a3]
add eax, edi
xor edx, edx
mov ecx, 0xff
div ecx
movzx eax, byte [ebp - 0x1a1]
add eax, edi
movzx esi, byte [ebp + edx - 0x2a4]
xor edx, edx
div ecx
movzx eax, byte [ebp - 0x1a2]
add eax, edi
mov dword [ebp - 0x14], esi
mov edi, 0xff
movzx ecx, byte [ebp + edx - 0x2a4]
xor edx, edx
div edi
movzx eax, byte [ebp + edx - 0x2a4]
mov edx, esi
shl edx, 8
or edx, esi
mov esi, ebx
shl edx, 8
or edx, ecx
shl edx, 8
or edx, eax
mov eax, dword [ebp - 0x54]
movzx edi, byte [eax + 0x1000e038]
mov dword [esi + 0x1000fd38], edx
test edi, edi
jne 0x1000821e
mov dword [ebx + 0x10010138], edi
xor ecx, ecx
mov dword [ebx + 0x10010538], edi
mov dword [ebx + 0x10010938], edi
jmp 0x1000855c
movzx edx, byte [ebp + edi - 0x1a4]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 4], edx
test al, al
je 0x10008256
movzx eax, al
mov ecx, 0xff
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edx
xor edx, edx
div ecx
mov eax, dword [ebp - 0x28]
movzx ecx, byte [ebp + edx - 0x2a4]
mov edx, dword [ebp - 4]
jmp 0x10008258
xor ecx, ecx
test ah, ah
je 0x1000827b
movzx eax, ah
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edx
xor edx, edx
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 0x10], eax
jmp 0x10008282
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x26]
test al, al
je 0x100082a9
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, dword [ebp - 4]
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 8], eax
jmp 0x100082b0
mov dword [ebp - 8], 0
mov eax, dword [ebp - 0x25]
test al, al
je 0x100082d4
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, dword [ebp - 4]
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x100082d6
xor eax, eax
shl ecx, 8
or ecx, dword [ebp - 0x10]
shl ecx, 8
or ecx, dword [ebp - 8]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x14], ebx
mov eax, dword [ebp - 0x24]
mov dword [ebx + 0x10010138], ecx
movzx edx, byte [ebp + edi - 0x1a4]
mov dword [ebp - 4], edx
test al, al
je 0x10008325
movzx eax, al
mov ecx, 0xff
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edx
xor edx, edx
div ecx
movzx ecx, byte [ebp + edx - 0x2a4]
mov edx, dword [ebp - 4]
jmp 0x10008327
xor ecx, ecx
mov eax, dword [ebp - 0x23]
test al, al
je 0x1000834d
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edx
xor edx, edx
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 8], eax
jmp 0x10008354
mov dword [ebp - 8], 0
mov eax, dword [ebp - 0x22]
test al, al
je 0x1000837b
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, dword [ebp - 4]
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 0x10], eax
jmp 0x10008382
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x21]
test al, al
je 0x100083a6
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, dword [ebp - 4]
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x100083a8
xor eax, eax
shl ecx, 8
or ecx, dword [ebp - 8]
shl ecx, 8
or ecx, dword [ebp - 0x10]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x20]
mov dword [ebx + 0x10010538], ecx
movzx edx, byte [ebp + edi - 0x1a4]
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 4], edx
test al, al
je 0x100083f7
movzx eax, al
mov ecx, 0xff
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edx
xor edx, edx
div ecx
movzx ecx, byte [ebp + edx - 0x2a4]
mov edx, dword [ebp - 4]
jmp 0x100083f9
xor ecx, ecx
mov eax, dword [ebp - 0x1f]
test al, al
je 0x1000841f
movzx eax, al
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edx
xor edx, edx
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 8], eax
jmp 0x10008426
mov dword [ebp - 8], 0
mov eax, dword [ebp - 0x1e]
test al, al
je 0x1000844d
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, dword [ebp - 4]
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 0x10], eax
jmp 0x10008454
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x1d]
test al, al
je 0x10008478
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, dword [ebp - 4]
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x1000847a
xor eax, eax
shl ecx, 8
or ecx, dword [ebp - 8]
shl ecx, 8
or ecx, dword [ebp - 0x10]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x10010938], ecx
mov eax, dword [ebp - 0x1c]
movzx edi, byte [ebp + edi - 0x1a4]
test al, al
je 0x100084c6
movzx eax, al
mov ecx, 0xff
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div ecx
mov eax, dword [ebp - 0x1c]
movzx ecx, byte [ebp + edx - 0x2a4]
jmp 0x100084c8
xor ecx, ecx
test ah, ah
je 0x100084eb
movzx eax, ah
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 0x14], eax
jmp 0x100084f2
mov dword [ebp - 0x14], 0
mov al, byte [ebp - 0x1a]
test al, al
je 0x10008518
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 8], eax
jmp 0x1000851f
mov dword [ebp - 8], 0
mov al, byte [ebp - 0x19]
test al, al
je 0x10008546
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
mov edi, 0xff
div edi
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x10008548
xor eax, eax
shl ecx, 8
or ecx, dword [ebp - 0x14]
shl ecx, 8
or ecx, dword [ebp - 8]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x54]
mov dword [esi + 0x10010d38], ecx
test eax, eax
jne 0x1000857f
mov dword [ebx + 0x1000e138], eax
xor ecx, ecx
mov dword [ebx + 0x1000e538], eax
mov dword [ebx + 0x1000e938], eax
jmp 0x100088b9
movzx eax, al
movzx edi, byte [ebp + eax - 0x1a4]
mov eax, dword [ebp - 0x28]
test al, al
je 0x100085b4
movzx eax, al
mov ecx, 0xff
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div ecx
mov eax, dword [ebp - 0x28]
movzx ecx, byte [ebp + edx - 0x2a4]
jmp 0x100085b6
xor ecx, ecx
test ah, ah
je 0x100085d9
movzx eax, ah
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 0x14], eax
jmp 0x100085e0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x26]
test al, al
je 0x10008606
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 8], eax
jmp 0x1000860d
mov dword [ebp - 8], 0
mov eax, dword [ebp - 0x25]
test al, al
je 0x10008634
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
mov edi, 0xff
div edi
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x10008636
xor eax, eax
shl ecx, 8
or ecx, dword [ebp - 0x14]
shl ecx, 8
or ecx, dword [ebp - 8]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x54]
movzx eax, al
mov dword [ebx + 0x1000e138], ecx
movzx edi, byte [ebp + eax - 0x1a4]
mov eax, dword [ebp - 0x24]
test al, al
je 0x10008682
movzx eax, al
mov ecx, 0xff
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div ecx
movzx ecx, byte [ebp + edx - 0x2a4]
jmp 0x10008684
xor ecx, ecx
mov eax, dword [ebp - 0x23]
test al, al
je 0x100086aa
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 0x14], eax
jmp 0x100086b1
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x22]
test al, al
je 0x100086d7
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 8], eax
jmp 0x100086de
mov dword [ebp - 8], 0
mov eax, dword [ebp - 0x21]
test al, al
je 0x10008705
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
mov edi, 0xff
div edi
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x10008707
xor eax, eax
shl ecx, 8
or ecx, dword [ebp - 0x14]
shl ecx, 8
or ecx, dword [ebp - 8]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x54]
movzx eax, al
mov dword [ebx + 0x1000e538], ecx
movzx edi, byte [ebp + eax - 0x1a4]
mov eax, dword [ebp - 0x20]
test al, al
je 0x10008753
movzx eax, al
mov ecx, 0xff
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div ecx
movzx ecx, byte [ebp + edx - 0x2a4]
jmp 0x10008755
xor ecx, ecx
mov eax, dword [ebp - 0x1f]
test al, al
je 0x1000877b
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 0x14], eax
jmp 0x10008782
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x1e]
test al, al
je 0x100087a8
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div dword [ebp - 0xc]
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 8], eax
jmp 0x100087af
mov dword [ebp - 8], 0
mov eax, dword [ebp - 0x1d]
test al, al
je 0x100087d6
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
mov edi, 0xff
div edi
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x100087d8
xor eax, eax
shl ecx, 8
or ecx, dword [ebp - 0x14]
shl ecx, 8
or ecx, dword [ebp - 8]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x54]
movzx eax, al
mov dword [ebx + 0x1000e938], ecx
mov ebx, dword [ebp - 0x1c]
movzx edi, byte [ebp + eax - 0x1a4]
test bl, bl
je 0x10008824
movzx eax, bl
mov ecx, 0xff
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div ecx
movzx ecx, byte [ebp + edx - 0x2a4]
jmp 0x10008826
xor ecx, ecx
test bh, bh
je 0x1000884d
movzx eax, bh
xor edx, edx
mov ebx, 0xff
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div ebx
movzx eax, byte [ebp + edx - 0x2a4]
mov dword [ebp - 0x14], eax
jmp 0x10008859
mov dword [ebp - 0x14], 0
mov ebx, 0xff
mov al, byte [ebp - 0x1a]
test al, al
je 0x1000887b
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
div ebx
movzx ebx, byte [ebp + edx - 0x2a4]
jmp 0x1000887d
xor ebx, ebx
mov al, byte [ebp - 0x19]
test al, al
je 0x100088a4
movzx eax, al
xor edx, edx
movzx eax, byte [ebp + eax - 0x1a4]
add eax, edi
mov edi, 0xff
div edi
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x100088a6
xor eax, eax
shl ecx, 8
or ecx, dword [ebp - 0x14]
shl ecx, 8
or ecx, ebx
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x54]
inc eax
mov dword [esi + 0x1000ed38], ecx
mov dword [ebp - 0x54], eax
cmp eax, 0x100
jl 0x10008020
mov bl, byte [ebp - 0x1a2]
mov eax, 1
mov byte [0x1000df18], 1
mov esi, eax
pop edi
test al, al
je 0x1000890a
movzx eax, al
xor edx, edx
movzx ecx, bl
movzx eax, byte [ebp + eax - 0x1a4]
add eax, ecx
mov ecx, 0xff
div ecx
movzx eax, byte [ebp + edx - 0x2a4]
jmp 0x1000890c
xor eax, eax
mov byte [esi + 0x1000df18], al
inc esi
cmp esi, 0x1e
jl 0x100088e3
pop esi
pop ebx
mov esp, ebp
pop ebp
ret