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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xea8
mov eax, dword [0x93d814]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x28]
mov edx, dword [ebp + 0x18]
mov dword [ebp - 0xcb0], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xc90], ecx
mov ecx, dword [ebp + 0x2c]
mov dword [ebp - 0xc98], eax
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0x30]
push esi
mov dword [ebp - 0xcb4], ecx
mov ecx, dword [ebp + 0x34]
mov dword [ebp - 0xca8], eax
mov eax, dword [ebp + 0x14]
push edi
mov dword [ebp - 0xcb8], ecx
lea edi, [ebp - 0x85c]
mov dword [ebp - 0xcc4], eax
mov ecx, 0x10a
mov eax, dword [ebp + 0x1c]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0xca8]
lea edi, [ebp - 0x434]
mov ecx, 0x10a
mov dword [ebp - 0xc94], edx
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0xc90]
mov dword [ebp - 0xca0], eax
mov dword [ebp - 0xcbc], ebx
test esi, esi
je 0x4488fb
mov ecx, 0x10a
lea edi, [ebp - 0xc84]
rep movsd dword es:[edi], dword [esi]
jmp 0x448917
push 0x428
lea eax, [ebp - 0xc84]
push 0
push eax
call fcn.00497290
mov eax, dword [ebp - 0xca0]
add esp, 0xc
cmp byte [ebp - 0x859], 0
jne 0x448933
cmp byte [ebp - 0x431], 0
mov dword [ebp - 0xca4], 0
je 0x44893d
mov dword [ebp - 0xca4], 1
mov cl, byte [ebp - 0x429]
mov esi, dword [ebp + 0x20]
mov byte [ebp - 0xcd1], cl
test cl, cl
je 0x448964
test esi, esi
jne 0x44895d
cmp byte [ebp - 0x851], 0
je 0x448964
mov ecx, 1
jmp 0x448966
xor ecx, ecx
cmp byte [ebp - 0xcd1], 0
mov dword [ebp - 0xcd8], ecx
je 0x44898c
test esi, esi
je 0x44898c
cmp byte [ebp - 0x851], 0
mov dword [ebp - 0xd14], 1
je 0x448996
mov dword [ebp - 0xd14], 0
cmp ecx, 1
je 0x4489aa
cmp byte [ebp - 0xcd1], 0
je 0x4489aa
cmp dword [ebp + 0x4c], 1
jne 0x4489b1
mov dword [ebp + 0x3c], 0
mov edi, dword [ebp - 0xcb8]
xor ecx, ecx
cmp dword [ebp + 0x38], ecx
cmove ecx, dword [ebp + 0x50]
mov esi, dword [edi + 8]
mov dword [ebp - 0xd50], ecx
mov ecx, dword [edi]
sub esi, ecx
mov dword [ebp - 0xcc0], ecx
mov ecx, dword [edi + 4]
mov edi, dword [edi + 0xc]
sub edi, ecx
mov dword [ebp - 0xc8c], esi
mov dword [ebp - 0xc9c], edi
test esi, esi
je 0x44f87b
test edi, edi
je 0x44f87b
cmp byte [ebp - 0x859], 0
mov edx, dword [ebp - 0x418]
mov dword [ebp - 0xd6c], edx
mov edx, dword [ebp - 0x41c]
mov dword [ebp - 0xd2c], edx
mov edx, dword [ebp - 0x420]
mov dword [ebp - 0xcf8], edx
mov edx, dword [ebp - 0x424]
mov dword [ebp - 0xd3c], edx
mov dl, byte [ebp - 0x42f]
mov byte [ebp - 0xc85], dl
mov edx, dword [ebp - 0xc94]
jne 0x448a4b
cmp byte [ebp - 0x85a], 0x10
je 0x448a65
cmp byte [ebp - 0x431], 0
jne 0x448c52
cmp byte [ebp - 0x432], 0x10
jne 0x448c52
cmp dword [ebp + 0x3c], 0
jne 0x448b6e
cmp dword [ebp - 0xd14], 0
jne 0x448b6e
cmp dword [ebp + 0x48], 0
jne 0x448b6e
cmp dword [ebp + 0x4c], 0
jne 0x448b6e
mov al, byte [ebp - 0x859]
cmp byte [ebp - 0x431], al
jne 0x448b6e
mov al, byte [ebp - 0x85a]
cmp byte [ebp - 0x432], al
jne 0x448b6e
mov al, byte [ebp - 0x85b]
cmp byte [ebp - 0x433], al
jne 0x448b6e
mov al, byte [ebp - 0x430]
cmp al, byte [ebp - 0x858]
jne 0x448b6e
imul ebx, dword [ebp - 0xc98]
movzx eax, al
mov edx, eax
imul eax, dword [ebp - 0xcb4]
imul edx, esi
add eax, dword [ebp - 0xcb0]
add ebx, eax
mov dword [ebp - 0xc90], edx
movzx eax, byte [ebp - 0x858]
imul eax, dword [ebp - 0xcc0]
mov edx, dword [ebp - 0xc94]
imul ecx, edx
mov dword [ebp - 0xcdc], ebx
mov ebx, dword [ebp - 0xc90]
sub edx, ebx
add eax, dword [ebp - 0xcc4]
mov dword [ebp - 0xd10], edx
mov edx, dword [ebp - 0xcdc]
add ecx, eax
mov eax, dword [ebp - 0xc98]
sub eax, ebx
shr ebx, 2
mov dword [ebp - 0xc90], eax
mov esi, ebx
mov eax, dword [ecx]
add ecx, 4
mov dword [edx], eax
add edx, 4
sub esi, 1
jne 0x448b48
add edx, dword [ebp - 0xc90]
add ecx, dword [ebp - 0xd10]
sub edi, 1
jne 0x448b46
mov dword [ebp - 0xc9c], edi
mov cl, byte [ebp - 0xc85]
xor eax, eax
mov dword [ebp - 0xd4c], 0
mov dword [ebp - 0xd1c], 0
mov dword [ebp - 0xcf4], 0
mov dword [ebp - 0xcd8], 0
mov dword [ebp - 0xd38], 0
mov dword [ebp - 0xd70], 0
mov dword [ebp - 0xd74], 0
mov dword [ebp - 0xd64], 0
mov byte [ebp - 0xd01], 0
mov byte [ebp - 0xd09], 0
mov byte [ebp - 0xd00], 0
mov byte [ebp - 0xd02], 0
mov dword [ebp - 0xd78], 0
mov dword [ebp - 0xd80], 0
mov dword [ebp - 0xd5c], 0
mov dword [ebp - 0xd68], 0
mov dword [ebp - 0xd8c], eax
mov dword [ebp - 0xd7c], eax
mov dword [ebp - 0xd84], eax
mov dword [ebp - 0xd28], eax
cmp byte [ebp - 0x859], al
jne 0x44de3f
cmp byte [ebp - 0x85a], 0x10
je 0x44de3f
mov ah, byte [ebp - 0x857]
mov edi, dword [ebp - 0x84c]
mov esi, dword [ebp - 0x840]
jmp 0x44de85
cmp dword [ebp - 0xca4], 0
je 0x448d67
cmp dword [ebp + 0x3c], 0
jne 0x448b6e
cmp dword [ebp - 0xd14], 0
jne 0x448b6e
cmp dword [ebp + 0x48], 0
jne 0x448b6e
cmp dword [ebp + 0x4c], 0
jne 0x448b6e
mov al, byte [ebp - 0x859]
cmp byte [ebp - 0x431], al
jne 0x448b6e
mov al, byte [ebp - 0x85a]
cmp byte [ebp - 0x432], al
jne 0x448b6e
mov al, byte [ebp - 0x85b]
cmp byte [ebp - 0x433], al
jne 0x448b6e
mov al, byte [ebp - 0x430]
cmp al, byte [ebp - 0x858]
jne 0x448b6e
imul ebx, dword [ebp - 0xc98]
movzx eax, al
mov edi, eax
imul ecx, edx
imul eax, dword [ebp - 0xcb4]
imul edi, esi
add eax, dword [ebp - 0xcb0]
add ebx, eax
mov dword [ebp - 0xc90], edi
movzx eax, byte [ebp - 0x858]
imul eax, dword [ebp - 0xcc0]
mov dword [ebp - 0xcdc], ebx
mov ebx, edi
mov edi, dword [ebp - 0xc9c]
add eax, dword [ebp - 0xcc4]
add ecx, eax
mov eax, dword [ebp - 0xc98]
sub eax, ebx
mov dword [ebp - 0xc90], eax
mov eax, edx
mov edx, dword [ebp - 0xcdc]
sub eax, ebx
mov dword [ebp - 0xd10], eax
shr ebx, 2
nop
mov esi, ebx
mov eax, dword [ecx]
add ecx, 4
mov dword [edx], eax
add edx, 4
sub esi, 1
jne 0x448d42
add edx, dword [ebp - 0xc90]
add ecx, dword [ebp - 0xd10]
sub edi, 1
jne 0x448d40
jmp 0x448b68
mov edx, dword [ebp - 0xca8]
mov bl, byte [edx + 5]
mov byte [ebp - 0xce9], bl
cmp bl, 4
mov ebx, dword [ebp - 0xcbc]
jne 0x448e78
cmp byte [eax + 5], 8
jne 0x44f87b
mov edx, dword [ebp - 0xcb4]
mov eax, edx
and eax, 0x80000001
jns 0x448da3
dec eax
or eax, 0xfffffffe
inc eax
jne 0x44f87b
imul ebx, dword [ebp - 0xc98]
mov eax, edx
cdq
sub eax, edx
sar eax, 1
add ebx, dword [ebp - 0xcb0]
add eax, ebx
mov ebx, dword [ebp - 0xc94]
imul ecx, ebx
sub ebx, esi
mov dword [ebp - 0xca0], eax
mov eax, esi
cdq
sub eax, edx
mov dword [ebp - 0xc94], ebx
sar eax, 1
add ecx, dword [ebp - 0xcc0]
add ecx, dword [ebp - 0xcc4]
sub dword [ebp - 0xc98], eax
mov dword [ebp - 0xc90], ecx
lea ecx, [eax + eax]
sub esi, ecx
mov dword [ebp - 0xcdc], eax
mov ecx, dword [ebp - 0xc90]
nop word [eax + eax]
mov edx, dword [ebp - 0xca0]
mov ebx, eax
mov al, byte [ecx + 1]
shl al, 4
or al, byte [ecx]
add ecx, 2
mov byte [edx], al
inc edx
sub ebx, 1
jne 0x448e18
mov ebx, dword [ebp - 0xc94]
mov dword [ebp - 0xca0], edx
mov edx, dword [ebp - 0xc98]
test esi, esi
je 0x448e52
mov edx, dword [ebp - 0xca0]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
mov edx, dword [ebp - 0xc98]
add dword [ebp - 0xca0], edx
add ecx, ebx
mov eax, dword [ebp - 0xcdc]
sub edi, 1
jne 0x448e10
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x54], 0
mov esi, dword [ebp - 0xca0]
je 0x448fd1
cmp byte [ebp - 0xce9], 8
jne 0x448fd1
cmp byte [esi + 5], 8
jne 0x448fd1
cmp dword [ebp + 0x38], 0
jne 0x448fd1
push 0x400
lea eax, [esi + 0x28]
push eax
lea eax, [edx + 0x28]
push eax
call fcn.004971d0
add esp, 0xc
test eax, eax
je 0x448fcb
mov dword [ebp - 0xcc0], 0
test edi, edi
jle case.0x449de8.9
imul ebx, dword [ebp - 0xc98]
mov eax, dword [ebp - 0xc8c]
mov ecx, dword [ebp - 0xc94]
add ebx, dword [ebp - 0xcb4]
add ebx, dword [ebp - 0xcb0]
mov dword [ebp - 0xcbc], ebx
nop dword [eax]
mov edx, dword [ebp - 0xcb8]
mov esi, dword [ebp - 0xcb8]
mov dword [ebp - 0xca4], ebx
mov edx, dword [edx + 4]
add edx, dword [ebp - 0xcc0]
imul edx, ecx
add edx, dword [ebp - 0xcc4]
add edx, dword [esi]
mov esi, dword [ebp - 0xca0]
mov dword [ebp - 0xc90], edx
test eax, eax
jle 0x448f97
mov ebx, dword [ebp - 0xca8]
mov edi, edx
mov dword [ebp - 0xcd0], eax
movzx ecx, byte [edi]
push 0
movzx eax, byte [esi + ecx*4 + 0x28]
push eax
movzx eax, byte [esi + ecx*4 + 0x29]
push eax
movzx eax, byte [esi + ecx*4 + 0x2a]
push eax
push ebx
call fcn.00448160
mov ecx, dword [ebp - 0xca4]
lea edi, [edi + 1]
add esp, 0x14
mov byte [ecx], al
inc ecx
sub dword [ebp - 0xcd0], 1
mov dword [ebp - 0xca4], ecx
jne 0x448f44
mov ebx, dword [ebp - 0xcbc]
mov edi, dword [ebp - 0xc9c]
mov eax, dword [ebp - 0xc8c]
mov ecx, dword [ebp - 0xc94]
mov edx, dword [ebp - 0xcc0]
add ebx, dword [ebp - 0xc98]
inc edx
mov dword [ebp - 0xcc0], edx
mov dword [ebp - 0xcbc], ebx
cmp edx, edi
jl 0x448f00
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0xca8]
mov cl, byte [edx + 5]
mov edx, dword [ebp + 0x4c]
cmp cl, 8
jne 0x449338
mov al, byte [esi + 5]
cmp al, cl
je 0x449338
test edx, edx
jne 0x449338
cmp dword [ebp + 0x38], edx
jne 0x449338
cmp al, 0x10
je 0x44922c
cmp al, 0x18
je 0x449117
cmp al, 0x20
jne case.0x449de8.9
mov dword [ebp - 0xce8], edx
test edi, edi
jle case.0x449de8.9
imul ebx, dword [ebp - 0xc98]
add ebx, dword [ebp - 0xcb4]
add ebx, dword [ebp - 0xcb0]
mov dword [ebp - 0xcbc], ebx
nop dword [eax]
nop word [eax + eax]
mov eax, dword [ebp - 0xcb8]
mov dword [ebp - 0xca4], ebx
mov ecx, dword [eax + 4]
mov eax, dword [eax]
add ecx, edx
imul ecx, dword [ebp - 0xc94]
add ecx, dword [ebp - 0xcc4]
lea eax, [ecx + eax*4]
mov dword [ebp - 0xc90], eax
mov eax, dword [ebp - 0xc8c]
test eax, eax
jle 0x4490e9
mov edi, dword [ebp - 0xca8]
mov ebx, dword [ebp - 0xc90]
mov dword [ebp - 0xcd0], eax
mov edx, dword [ebx]
mov eax, dword [esi + 0x1c]
mov cl, byte [esi + 0xf]
and eax, edx
shr eax, cl
mov cl, byte [esi + 0xe]
push eax
mov eax, edx
and eax, dword [esi + 0x18]
shr eax, cl
mov cl, byte [esi + 0xd]
push eax
mov eax, dword [esi + 0x14]
and eax, edx
shr eax, cl
mov cl, byte [esi + 0xc]
push eax
mov eax, dword [esi + 0x10]
and eax, edx
shr eax, cl
push eax
push edi
call fcn.00448160
mov ecx, dword [ebp - 0xca4]
lea ebx, [ebx + 4]
add esp, 0x14
mov byte [ecx], al
inc ecx
sub dword [ebp - 0xcd0], 1
mov dword [ebp - 0xca4], ecx
jne 0x449085
mov ebx, dword [ebp - 0xcbc]
mov edi, dword [ebp - 0xc9c]
mov edx, dword [ebp - 0xce8]
add ebx, dword [ebp - 0xc98]
inc edx
mov dword [ebp - 0xce8], edx
mov dword [ebp - 0xcbc], ebx
cmp edx, edi
jl 0x449040
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
xor edx, edx
mov dword [ebp - 0xce8], edx
test edi, edi
jle case.0x449de8.9
imul ebx, dword [ebp - 0xc98]
add ebx, dword [ebp - 0xcb4]
add ebx, dword [ebp - 0xcb0]
mov dword [ebp - 0xcbc], ebx
mov eax, dword [ebp - 0xcb8]
mov dword [ebp - 0xca4], ebx
mov ecx, dword [eax + 4]
mov eax, dword [eax]
add ecx, edx
imul ecx, dword [ebp - 0xc94]
add ecx, dword [ebp - 0xcc4]
lea eax, [ecx + eax*2]
mov dword [ebp - 0xc90], eax
mov eax, dword [ebp - 0xc8c]
test eax, eax
jle 0x4491fe
mov edi, dword [ebp - 0xca8]
mov ebx, dword [ebp - 0xc90]
mov dword [ebp - 0xcd0], eax
nop dword [eax]
movzx edx, byte [ebx + 2]
movzx eax, word [ebx]
mov cl, byte [esi + 0xf]
shl edx, 0x10
or edx, eax
mov eax, dword [esi + 0x1c]
and eax, edx
shr eax, cl
mov cl, byte [esi + 0xe]
push eax
mov eax, edx
and eax, dword [esi + 0x18]
shr eax, cl
mov cl, byte [esi + 0xd]
push eax
mov eax, dword [esi + 0x14]
and eax, edx
shr eax, cl
mov cl, byte [esi + 0xc]
push eax
mov eax, dword [esi + 0x10]
and eax, edx
shr eax, cl
push eax
push edi
call fcn.00448160
mov ecx, dword [ebp - 0xca4]
lea ebx, [ebx + 3]
add esp, 0x14
mov byte [ecx], al
inc ecx
sub dword [ebp - 0xcd0], 1
mov dword [ebp - 0xca4], ecx
jne 0x449190
mov ebx, dword [ebp - 0xcbc]
mov edi, dword [ebp - 0xc9c]
mov edx, dword [ebp - 0xce8]
add ebx, dword [ebp - 0xc98]
inc edx
mov dword [ebp - 0xce8], edx
mov dword [ebp - 0xcbc], ebx
cmp edx, edi
jl 0x449140
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
xor edx, edx
mov dword [ebp - 0xce8], edx
test edi, edi
jle case.0x449de8.9
imul ebx, dword [ebp - 0xc98]
add ebx, dword [ebp - 0xcb4]
add ebx, dword [ebp - 0xcb0]
mov dword [ebp - 0xcbc], ebx
nop word [eax + eax]
mov eax, dword [ebp - 0xcb8]
mov dword [ebp - 0xca4], ebx
mov ecx, dword [eax + 4]
mov eax, dword [eax]
add ecx, edx
imul ecx, dword [ebp - 0xc94]
add ecx, dword [ebp - 0xcc4]
lea eax, [ecx + eax*2]
mov dword [ebp - 0xc90], eax
mov eax, dword [ebp - 0xc8c]
test eax, eax
jle 0x44930a
mov edi, dword [ebp - 0xca8]
mov ebx, dword [ebp - 0xc90]
mov dword [ebp - 0xcd0], eax
movzx edx, word [ebx]
mov eax, dword [esi + 0x1c]
mov cl, byte [esi + 0xf]
and eax, edx
shr eax, cl
mov cl, byte [esi + 0xe]
push eax
mov eax, edx
and eax, dword [esi + 0x18]
shr eax, cl
mov cl, byte [esi + 0xd]
push eax
mov eax, dword [esi + 0x14]
and eax, edx
shr eax, cl
mov cl, byte [esi + 0xc]
push eax
mov eax, dword [esi + 0x10]
and eax, edx
shr eax, cl
push eax
push edi
call fcn.00448160
mov ecx, dword [ebp - 0xca4]
lea ebx, [ebx + 2]
add esp, 0x14
mov byte [ecx], al
inc ecx
sub dword [ebp - 0xcd0], 1
mov dword [ebp - 0xca4], ecx
jne 0x4492a5
mov ebx, dword [ebp - 0xcbc]
mov edi, dword [ebp - 0xc9c]
mov edx, dword [ebp - 0xce8]
add ebx, dword [ebp - 0xc98]
inc edx
mov dword [ebp - 0xce8], edx
mov dword [ebp - 0xcbc], ebx
cmp edx, edi
jl 0x449260
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x48]
cmp cl, 8
mov ecx, dword [ebp + 0x38]
jne 0x44941d
test eax, eax
jne 0x44941d
cmp dword [ebp - 0xd50], eax
jne 0x44941d
test edx, edx
jne 0x44941d
test ecx, ecx
jne 0x44941d
cmp byte [esi + 5], 8
jne 0x44f87b
mov esi, dword [ebp - 0xcb8]
mov edx, dword [ebp - 0xc94]
mov ecx, dword [ebp - 0xc98]
imul ebx, ecx
mov eax, dword [esi + 4]
imul eax, edx
add ebx, dword [ebp - 0xcb4]
add ebx, dword [ebp - 0xcb0]
add eax, dword [ebp - 0xcc4]
add eax, dword [esi]
mov dword [ebp - 0xcf8], eax
mov eax, dword [ebp - 0xc8c]
sub edx, eax
sub ecx, eax
mov dword [ebp - 0xc94], edx
mov dword [ebp - 0xc98], ecx
xor esi, esi
mov edx, dword [ebp - 0xcf8]
mov edi, eax
nop word [eax + eax]
mov cl, byte [edx]
movzx eax, cl
cmp esi, eax
mov byte [ebx], cl
cmovb esi, eax
inc ebx
inc edx
sub edi, 1
jne 0x4493d0
add ebx, dword [ebp - 0xc98]
mov eax, dword [ebp - 0xc8c]
mov dword [ebp - 0xcf8], edx
mov edx, dword [ebp - 0xc94]
add dword [ebp - 0xcf8], edx
sub dword [ebp - 0xc9c], 1
jne 0x4493c2
pop edi
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x3c], 0
jne 0x449aa3
cmp dword [ebp - 0xd14], 0
jne 0x449aa3
test eax, eax
mov ah, byte [ebp - 0x85b]
mov al, byte [ebp - 0xc85]
jne 0x449aaf
test edx, edx
mov dl, byte [ebp - 0x857]
jne 0x449ab5
cmp byte [ebp - 0x433], 0
jne 0x449ab5
test ah, ah
jne 0x449ab5
cmp al, dl
jne 0x449ab5
mov esi, dword [ebp - 0x84c]
cmp dword [ebp - 0x424], esi
jne 0x449ab5
mov esi, dword [ebp - 0x848]
cmp dword [ebp - 0x420], esi
mov esi, dword [ebp - 0x41c]
jne 0x449abb
cmp esi, dword [ebp - 0x844]
jne 0x449abb
mov edi, dword [ebp - 0x840]
cmp dword [ebp - 0x418], edi
mov edi, dword [ebp - 0xc9c]
jne 0x449abb
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc8c]
mov eax, edx
imul ebx, dword [ebp - 0xc98]
imul eax, ecx
cmp dword [ebp + 0x38], 0
mov dword [ebp - 0xc90], edx
mov dword [ebp - 0xcf8], eax
jne 0x449914
mov eax, edx
mov edx, dword [ebp - 0xcb8]
imul eax, dword [ebp - 0xcb4]
mov esi, dword [edx + 4]
add eax, dword [ebp - 0xcb0]
add ebx, eax
movzx eax, byte [ebp - 0x858]
imul eax, dword [edx]
mov edx, dword [ebp - 0xc94]
imul esi, edx
add eax, dword [ebp - 0xcc4]
add esi, eax
mov eax, dword [ebp - 0xcf8]
sub dword [ebp - 0xc98], eax
sub edx, eax
cmp dword [ebp - 0xd50], 1
mov dword [ebp - 0xc94], edx
jne 0x4496dc
movzx eax, byte [ebp - 0xc85]
add eax, 0xfffffff8
cmp eax, 0x18
ja case.0x449de8.9
movzx eax, byte [eax + 0x44f8a4]
jmp dword [eax*4 + 0x44f890]
movzx eax, word [ebp + 0x40]
mov dword [ebp - 0xcdc], eax
mov eax, dword [ebp - 0xc98]
nop word [eax + eax]
mov dword [ebp - 0xc90], ecx
mov edx, dword [esi]
cmp edx, dword [ebp - 0xcdc]
je 0x449592
mov dword [ebx], edx
add ebx, 4
add esi, 4
sub ecx, 1
jne 0x449586
add esi, dword [ebp - 0xc94]
add ebx, eax
mov ecx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x449580
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
movzx edi, word [ebp + 0x40]
mov edx, ecx
nop dword [eax]
movzx eax, word [esi]
movzx ecx, byte [esi + 2]
mov dword [ebp - 0xc90], eax
shl ecx, 0x10
movzx eax, ax
or ecx, eax
cmp ecx, edi
je 0x4495f8
mov eax, dword [ebp - 0xc90]
mov word [ebx], ax
mov al, byte [esi + 2]
mov byte [ebx + 2], al
add ebx, 3
add esi, 3
sub edx, 1
jne 0x4495d0
add ebx, dword [ebp - 0xc98]
add esi, dword [ebp - 0xc94]
sub dword [ebp - 0xc9c], 1
mov ecx, dword [ebp - 0xc8c]
jne case.0x449560.24
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
movzx eax, word [ebp + 0x40]
mov dword [ebp - 0xc90], eax
nop dword [eax + eax]
mov edx, ecx
movzx eax, word [esi]
mov dword [ebp - 0xcdc], eax
movzx eax, ax
cmp eax, dword [ebp - 0xc90]
je 0x44965f
mov eax, dword [ebp - 0xcdc]
mov word [ebx], ax
add ebx, 2
add esi, 2
sub edx, 1
jne 0x449642
add ebx, dword [ebp - 0xc98]
add esi, dword [ebp - 0xc94]
sub edi, 1
jne 0x449640
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
movzx eax, byte [ebp + 0x40]
mov dword [ebp - 0xc90], eax
nop dword [eax + eax]
mov edx, ecx
movzx eax, byte [esi]
cmp eax, dword [ebp - 0xc90]
je 0x4496b1
mov al, byte [esi]
mov byte [ebx], al
inc ebx
inc esi
sub edx, 1
jne 0x4496a2
add ebx, dword [ebp - 0xc98]
add esi, dword [ebp - 0xc94]
sub edi, 1
jne 0x4496a0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [ebp - 0xca0], eax
lea ecx, [eax*4]
mov eax, dword [ebp - 0xcf8]
sub eax, ecx
movzx ecx, byte [ebp - 0xc85]
cdq
add ecx, 0xfffffff8
idiv dword [ebp - 0xc90]
mov edx, eax
cmp ecx, 0x18
ja case.0x449de8.9
movzx ecx, byte [ecx + 0x44f8d4]
jmp dword [ecx*4 + 0x44f8c0]
mov eax, dword [ebp - 0xca0]
cdq
and edx, 0xf
add eax, edx
mov edx, dword [ebp - 0xca0]
sar eax, 4
mov ecx, eax
mov dword [ebp - 0xc90], eax
neg ecx
shl ecx, 4
add edx, ecx
test eax, eax
je 0x4497b9
mov ecx, eax
nop
mov eax, dword [esi]
mov dword [ebx], eax
mov eax, dword [esi + 4]
mov dword [ebx + 4], eax
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ebx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ebx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ebx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ebx + 0x18], eax
mov eax, dword [esi + 0x1c]
mov dword [ebx + 0x1c], eax
mov eax, dword [esi + 0x20]
mov dword [ebx + 0x20], eax
mov eax, dword [esi + 0x24]
mov dword [ebx + 0x24], eax
mov eax, dword [esi + 0x28]
mov dword [ebx + 0x28], eax
mov eax, dword [esi + 0x2c]
mov dword [ebx + 0x2c], eax
mov eax, dword [esi + 0x30]
mov dword [ebx + 0x30], eax
mov eax, dword [esi + 0x34]
mov dword [ebx + 0x34], eax
mov eax, dword [esi + 0x38]
mov dword [ebx + 0x38], eax
mov eax, dword [esi + 0x3c]
add esi, 0x40
mov dword [ebx + 0x3c], eax
add ebx, 0x40
sub ecx, 1
jne 0x449750
test edx, edx
jle 0x4497cf
mov ecx, edx
nop
mov eax, dword [esi]
add esi, 4
mov dword [ebx], eax
add ebx, 4
sub ecx, 1
jne 0x4497c0
add ebx, dword [ebp - 0xc98]
add esi, dword [ebp - 0xc94]
mov eax, dword [ebp - 0xc90]
sub edi, 1
jne 0x449748
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xca0]
test eax, eax
je 0x44981f
mov ecx, eax
nop dword [eax]
mov eax, dword [esi]
add esi, 4
mov dword [ebx], eax
add ebx, 4
sub ecx, 1
jne 0x449810
test edx, edx
je 0x44983c
mov ecx, edx
mov ax, word [esi]
mov word [ebx], ax
mov al, byte [esi + 2]
add esi, 3
mov byte [ebx + 2], al
add ebx, 3
sub ecx, 1
jne 0x449825
add ebx, dword [ebp - 0xc98]
add esi, dword [ebp - 0xc94]
sub edi, 1
jne case.0x44971d.24
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xca0]
test eax, eax
je 0x44987f
mov ecx, eax
nop dword [eax]
mov eax, dword [esi]
add esi, 4
mov dword [ebx], eax
add ebx, 4
sub ecx, 1
jne 0x449870
test edx, edx
je 0x449896
mov ecx, edx
mov ax, word [esi]
add esi, 2
mov word [ebx], ax
add ebx, 2
sub ecx, 1
jne 0x449885
add ebx, dword [ebp - 0xc98]
add esi, dword [ebp - 0xc94]
sub edi, 1
jne case.0x44971d.16
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xca0]
test eax, eax
je 0x4498df
mov ecx, eax
nop dword [eax]
mov eax, dword [esi]
add esi, 4
mov dword [ebx], eax
add ebx, 4
sub ecx, 1
jne 0x4498d0
test edx, edx
je 0x4498f0
mov ecx, edx
mov al, byte [esi]
inc esi
mov byte [ebx], al
inc ebx
sub ecx, 1
jne 0x4498e5
add ebx, dword [ebp - 0xc98]
add esi, dword [ebp - 0xc94]
sub edi, 1
jne case.0x44971d.8
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xcb4]
mov esi, dword [ebp - 0xc94]
dec eax
add eax, ecx
imul eax, edx
mov edx, dword [ebp - 0xcb8]
add eax, dword [ebp - 0xcb0]
add ebx, eax
movzx eax, byte [ebp - 0x858]
imul eax, dword [edx]
mov edx, dword [edx + 4]
imul edx, esi
sub esi, dword [ebp - 0xcf8]
add eax, dword [ebp - 0xcc4]
add edx, eax
mov eax, dword [ebp - 0xc98]
add eax, dword [ebp - 0xcf8]
mov dword [ebp - 0xca0], eax
movzx eax, byte [ebp - 0xc85]
add eax, 0xfffffff8
cmp eax, 0x18
ja case.0x449de8.9
movzx eax, byte [eax + 0x44f904]
jmp dword [eax*4 + 0x44f8f0]
mov dword [ebp - 0xc90], ecx
nop dword [eax + eax]
mov eax, dword [edx]
add edx, 4
mov dword [ebx], eax
sub ebx, 4
sub ecx, 1
jne 0x449990
add ebx, dword [ebp - 0xca0]
add edx, esi
mov ecx, dword [ebp - 0xc8c]
sub edi, 1
jne case.0x44997e.32
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0xc90], ecx
mov ax, word [edx]
mov word [ebx], ax
mov al, byte [edx + 2]
add edx, 3
mov byte [ebx + 2], al
sub ebx, 3
sub ecx, 1
jne 0x4499d6
add ebx, dword [ebp - 0xca0]
add edx, esi
mov ecx, dword [ebp - 0xc8c]
sub edi, 1
jne case.0x44997e.24
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0xc90], ecx
nop dword [eax]
mov ax, word [edx]
add edx, 2
mov word [ebx], ax
sub ebx, 2
sub ecx, 1
jne 0x449a20
add ebx, dword [ebp - 0xca0]
add edx, esi
mov ecx, dword [ebp - 0xc8c]
sub edi, 1
jne case.0x44997e.16
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
test edi, edi
jle case.0x449de8.9
mov eax, dword [ebp - 0xca0]
test ecx, ecx
jle 0x449a87
mov dword [ebp - 0xc90], ecx
nop
mov al, byte [edx]
inc edx
mov byte [ebx], al
dec ebx
sub ecx, 1
jne 0x449a70
mov ecx, dword [ebp - 0xc8c]
mov eax, dword [ebp - 0xca0]
add ebx, eax
add edx, esi
sub edi, 1
jne 0x449a65
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov ah, byte [ebp - 0x85b]
mov al, byte [ebp - 0xc85]
mov dl, byte [ebp - 0x857]
mov esi, dword [ebp - 0x41c]
cmp dword [ebp - 0xd50], 1
jne 0x449c60
cmp dword [ebp + 0x48], 0
jne 0x448b6e
cmp dword [ebp - 0xd14], 0
jne 0x448b6e
mov ecx, dword [ebp - 0xcd8]
test ecx, ecx
jne 0x448b6e
cmp dword [ebp + 0x4c], ecx
jne 0x448b6e
cmp dword [ebp + 0x3c], ecx
jne 0x448b6e
cmp dword [ebp + 0x38], ecx
jne 0x448b6e
cmp dl, 0x20
jne 0x448b6e
cmp al, dl
jne 0x448b6e
cmp dword [ebp - 0x84c], 0xff0000
jne 0x448b6e
cmp dword [ebp - 0x848], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x844], 0xff
jne 0x448b6e
cmp dword [ebp - 0x840], ecx
jne 0x448b6e
cmp dword [ebp - 0x424], 0xff0000
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp esi, 0xff
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
mov eax, dword [ebp + 0x40]
movzx edx, byte [ebp - 0x430]
and eax, 0xffffff
imul ebx, dword [ebp - 0xc98]
mov edi, dword [ebp - 0xcb8]
mov esi, dword [ebp - 0xc94]
movzx ecx, byte [ebp - 0x858]
mov dword [ebp - 0xcdc], eax
mov eax, edx
imul eax, dword [ebp - 0xcb4]
add eax, dword [ebp - 0xcb0]
add ebx, eax
mov eax, dword [edi + 4]
mov edi, dword [edi]
imul eax, esi
imul edi, ecx
add eax, dword [ebp - 0xcc4]
add edi, eax
mov eax, dword [ebp - 0xc8c]
imul edx, eax
imul ecx, eax
mov dword [ebp - 0xc90], edi
mov edi, dword [ebp - 0xc9c]
sub dword [ebp - 0xc98], edx
mov edx, dword [ebp - 0xc90]
sub esi, ecx
mov dword [ebp - 0xc94], esi
mov esi, eax
mov ecx, dword [edx]
mov eax, ecx
and eax, 0xffffff
cmp eax, dword [ebp - 0xcdc]
je 0x449c2b
or ecx, 0xff000000
mov dword [ebx], ecx
add ebx, 4
add edx, 4
sub esi, 1
jne 0x449c12
add ebx, dword [ebp - 0xc98]
add edx, dword [ebp - 0xc94]
mov eax, dword [ebp - 0xc8c]
sub edi, 1
jne 0x449c10
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp byte [ebp - 0xcd1], 0
je 0x44a02f
cmp dword [ebp + 0x3c], 1
jne 0x44a02f
cmp dword [ebp + 0x48], 0
jne 0x44a02f
cmp dword [ebp + 0x4c], 0
jne 0x44a02f
mov edi, dword [ebp - 0x84c]
cmp dword [ebp - 0x424], edi
mov edi, dword [ebp - 0xc9c]
jne 0x44a02f
mov edi, dword [ebp - 0x848]
cmp dword [ebp - 0x420], edi
mov edi, dword [ebp - 0xc9c]
jne 0x44a02f
cmp esi, dword [ebp - 0x844]
jne 0x44a02f
cmp al, dl
jne 0x44a02f
mov ecx, dword [ebp + 0x40]
push 0xff
movzx eax, cl
push eax
mov eax, ecx
shr ecx, 0x10
shr eax, 8
movzx eax, al
push eax
movzx eax, cl
push eax
lea eax, [ebp - 0x434]
push eax
call fcn.00448160
or esi, dword [ebp - 0x420]
add esp, 0x14
or esi, dword [ebp - 0x424]
cmp dword [ebp + 0x38], 1
not esi
mov edx, dword [ebp - 0xc8c]
mov dword [ebp - 0xcf8], eax
mov dword [ebp - 0xd2c], esi
jne 0x449d57
movzx ecx, byte [ebp - 0x430]
mov esi, ecx
imul esi, edx
add esi, dword [ebp - 0xc98]
mov dword [ebp - 0xcfc], esi
mov esi, ecx
neg esi
mov dword [ebp - 0xcac], esi
mov esi, dword [ebp - 0xcb4]
dec esi
add esi, edx
imul esi, ecx
imul ebx, dword [ebp - 0xc98]
jmp 0x449d85
movzx esi, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, esi
imul eax, edx
mov dword [ebp - 0xcfc], ecx
mov dword [ebp - 0xcac], esi
imul esi, dword [ebp - 0xcb4]
sub dword [ebp - 0xcfc], eax
imul ebx, ecx
mov ecx, dword [ebp - 0xcb8]
add esi, ebx
movzx eax, byte [ebp - 0x858]
mov ebx, dword [ebp - 0xc94]
add esi, dword [ebp - 0xcb0]
mov dword [ebp - 0xca8], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
imul ecx, dword [ebp - 0xca8]
imul eax, ebx
add eax, dword [ebp - 0xcc4]
add ecx, eax
mov eax, dword [ebp - 0xca8]
imul eax, edx
sub ebx, eax
movzx eax, byte [ebp - 0xc85]
add eax, 0xfffffff8
mov dword [ebp - 0xc94], ebx
cmp eax, 0x18
ja case.0x449de8.9
movzx eax, byte [eax + 0x44f934]
jmp dword [eax*4 + 0x44f920]
test edi, edi
jle case.0x449de8.9
mov eax, dword [ebp - 0xcac]
nop dword [eax]
test edx, edx
jle 0x449e4f
mov edi, edx
mov edx, dword [ebp - 0xca8]
nop dword [eax]
mov bl, byte [ecx]
cmp byte [ebp - 0xcf8], bl
jne 0x449e2c
mov al, byte [ebp - 0x418]
not al
and bl, al
mov eax, dword [ebp - 0xcac]
jmp 0x449e32
or bl, byte [ebp - 0x418]
mov byte [esi], bl
add ecx, edx
add esi, eax
sub edi, 1
jne 0x449e10
mov edi, dword [ebp - 0xc9c]
mov edx, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc94]
add esi, eax
add ecx, ebx
sub edi, 1
mov dword [ebp - 0xc9c], edi
jne 0x449e00
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
test edi, edi
jle case.0x449de8.9
mov eax, dword [ebp - 0xcfc]
nop
test edx, edx
jle 0x449eda
mov eax, dword [ebp - 0xcac]
mov edi, edx
mov edx, dword [ebp - 0xca8]
movzx ebx, word [ecx]
cmp word [ebp - 0xcf8], bx
jne 0x449eb0
mov eax, dword [ebp - 0x418]
not eax
and ebx, eax
mov eax, dword [ebp - 0xcac]
jmp 0x449eb6
or ebx, dword [ebp - 0x418]
mov word [esi], bx
add ecx, edx
add esi, eax
sub edi, 1
jne 0x449e92
mov edi, dword [ebp - 0xc9c]
mov edx, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc94]
mov eax, dword [ebp - 0xcfc]
add esi, eax
add ecx, ebx
sub edi, 1
mov dword [ebp - 0xc9c], edi
jne 0x449e80
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
test edi, edi
jle case.0x449de8.9
mov eax, dword [ebp - 0xcfc]
nop word [eax + eax]
test edx, edx
jle 0x449f7a
mov edi, dword [ebp - 0xca8]
mov dword [ebp - 0xca4], edx
mov edx, dword [ebp - 0xcac]
movzx ebx, byte [ecx + 2]
movzx eax, word [ecx]
shl ebx, 0x10
add ebx, eax
cmp dword [ebp - 0xcf8], ebx
jne 0x449f46
mov eax, dword [ebp - 0x418]
not eax
and ebx, eax
jmp 0x449f4c
or ebx, dword [ebp - 0x418]
mov word [esi], bx
add ecx, edi
shr ebx, 0x10
mov byte [esi + 2], bl
add esi, edx
sub dword [ebp - 0xca4], 1
jne 0x449f26
mov edi, dword [ebp - 0xc9c]
mov edx, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc94]
mov eax, dword [ebp - 0xcfc]
add esi, eax
add ecx, ebx
sub edi, 1
mov dword [ebp - 0xc9c], edi
jne 0x449f10
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
test edi, edi
jle case.0x449de8.9
mov eax, dword [ebp - 0xcfc]
nop word [eax + eax]
test edx, edx
jle 0x44a00d
mov eax, dword [ebp - 0xcac]
mov edi, edx
mov edx, dword [ebp - 0xca8]
mov ebx, dword [ecx]
or ebx, dword [ebp - 0xd2c]
cmp dword [ebp - 0xcf8], ebx
jne 0x449fe4
mov eax, dword [ebp - 0x418]
not eax
and ebx, eax
mov eax, dword [ebp - 0xcac]
jmp 0x449fea
or ebx, dword [ebp - 0x418]
mov dword [esi], ebx
add ecx, edx
add esi, eax
sub edi, 1
jne 0x449fc2
mov edi, dword [ebp - 0xc9c]
mov edx, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc94]
mov eax, dword [ebp - 0xcfc]
add esi, eax
add ecx, ebx
sub edi, 1
mov dword [ebp - 0xc9c], edi
jne 0x449fb0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x44], 0
jne 0x448b6e
cmp dword [ebp + 0x48], 0
jne 0x448b6e
cmp dword [ebp + 0x4c], 0
jne 0x448b6e
test ecx, ecx
jne 0x448b6e
cmp dword [ebp + 0x20], ecx
jne 0x448b6e
mov ecx, dword [ebp + 0x3c]
test ecx, ecx
jne 0x44ca21
cmp ah, 1
jne 0x44a44a
cmp byte [ebp - 0x85a], 8
jne 0x44a740
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, edx
imul eax, dword [ebp - 0xc8c]
mov esi, dword [ebp - 0xc94]
imul edx, dword [ebp - 0xcb4]
sub ecx, eax
mov dword [ebp - 0xcc0], ecx
movzx ecx, byte [ebp - 0x858]
add edx, dword [ebp - 0xcb0]
mov eax, ecx
imul eax, dword [ebp - 0xc8c]
sub esi, eax
mov dword [ebp - 0xce4], esi
mov esi, ebx
imul esi, dword [ebp - 0xc98]
add esi, edx
mov edx, dword [ebp - 0xcb8]
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edi, dword [edx]
imul edi, ecx
add eax, dword [ebp - 0xcc4]
add edi, eax
mov al, byte [ebp - 0x433]
cmp al, 1
jne 0x44a195
cmp byte [ebp - 0x432], 8
jne 0x44a28f
mov eax, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc9c]
cdq
and edx, 7
add eax, edx
mov edx, dword [ebp - 0xc8c]
sar eax, 3
mov dword [ebp - 0xc90], eax
lea ecx, [eax*8]
sub edx, ecx
test eax, eax
je 0x44a155
mov ecx, eax
nop dword [eax + eax]
mov eax, dword [edi]
mov dword [esi], eax
mov eax, dword [edi + 4]
add edi, 8
mov dword [esi + 4], eax
add esi, 8
sub ecx, 1
jne 0x44a140
test edx, edx
je 0x44a16b
mov ecx, edx
nop dword [eax + eax]
mov al, byte [edi]
inc edi
mov byte [esi], al
inc esi
sub ecx, 1
jne 0x44a160
add esi, dword [ebp - 0xcc0]
add edi, dword [ebp - 0xce4]
mov eax, dword [ebp - 0xc90]
sub ebx, 1
jne 0x44a135
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 2
jne 0x44a28f
cmp byte [ebp - 0x432], 8
jne 0x44a28f
mov eax, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc9c]
cdq
and edx, 7
add eax, edx
mov edx, dword [ebp - 0xc8c]
sar eax, 3
mov dword [ebp - 0xc90], eax
lea ecx, [eax*8]
sub edx, ecx
test eax, eax
je 0x44a248
mov ecx, eax
nop word [eax + eax]
mov al, byte [edi]
mov byte [esi], al
mov al, byte [edi]
mov byte [esi + 1], al
mov al, byte [edi + 1]
mov byte [esi + 2], al
mov al, byte [edi + 1]
mov byte [esi + 3], al
mov al, byte [edi + 2]
mov byte [esi + 4], al
mov al, byte [edi + 2]
mov byte [esi + 5], al
mov al, byte [edi + 3]
mov byte [esi + 6], al
mov al, byte [edi + 3]
mov byte [esi + 7], al
mov al, byte [edi + 4]
mov byte [esi + 8], al
mov al, byte [edi + 4]
mov byte [esi + 9], al
mov al, byte [edi + 5]
mov byte [esi + 0xa], al
mov al, byte [edi + 5]
mov byte [esi + 0xb], al
mov al, byte [edi + 6]
mov byte [esi + 0xc], al
mov al, byte [edi + 6]
mov byte [esi + 0xd], al
mov al, byte [edi + 7]
mov byte [esi + 0xe], al
mov al, byte [edi + 7]
add edi, 8
mov byte [esi + 0xf], al
add esi, 0x10
sub ecx, 1
jne 0x44a1e0
test edx, edx
je 0x44a261
mov ecx, edx
nop
mov al, byte [edi]
inc edi
mov byte [esi], al
mov byte [esi + 1], 0
add esi, 2
sub ecx, 1
jne 0x44a250
add esi, dword [ebp - 0xcc0]
add edi, dword [ebp - 0xce4]
mov eax, dword [ebp - 0xc90]
sub ebx, 1
jne 0x44a1d4
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp byte [ebp - 0xc85], 0x20
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44a2ca
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
je 0x44a2f5
jmp 0x448b6e
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
mov eax, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc9c]
cdq
and edx, 7
add eax, edx
mov edx, dword [ebp - 0xc8c]
sar eax, 3
mov dword [ebp - 0xc90], eax
lea ecx, [eax*8]
sub edx, ecx
nop
test eax, eax
je 0x44a3fa
mov ecx, eax
nop word [eax + eax]
mov al, byte [edi]
mov byte [esi], al
mov al, byte [edi]
mov byte [esi + 1], al
mov al, byte [edi]
mov byte [esi + 2], al
mov al, byte [edi]
mov byte [esi + 3], al
mov al, byte [edi + 1]
mov byte [esi + 4], al
mov al, byte [edi + 1]
mov byte [esi + 5], al
mov al, byte [edi + 1]
mov byte [esi + 6], al
mov al, byte [edi + 1]
mov byte [esi + 7], al
mov al, byte [edi + 2]
mov byte [esi + 8], al
mov al, byte [edi + 2]
mov byte [esi + 9], al
mov al, byte [edi + 2]
mov byte [esi + 0xa], al
mov al, byte [edi + 2]
mov byte [esi + 0xb], al
mov al, byte [edi + 3]
mov byte [esi + 0xc], al
mov al, byte [edi + 3]
mov byte [esi + 0xd], al
mov al, byte [edi + 3]
mov byte [esi + 0xe], al
mov al, byte [edi + 3]
mov byte [esi + 0xf], al
mov al, byte [edi + 4]
mov byte [esi + 0x10], al
mov al, byte [edi + 4]
mov byte [esi + 0x11], al
mov al, byte [edi + 4]
mov byte [esi + 0x12], al
mov al, byte [edi + 4]
mov byte [esi + 0x13], al
mov al, byte [edi + 5]
mov byte [esi + 0x14], al
mov al, byte [edi + 5]
mov byte [esi + 0x15], al
mov al, byte [edi + 5]
mov byte [esi + 0x16], al
mov al, byte [edi + 5]
mov byte [esi + 0x17], al
mov al, byte [edi + 6]
mov byte [esi + 0x18], al
mov al, byte [edi + 6]
mov byte [esi + 0x19], al
mov al, byte [edi + 6]
mov byte [esi + 0x1a], al
mov al, byte [edi + 6]
mov byte [esi + 0x1b], al
mov al, byte [edi + 7]
mov byte [esi + 0x1c], al
mov al, byte [edi + 7]
mov byte [esi + 0x1d], al
mov al, byte [edi + 7]
mov byte [esi + 0x1e], al
mov al, byte [edi + 7]
add edi, 8
mov byte [esi + 0x1f], al
add esi, 0x20
sub ecx, 1
jne 0x44a330
test edx, edx
je 0x44a41c
mov ecx, edx
mov al, byte [edi]
mov byte [esi], al
mov al, byte [edi]
mov byte [esi + 1], al
mov al, byte [edi]
mov byte [esi + 2], al
mov al, byte [edi]
inc edi
mov byte [esi + 3], al
add esi, 4
sub ecx, 1
jne 0x44a400
add esi, dword [ebp - 0xcc0]
add edi, dword [ebp - 0xce4]
mov eax, dword [ebp - 0xc90]
sub ebx, 1
jne 0x44a320
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp ah, 2
jne 0x44a740
cmp byte [ebp - 0x85a], 8
jne 0x44a740
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, edx
imul eax, dword [ebp - 0xc8c]
mov esi, dword [ebp - 0xc94]
imul edx, dword [ebp - 0xcb4]
sub ecx, eax
mov dword [ebp - 0xca4], ecx
movzx ecx, byte [ebp - 0x858]
add edx, dword [ebp - 0xcb0]
mov eax, ecx
imul eax, dword [ebp - 0xc8c]
sub esi, eax
mov dword [ebp - 0xcd0], esi
mov esi, ebx
imul esi, dword [ebp - 0xc98]
add esi, edx
mov edx, dword [ebp - 0xcb8]
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edi, dword [edx]
imul edi, ecx
add eax, dword [ebp - 0xcc4]
add edi, eax
cmp byte [ebp - 0x433], 2
jne 0x44a582
cmp byte [ebp - 0x432], 8
jne 0x44a582
mov eax, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc9c]
cdq
and edx, 7
add eax, edx
mov edx, dword [ebp - 0xc8c]
sar eax, 3
mov dword [ebp - 0xc90], eax
lea ecx, [eax*8]
sub edx, ecx
test eax, eax
je 0x44a541
mov ecx, eax
nop dword [eax + eax]
mov eax, dword [edi]
mov dword [esi], eax
mov eax, dword [edi + 4]
mov dword [esi + 4], eax
mov eax, dword [edi + 8]
mov dword [esi + 8], eax
mov eax, dword [edi + 0xc]
add edi, 0x10
mov dword [esi + 0xc], eax
add esi, 0x10
sub ecx, 1
jne 0x44a520
test edx, edx
je 0x44a558
mov ecx, edx
mov ax, word [edi]
add edi, 2
mov word [esi], ax
add esi, 2
sub ecx, 1
jne 0x44a547
add esi, dword [ebp - 0xca4]
add edi, dword [ebp - 0xcd0]
mov eax, dword [ebp - 0xc90]
sub ebx, 1
jne 0x44a515
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov cl, byte [ebp - 0xc85]
cmp cl, 0x20
jne 0x448b74
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44a5bf
cmp dword [ebp - 0x420], 0xff00
jne 0x448b74
cmp dword [ebp - 0x41c], 0xff
je 0x44a5ea
jmp 0x448b74
cmp eax, 0xff
jne 0x448b74
cmp dword [ebp - 0x420], 0xff00
jne 0x448b74
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b74
mov eax, dword [ebp - 0xc8c]
mov ebx, dword [ebp - 0xc9c]
cdq
and edx, 7
add eax, edx
mov edx, dword [ebp - 0xc8c]
sar eax, 3
mov dword [ebp - 0xc90], eax
lea ecx, [eax*8]
sub edx, ecx
test eax, eax
je 0x44a6ec
mov ecx, eax
nop
mov al, byte [edi]
mov byte [esi], al
mov al, byte [edi + 1]
mov byte [esi + 1], al
mov al, byte [edi]
mov byte [esi + 2], al
mov al, byte [edi + 1]
mov byte [esi + 3], al
mov al, byte [edi + 2]
mov byte [esi + 4], al
mov al, byte [edi + 3]
mov byte [esi + 5], al
mov al, byte [edi + 2]
mov byte [esi + 6], al
mov al, byte [edi + 3]
mov byte [esi + 7], al
mov al, byte [edi + 4]
mov byte [esi + 8], al
mov al, byte [edi + 5]
mov byte [esi + 9], al
mov al, byte [edi + 4]
mov byte [esi + 0xa], al
mov al, byte [edi + 5]
mov byte [esi + 0xb], al
mov al, byte [edi + 6]
mov byte [esi + 0xc], al
mov al, byte [edi + 7]
mov byte [esi + 0xd], al
mov al, byte [edi + 6]
mov byte [esi + 0xe], al
mov al, byte [edi + 7]
mov byte [esi + 0xf], al
mov al, byte [edi + 8]
mov byte [esi + 0x10], al
mov al, byte [edi + 9]
mov byte [esi + 0x11], al
mov al, byte [edi + 8]
mov byte [esi + 0x12], al
mov al, byte [edi + 9]
mov byte [esi + 0x13], al
mov al, byte [edi + 0xa]
mov byte [esi + 0x14], al
mov al, byte [edi + 0xb]
mov byte [esi + 0x15], al
mov al, byte [edi + 0xa]
mov byte [esi + 0x16], al
mov al, byte [edi + 0xb]
mov byte [esi + 0x17], al
mov al, byte [edi + 0xc]
mov byte [esi + 0x18], al
mov al, byte [edi + 0xd]
mov byte [esi + 0x19], al
mov al, byte [edi + 0xc]
mov byte [esi + 0x1a], al
mov al, byte [edi + 0xd]
mov byte [esi + 0x1b], al
mov al, byte [edi + 0xe]
mov byte [esi + 0x1c], al
mov al, byte [edi + 0xf]
mov byte [esi + 0x1d], al
mov al, byte [edi + 0xe]
mov byte [esi + 0x1e], al
mov al, byte [edi + 0xf]
add edi, 0x10
mov byte [esi + 0x1f], al
add esi, 0x20
sub ecx, 1
jne 0x44a620
test edx, edx
je 0x44a712
mov ecx, edx
mov al, byte [edi]
mov byte [esi], al
mov al, byte [edi + 1]
mov byte [esi + 1], al
mov al, byte [edi]
mov byte [esi + 2], al
mov al, byte [edi + 1]
add edi, 2
mov byte [esi + 3], al
add esi, 4
sub ecx, 1
jne 0x44a6f2
add esi, dword [ebp - 0xca4]
add edi, dword [ebp - 0xcd0]
mov eax, dword [ebp - 0xc90]
sub ebx, 1
jne 0x44a614
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp dl, 8
jne 0x44ac2d
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, edx
imul eax, dword [ebp - 0xc8c]
mov esi, dword [ebp - 0xc94]
imul edx, dword [ebp - 0xcb4]
sub ecx, eax
mov dword [ebp - 0xca8], ecx
movzx ecx, byte [ebp - 0x858]
add edx, dword [ebp - 0xcb0]
mov eax, ecx
imul eax, dword [ebp - 0xc8c]
sub esi, eax
mov dword [ebp - 0xcac], esi
mov esi, ebx
imul esi, dword [ebp - 0xc98]
add esi, edx
mov edx, dword [ebp - 0xcb8]
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xcd8], edx
cmp al, 0x10
jne 0x44a959
mov eax, dword [ebp - 0x418]
test eax, eax
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xf800
jne 0x44a89e
cmp dword [ebp - 0x420], 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov edi, dword [ebp - 0xcd8]
mov dword [ebp - 0xca4], ebx
mov ebx, 0xfff8
movzx eax, byte [edi]
inc edi
mov eax, dword [ebp + eax*4 - 0x834]
mov ecx, eax
shr ecx, 0x10
movzx edx, cl
mov ecx, eax
and dx, bx
shr ecx, 8
shl dx, 5
movzx ecx, cl
or dx, cx
shr al, 3
mov ecx, 0xfffc
movzx eax, al
and dx, cx
shl dx, 3
or dx, ax
mov word [esi], dx
add esi, 2
sub dword [ebp - 0xca4], 1
jne 0x44a821
add edi, dword [ebp - 0xcac]
add esi, dword [ebp - 0xca8]
sub dword [ebp - 0xc9c], 1
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xcd8], edi
jne 0x44a810
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
nop dword [eax]
mov edi, dword [ebp - 0xcd8]
mov dword [ebp - 0xca4], ebx
mov ebx, 0xfff8
movzx eax, byte [edi]
inc edi
mov eax, dword [ebp + eax*4 - 0x834]
mov ecx, eax
shr ecx, 0x10
movzx edx, cl
mov ecx, eax
and dx, bx
shr ecx, 8
shl dx, 5
movzx ecx, cl
or dx, cx
shr al, 3
and dx, bx
movzx eax, al
shl dx, 2
or dx, ax
mov word [esi], dx
add esi, 2
sub dword [ebp - 0xca4], 1
jne 0x44a8e1
add edi, dword [ebp - 0xcac]
add esi, dword [ebp - 0xca8]
sub dword [ebp - 0xc9c], 1
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xcd8], edi
jne 0x44a8d0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
mov eax, dword [ebp - 0x418]
test eax, eax
jne 0x44a9e1
cmp dword [ebp - 0x424], 0xff0000
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov ecx, ebx
movzx eax, byte [edx]
inc edx
mov eax, dword [ebp + eax*4 - 0x834]
or eax, 0xff000000
mov dword [esi], eax
add esi, 4
sub ecx, 1
jne 0x44a9a3
add esi, dword [ebp - 0xca8]
add edx, dword [ebp - 0xcac]
sub edi, 1
jne 0x44a9a1
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff000000
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff
jne 0x44ab0d
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
cmp byte [ebp - 0x851], 0
mov ebx, dword [ebp - 0xc8c]
jne 0x44aaa0
nop dword [eax]
mov dword [ebp - 0xc90], ebx
nop word [eax + eax]
movzx ecx, byte [edx]
inc edx
mov al, byte [ebp + ecx*4 - 0x832]
mov byte [esi], al
mov al, byte [ebp + ecx*4 - 0x833]
mov byte [esi + 1], al
mov al, byte [ebp + ecx*4 - 0x834]
mov byte [esi + 2], al
mov byte [esi + 3], 0xff
add esi, 4
sub ebx, 1
jne 0x44aa40
add esi, dword [ebp - 0xca8]
add edx, dword [ebp - 0xcac]
mov ebx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44aa30
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0xc90], ebx
nop word [eax + eax]
movzx ecx, byte [edx]
inc edx
mov al, byte [ebp + ecx*4 - 0x832]
mov byte [esi], al
mov al, byte [ebp + ecx*4 - 0x833]
mov byte [esi + 1], al
mov al, byte [ebp + ecx*4 - 0x834]
mov byte [esi + 2], al
mov al, byte [ebp + ecx*4 - 0x831]
mov byte [esi + 3], al
add esi, 4
sub ebx, 1
jne 0x44aab0
add esi, dword [ebp - 0xca8]
add edx, dword [ebp - 0xcac]
mov ebx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44aaa0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff0000
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
cmp byte [ebp - 0x851], 0
mov ebx, dword [ebp - 0xc8c]
jne 0x44abc0
nop word [eax + eax]
mov dword [ebp - 0xc90], ebx
nop word [eax + eax]
movzx ecx, byte [edx]
inc edx
mov al, byte [ebp + ecx*4 - 0x834]
mov byte [esi], al
mov al, byte [ebp + ecx*4 - 0x833]
mov byte [esi + 1], al
mov al, byte [ebp + ecx*4 - 0x832]
mov byte [esi + 2], al
mov byte [esi + 3], 0xff
add esi, 4
sub ebx, 1
jne 0x44ab60
add esi, dword [ebp - 0xca8]
add edx, dword [ebp - 0xcac]
mov ebx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44ab50
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0xc90], ebx
nop word [eax + eax]
movzx ecx, byte [edx]
inc edx
mov al, byte [ebp + ecx*4 - 0x834]
mov byte [esi], al
mov al, byte [ebp + ecx*4 - 0x833]
mov byte [esi + 1], al
mov al, byte [ebp + ecx*4 - 0x832]
mov byte [esi + 2], al
mov al, byte [ebp + ecx*4 - 0x831]
mov byte [esi + 3], al
add esi, 4
sub ebx, 1
jne 0x44abd0
add esi, dword [ebp - 0xca8]
add edx, dword [ebp - 0xcac]
mov ebx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44abc0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x84c]
mov esi, dword [ebp - 0x848]
cmp dl, 0x20
jne 0x44ae25
cmp dword [ebp - 0x840], 0xff000000
jne 0x44b475
cmp eax, 0xff0000
jne 0x44b475
cmp esi, 0xff00
jne 0x44b475
cmp dword [ebp - 0x844], 0xff
jne 0x44b475
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xca4], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xcd0], edi
mov edi, dword [ebp - 0xc9c]
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xcc0], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
mov cl, byte [ebp - 0xc85]
add eax, dword [ebp - 0xcc4]
add edx, eax
cmp cl, 0x20
jne 0x448b74
mov eax, dword [ebp - 0x418]
cmp eax, 0xff000000
jne 0x44adab
cmp dword [ebp - 0x424], 0xff
jne 0x448b74
cmp dword [ebp - 0x420], 0xff00
jne 0x448b74
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b74
mov ebx, esi
mov esi, dword [ebp - 0xcc0]
nop dword [eax]
movzx ecx, byte [edx + 3]
movzx eax, byte [edx]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 8
add edx, 4
or ecx, eax
mov dword [esi], ecx
add esi, 4
sub ebx, 1
jne 0x44ad50
add esi, dword [ebp - 0xca4]
add edx, dword [ebp - 0xcd0]
mov dword [ebp - 0xcc0], esi
mov esi, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44ad44
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
test eax, eax
jne 0x448b74
cmp dword [ebp - 0x424], 0xff0000
jne 0x448b74
cmp dword [ebp - 0x420], 0xff00
jne 0x448b74
cmp dword [ebp - 0x41c], 0xff
jne 0x448b74
mov ecx, dword [ebp - 0xcc0]
nop dword [eax]
mov ebx, esi
mov eax, dword [edx]
add edx, 4
mov dword [ecx], eax
add ecx, 4
sub ebx, 1
jne 0x44adf2
add ecx, dword [ebp - 0xca4]
add edx, dword [ebp - 0xcd0]
sub edi, 1
jne 0x44adf0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp dl, 0x18
jne 0x44b475
cmp eax, 0xff0000
jne 0x44b178
cmp esi, 0xff00
jne 0x44b475
cmp dword [ebp - 0x844], 0xff
jne 0x44b475
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xcd8], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xcf4], edi
mov edi, dword [ebp - 0xc9c]
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xcac], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
cmp al, 0x10
jne 0x44b046
cmp dword [ebp - 0x418], 0
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xf800
jne 0x44af9b
cmp dword [ebp - 0x420], 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, 0xfffc
nop
mov dword [ebp - 0xca4], esi
mov edi, 0xfff8
mov esi, dword [ebp - 0xcac]
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 1]
and cx, di
shl cx, 5
or cx, ax
mov al, byte [edx]
and cx, bx
shr al, 3
shl cx, 3
add edx, 3
movzx eax, al
or cx, ax
mov word [esi], cx
add esi, 2
sub dword [ebp - 0xca4], 1
jne 0x44af31
add esi, dword [ebp - 0xcd8]
add edx, dword [ebp - 0xcf4]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcac], esi
mov esi, dword [ebp - 0xc8c]
jne 0x44af20
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, 0xfff8
nop dword [eax + eax]
mov edi, esi
mov esi, dword [ebp - 0xcac]
nop dword [eax + eax]
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 1]
and cx, bx
shl cx, 5
or cx, ax
mov al, byte [edx]
and cx, bx
shr al, 3
shl cx, 2
add edx, 3
movzx eax, al
or cx, ax
mov word [esi], cx
add esi, 2
sub edi, 1
jne 0x44afe0
add esi, dword [ebp - 0xcd8]
add edx, dword [ebp - 0xcf4]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcac], esi
mov esi, dword [ebp - 0xc8c]
jne 0x44afd0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44b0df
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
nop
mov ebx, esi
mov esi, dword [ebp - 0xcac]
nop dword [eax + eax]
movzx ecx, byte [edx + 2]
movzx eax, word [edx]
or ecx, 0xffffff00
shl ecx, 0x10
add edx, 3
or ecx, eax
mov dword [esi], ecx
add esi, 4
sub ebx, 1
jne 0x44b090
add esi, dword [ebp - 0xcd8]
add edx, dword [ebp - 0xcf4]
mov dword [ebp - 0xcac], esi
mov esi, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44b080
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
nop word [eax + eax]
mov ebx, esi
mov esi, dword [ebp - 0xcac]
nop dword [eax + eax]
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
or ecx, 0xffffff00
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 8
add edx, 3
or ecx, eax
mov dword [esi], ecx
add esi, 4
sub ebx, 1
jne 0x44b120
add esi, dword [ebp - 0xcd8]
add edx, dword [ebp - 0xcf4]
mov dword [ebp - 0xcac], esi
mov esi, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44b110
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x44b475
cmp esi, 0xff00
jne 0x44b475
cmp dword [ebp - 0x844], 0xff0000
jne 0x44b475
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, edx
imul eax, dword [ebp - 0xc8c]
mov esi, dword [ebp - 0xc94]
imul edx, dword [ebp - 0xcb4]
sub ecx, eax
mov dword [ebp - 0xcd8], ecx
movzx ecx, byte [ebp - 0x858]
add edx, dword [ebp - 0xcb0]
mov eax, ecx
imul eax, dword [ebp - 0xc8c]
sub esi, eax
mov dword [ebp - 0xcf4], esi
mov esi, ebx
imul esi, dword [ebp - 0xc98]
add esi, edx
mov edx, dword [ebp - 0xcb8]
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
cmp al, 0x10
jne 0x44b378
cmp dword [ebp - 0x418], 0
mov eax, dword [ebp - 0x424]
jne 0x44b2d4
cmp eax, 0xf800
jne 0x44b2d4
cmp dword [ebp - 0x420], 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
nop
mov dword [ebp - 0xca4], ebx
mov ebx, 0xfff8
lea edi, [ebx + 4]
nop
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and cx, bx
shl cx, 5
or cx, ax
mov al, byte [edx + 2]
and cx, di
shr al, 3
shl cx, 3
add edx, 3
movzx eax, al
or cx, ax
mov word [esi], cx
add esi, 2
sub dword [ebp - 0xca4], 1
jne 0x44b270
add esi, dword [ebp - 0xcd8]
add edx, dword [ebp - 0xcf4]
sub dword [ebp - 0xc9c], 1
mov ebx, dword [ebp - 0xc8c]
jne 0x44b260
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov edi, ebx
mov ebx, 0xfff8
nop dword [eax]
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and cx, bx
shl cx, 5
or cx, ax
mov eax, 0xe000
and cx, bx
or cx, ax
mov al, byte [edx + 2]
shr al, 3
add edx, 3
shl cx, 2
movzx eax, al
or cx, ax
mov word [esi], cx
add esi, 2
sub edi, 1
jne 0x44b310
add esi, dword [ebp - 0xcd8]
add edx, dword [ebp - 0xcf4]
sub dword [ebp - 0xc9c], 1
mov ebx, dword [ebp - 0xc8c]
jne 0x44b302
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44b3f8
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov ecx, ebx
mov al, byte [edx + 2]
mov byte [esi], al
mov al, byte [edx + 1]
mov byte [esi + 1], al
mov al, byte [edx]
add edx, 3
mov byte [esi + 2], al
mov byte [esi + 3], 0xff
add esi, 4
sub ecx, 1
jne 0x44b3b5
add esi, dword [ebp - 0xcd8]
add edx, dword [ebp - 0xcf4]
sub edi, 1
jne 0x44b3b3
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
nop dword [eax]
mov ecx, ebx
mov al, byte [edx]
mov byte [esi], al
mov al, byte [edx + 1]
mov byte [esi + 1], al
mov al, byte [edx + 2]
add edx, 3
mov byte [esi + 2], al
mov byte [esi + 3], 0xff
add esi, 4
sub ecx, 1
jne 0x44b432
add esi, dword [ebp - 0xcd8]
add edx, dword [ebp - 0xcf4]
sub edi, 1
jne 0x44b430
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0xcd8]
test ecx, ecx
jne 0x44ba3c
cmp dl, 0x20
jne 0x44ba3c
cmp dword [ebp - 0x840], ecx
jne 0x448b6e
cmp eax, 0xff0000
jne 0x44b761
cmp esi, 0xff00
jne 0x448b6e
cmp dword [ebp - 0x844], 0xff
jne 0x448b6e
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xcc0], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xce4], edi
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xca8], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xcac], edx
cmp al, 0x10
jne 0x44b6aa
cmp dword [ebp - 0x418], 0
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xf800
jne 0x44b60a
cmp dword [ebp - 0x420], 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
nop dword [eax]
nop word [eax + eax]
mov edi, dword [ebp - 0xca8]
mov ebx, esi
mov esi, dword [ebp - 0xcac]
nop
mov ecx, dword [esi]
mov edx, ecx
mov eax, ecx
shr edx, 5
shr eax, 3
and edx, 0x7e0
and eax, 0x1f
shr ecx, 8
or edx, eax
and ecx, 0xf800
or edx, ecx
add esi, 4
mov word [edi], dx
add edi, 2
sub ebx, 1
jne 0x44b5a0
add esi, dword [ebp - 0xce4]
add edi, dword [ebp - 0xcc0]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcac], esi
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca8], edi
jne 0x44b590
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov edi, dword [ebp - 0xca8]
mov ebx, esi
mov esi, dword [ebp - 0xcac]
mov ecx, dword [esi]
mov edx, ecx
mov eax, ecx
shr edx, 6
shr eax, 3
and edx, 0x3e0
and eax, 0x1f
shr ecx, 9
or edx, eax
and ecx, 0x7c00
or edx, ecx
add esi, 4
mov word [edi], dx
add edi, 2
sub ebx, 1
jne 0x44b640
add esi, dword [ebp - 0xce4]
add edi, dword [ebp - 0xcc0]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcac], esi
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca8], edi
jne 0x44b632
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
cmp dword [ebp - 0x424], 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
mov edi, dword [ebp - 0xca8]
mov ebx, esi
mov esi, dword [ebp - 0xcac]
mov edx, dword [esi]
mov eax, edx
movzx ecx, byte [esi + 2]
or eax, 0xffffff00
shl eax, 0x10
and edx, 0xff00
or ecx, eax
add esi, 4
or ecx, edx
mov dword [edi], ecx
add edi, 4
sub ebx, 1
jne 0x44b700
add esi, dword [ebp - 0xce4]
add edi, dword [ebp - 0xcc0]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcac], esi
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca8], edi
jne 0x44b6f2
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp esi, 0xff00
jne 0x448b6e
cmp dword [ebp - 0x844], 0xff0000
jne 0x448b6e
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xcc0], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xce4], edi
mov edi, dword [ebp - 0xc9c]
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xca8], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xcd8], edx
cmp al, 0x20
jne 0x44b8d1
mov eax, dword [ebp - 0x418]
test eax, eax
je 0x44b82c
cmp eax, 0xff000000
jne 0x448b6e
cmp dword [ebp - 0x424], 0xff0000
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
nop dword [eax]
mov edi, dword [ebp - 0xca8]
mov ebx, esi
mov esi, dword [ebp - 0xcd8]
nop
mov edx, dword [esi]
mov eax, edx
movzx ecx, byte [esi + 2]
or eax, 0xffffff00
shl eax, 0x10
and edx, 0xff00
or ecx, eax
add esi, 4
or ecx, edx
mov dword [edi], ecx
add edi, 4
sub ebx, 1
jne 0x44b870
add esi, dword [ebp - 0xce4]
add edi, dword [ebp - 0xcc0]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcd8], esi
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca8], edi
jne 0x44b860
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x10
jne 0x448b6e
cmp dword [ebp - 0x418], 0
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xf800
jne 0x44b99a
cmp dword [ebp - 0x420], 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov edx, 0xfff8
nop dword [eax]
mov edi, dword [ebp - 0xca8]
mov ebx, esi
mov esi, dword [ebp - 0xcd8]
nop
mov eax, dword [esi]
mov ecx, eax
shr eax, 0x13
shr ecx, 5
and eax, 0x1f
and ecx, 0x7e0
or ecx, eax
mov ax, word [esi]
and ax, dx
add esi, 4
shl ax, 8
or cx, ax
mov word [edi], cx
add edi, 2
sub ebx, 1
jne 0x44b930
add esi, dword [ebp - 0xce4]
add edi, dword [ebp - 0xcc0]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcd8], esi
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca8], edi
jne 0x44b920
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov dword [ebp - 0xc90], 0xf8
nop dword [eax]
mov ebx, esi
mov esi, dword [ebp - 0xca8]
mov eax, dword [edx]
mov ecx, eax
shr eax, 0x13
shr ecx, 6
and eax, 0x1f
and ecx, 0x3e0
or ecx, eax
mov ax, word [edx]
and ax, word [ebp - 0xc90]
add edx, 4
shl ax, 7
or cx, ax
mov word [esi], cx
add esi, 2
sub ebx, 1
jne 0x44b9d8
add esi, dword [ebp - 0xcc0]
add edx, dword [ebp - 0xce4]
mov dword [ebp - 0xca8], esi
mov esi, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44b9d0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp dl, 0x10
jne 0x44bbd0
cmp dword [ebp - 0x840], 0x8000
jne 0x44bbd0
cmp eax, 0x7c00
jne 0x44bbd0
cmp esi, 0x3e0
jne 0x44bbd0
cmp dword [ebp - 0x844], 0x1f
jne 0x44bbd0
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xcdc], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xd10], edi
mov edi, dword [ebp - 0xc9c]
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xc90], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
mov cl, byte [ebp - 0xc85]
add eax, dword [ebp - 0xcc4]
add edx, eax
mov dword [ebp - 0xcd0], edx
cmp cl, 0x20
jne 0x448b74
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b74
cmp dword [ebp - 0x424], 0xff
jne 0x448b74
cmp dword [ebp - 0x420], 0xff00
jne 0x448b74
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b74
mov ebx, dword [ebp - 0xc90]
nop
mov dword [ebp - 0xca4], esi
mov esi, dword [ebp - 0xcd0]
nop dword [eax]
movzx edx, word [esi]
mov eax, edx
mov ecx, edx
and eax, 0x3e0
test edx, 0x8000
je 0x44bb79
or ecx, 0xffffffe0
jmp 0x44bb7c
and ecx, 0x1f
shl ecx, 0xd
add esi, 2
or ecx, eax
shr edx, 7
and edx, 0xf8
shl ecx, 6
or ecx, edx
mov dword [ebx], ecx
add ebx, 4
sub dword [ebp - 0xca4], 1
jne 0x44bb60
add esi, dword [ebp - 0xd10]
add ebx, dword [ebp - 0xcdc]
mov dword [ebp - 0xcd0], esi
mov esi, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44bb50
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
test ecx, ecx
jne 0x448b6e
cmp dl, 0x10
jne 0x448b6e
cmp dword [ebp - 0x840], ecx
jne 0x448b6e
cmp eax, 0xf800
jne 0x44c0a2
cmp esi, 0x7e0
jne 0x44c56c
cmp dword [ebp - 0x844], 0x1f
jne 0x448b6e
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, edx
imul eax, dword [ebp - 0xc8c]
mov esi, dword [ebp - 0xc94]
imul edx, dword [ebp - 0xcb4]
sub ecx, eax
mov dword [ebp - 0xca0], ecx
movzx ecx, byte [ebp - 0x858]
add edx, dword [ebp - 0xcb0]
mov eax, ecx
imul eax, dword [ebp - 0xc8c]
sub esi, eax
mov dword [ebp - 0xce0], esi
mov esi, ebx
imul esi, dword [ebp - 0xc98]
add esi, edx
mov edx, dword [ebp - 0xcb8]
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
mov ecx, edx
add ecx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xcc8], ecx
cmp al, 0x18
jne 0x44bd45
cmp dword [ebp - 0x418], 0
jne 0x448b6e
cmp dword [ebp - 0x424], 0xff0000
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
nop dword [eax + eax]
mov edx, ebx
mov ebx, dword [ebp - 0xcc8]
movzx eax, word [ebx]
add ebx, 2
mov ecx, eax
and eax, 0x1f
and ecx, 0xffe0
shl ecx, 2
or ecx, eax
shl ecx, 3
movzx eax, cx
mov word [esi], ax
shr eax, 0x10
mov byte [esi + 2], al
add esi, 3
sub edx, 1
jne 0x44bce8
add ebx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov dword [ebp - 0xcc8], ebx
mov ebx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44bce0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x44beb3
mov eax, dword [ebp - 0x418]
test eax, eax
jne 0x44be03
cmp dword [ebp - 0x424], 0xff0000
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov edi, ebx
mov ebx, dword [ebp - 0xcc8]
nop dword [eax]
movzx ecx, word [ebx]
add ebx, 2
mov edx, ecx
mov eax, ecx
and edx, 0xf800
and eax, 0x7e0
shl edx, 3
and ecx, 0x1f
or edx, eax
shl edx, 2
or edx, ecx
shl edx, 3
mov dword [esi], edx
add esi, 4
sub edi, 1
jne 0x44bda0
add ebx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcc8], ebx
mov ebx, dword [ebp - 0xc8c]
jne 0x44bd91
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff000000
jne 0x448b6e
cmp dword [ebp - 0x424], 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov edi, ebx
mov ebx, dword [ebp - 0xcc8]
nop dword [eax]
movzx edx, word [ebx]
add ebx, 2
mov ecx, edx
mov eax, edx
or ecx, 0xffffffe0
shr edx, 8
shl ecx, 0xe
and eax, 0x7e0
or ecx, eax
and edx, 0xf8
shl ecx, 5
or ecx, edx
mov dword [esi], ecx
add esi, 4
sub edi, 1
jne 0x44be50
add ebx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xcc8], ebx
mov ebx, dword [ebp - 0xc8c]
jne 0x44be44
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x10
jne 0x448b6e
mov eax, dword [ebp - 0x418]
test eax, eax
jne 0x44bfa8
cmp dword [ebp - 0x424], 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov edx, dword [ebp - 0xc8c]
mov eax, edx
sar eax, 1
and edx, 1
mov dword [ebp - 0xc90], eax
mov dword [ebp - 0xc8c], edx
nop
mov ebx, eax
test ebx, ebx
je 0x44bf52
mov edx, dword [ebp - 0xcc8]
nop dword [eax]
mov ecx, dword [edx]
mov eax, ecx
shr eax, 1
and ecx, 0x1f001f
and eax, 0x7fe07fe0
add edx, 4
or eax, ecx
mov dword [esi], eax
add esi, 4
sub ebx, 1
jne 0x44bf20
mov dword [ebp - 0xcc8], edx
mov edx, dword [ebp - 0xc8c]
mov ecx, dword [ebp - 0xcc8]
test edx, edx
je 0x44bf74
mov ecx, dword [ecx]
mov eax, ecx
shr eax, 1
and ecx, 0x1f
and eax, 0x7fe0
or eax, ecx
mov ecx, dword [ebp - 0xcc8]
mov dword [esi], eax
add ecx, 2
add esi, 2
add ecx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov eax, dword [ebp - 0xc90]
mov dword [ebp - 0xcc8], ecx
sub edi, 1
jne 0x44bf10
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x8000
jne 0x448b6e
cmp dword [ebp - 0x424], 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov edx, dword [ebp - 0xc8c]
mov eax, edx
sar eax, 1
and edx, 1
mov dword [ebp - 0xc90], eax
mov dword [ebp - 0xc8c], edx
nop dword [eax]
mov ebx, eax
test ebx, ebx
je 0x44c047
mov edx, dword [ebp - 0xcc8]
nop dword [eax]
mov ecx, dword [edx]
mov eax, ecx
and eax, 0xffc1ffc1
and ecx, 0x1f001f
or eax, 0x10000
add edx, 4
shr eax, 1
or eax, ecx
mov dword [esi], eax
add esi, 4
sub ebx, 1
jne 0x44c010
mov dword [ebp - 0xcc8], edx
mov edx, dword [ebp - 0xc8c]
mov ecx, dword [ebp - 0xcc8]
test edx, edx
je 0x44c06e
mov ecx, dword [ecx]
mov eax, ecx
and eax, 0xffc0
and ecx, 0x1f
or eax, 0x10000
shr eax, 1
or eax, ecx
mov ecx, dword [ebp - 0xcc8]
mov dword [esi], eax
add ecx, 2
add esi, 2
add ecx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov eax, dword [ebp - 0xc90]
mov dword [ebp - 0xcc8], ecx
sub edi, 1
jne 0x44c000
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x7c00
jne 0x44c561
cmp esi, 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x844], 0x1f
jne 0x448b6e
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, edx
imul eax, dword [ebp - 0xc8c]
mov esi, dword [ebp - 0xc94]
imul edx, dword [ebp - 0xcb4]
sub ecx, eax
mov dword [ebp - 0xca0], ecx
movzx ecx, byte [ebp - 0x858]
add edx, dword [ebp - 0xcb0]
mov eax, ecx
imul eax, dword [ebp - 0xc8c]
sub esi, eax
mov dword [ebp - 0xce0], esi
mov esi, ebx
imul esi, dword [ebp - 0xc98]
add esi, edx
mov edx, dword [ebp - 0xcb8]
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xccc], edx
cmp al, 0x10
jne 0x44c3ec
mov eax, dword [ebp - 0x418]
test eax, eax
jne 0x44c21a
cmp dword [ebp - 0x424], 0xf800
jne 0x448b6e
cmp dword [ebp - 0x420], 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov eax, ebx
sar eax, 1
and ebx, 1
mov dword [ebp - 0xcdc], eax
mov dword [ebp - 0xc8c], ebx
nop
mov dword [ebp - 0xc90], eax
test eax, eax
je 0x44c1d4
mov ebx, eax
nop dword [eax]
mov eax, dword [edx]
add edx, 4
lea ecx, [eax + eax]
xor ecx, eax
add eax, eax
and ecx, 0x3f003f
xor ecx, eax
mov dword [esi], ecx
add esi, 4
sub ebx, 1
jne 0x44c1b0
mov ebx, dword [ebp - 0xc8c]
test ebx, ebx
je 0x44c1f0
movzx eax, word [edx]
add edx, 2
lea ecx, [eax + eax]
xor ecx, eax
add eax, eax
and ecx, 0x3f
xor ecx, eax
mov word [esi], cx
add esi, 2
add esi, dword [ebp - 0xca0]
add edx, dword [ebp - 0xce0]
mov eax, dword [ebp - 0xcdc]
sub edi, 1
jne 0x44c1a0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x8000
jne 0x44c2c8
cmp dword [ebp - 0x424], 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ecx, dword [ebp - 0xc8c]
mov ebx, ecx
sar ebx, 1
and ecx, 1
mov dword [ebp - 0xc90], ebx
test ebx, ebx
je 0x44c289
nop dword [eax]
mov eax, dword [edx]
add edx, 4
or eax, 0x80008000
mov dword [esi], eax
add esi, 4
sub ebx, 1
jne 0x44c270
mov eax, 0x8000
test ecx, ecx
je 0x44c299
or ax, word [edx]
add edx, 2
mov word [esi], ax
add esi, 2
add esi, dword [ebp - 0xca0]
mov eax, 0x8000
add edx, dword [ebp - 0xce0]
mov ebx, dword [ebp - 0xc90]
sub edi, 1
jne 0x44c265
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xf000
jne 0x448b6e
cmp dword [ebp - 0x424], 0xf00
jne 0x448b6e
cmp dword [ebp - 0x420], 0xf0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xf
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov eax, ebx
sar eax, 1
and ebx, 1
mov dword [ebp - 0xcdc], eax
mov dword [ebp - 0xc8c], ebx
nop dword [eax]
mov dword [ebp - 0xc90], eax
test eax, eax
je 0x44c376
mov ebx, eax
nop dword [eax]
mov ecx, dword [edx]
mov edx, ecx
shr edx, 1
mov eax, ecx
and edx, 0xfc03fc03
and eax, 0x3c003c0
or edx, eax
and ecx, 0x3e003e
shr edx, 1
or edx, ecx
shr edx, 1
or edx, 0xf000f000
mov dword [esi], edx
add esi, 4
mov edx, dword [ebp - 0xccc]
add edx, 4
mov dword [ebp - 0xccc], edx
sub ebx, 1
jne 0x44c330
mov ebx, dword [ebp - 0xc8c]
test ebx, ebx
je 0x44c3b8
movzx ecx, word [edx]
mov eax, 0xfc03
mov dx, cx
shr dx, 1
and dx, ax
mov eax, ecx
and eax, 0x3c0
and ecx, 0x3e
or dx, ax
mov eax, 0xf000
shr dx, 1
or dx, cx
shr dx, 1
or dx, ax
mov word [esi], dx
mov edx, dword [ebp - 0xccc]
add edx, 2
add esi, 2
add edx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov eax, dword [ebp - 0xcdc]
mov dword [ebp - 0xccc], edx
sub edi, 1
jne 0x44c320
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44c4b7
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
nop dword [eax + eax]
mov dword [ebp - 0xc90], ebx
movzx ecx, word [edx]
mov edx, ecx
mov eax, ecx
and edx, 0xfffffc00
and eax, 0x3e0
or edx, 0xffff8000
and ecx, 0x1f
shl edx, 3
or edx, eax
shl edx, 3
or edx, ecx
shl edx, 3
mov dword [esi], edx
add esi, 4
mov edx, dword [ebp - 0xccc]
add edx, 2
mov dword [ebp - 0xccc], edx
sub ebx, 1
jne 0x44c446
add edx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xccc], edx
sub edi, 1
jne 0x44c440
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
nop dword [eax + eax]
mov dword [ebp - 0xc90], ebx
movzx edx, word [edx]
mov ecx, edx
mov eax, edx
or ecx, 0xffffffe0
shr edx, 7
shl ecx, 0xd
and eax, 0x3e0
or ecx, eax
and edx, 0xf8
shl ecx, 6
or ecx, edx
mov edx, dword [ebp - 0xccc]
mov dword [esi], ecx
add edx, 2
add esi, 4
mov dword [ebp - 0xccc], edx
sub ebx, 1
jne 0x44c4f6
add edx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xccc], edx
sub edi, 1
jne 0x44c4f0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xf800
jne 0x448b6e
cmp esi, 0x7c0
jne 0x448b6e
cmp dword [ebp - 0x844], 0x3e
jne 0x448b6e
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, edx
imul eax, dword [ebp - 0xc8c]
mov esi, dword [ebp - 0xc94]
imul edx, dword [ebp - 0xcb4]
sub ecx, eax
mov dword [ebp - 0xca0], ecx
movzx ecx, byte [ebp - 0x858]
add edx, dword [ebp - 0xcb0]
mov eax, ecx
imul eax, dword [ebp - 0xc8c]
sub esi, eax
mov dword [ebp - 0xce0], esi
mov esi, ebx
imul esi, dword [ebp - 0xc98]
add esi, edx
mov edx, dword [ebp - 0xcb8]
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xccc], edx
cmp al, 0x10
jne 0x44c8ae
mov eax, dword [ebp - 0x418]
test eax, eax
jne 0x44c6df
cmp dword [ebp - 0x424], 0xf800
jne 0x44c6ea
cmp dword [ebp - 0x420], 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov eax, ebx
sar eax, 1
and ebx, 1
mov dword [ebp - 0xcdc], eax
mov dword [ebp - 0xc8c], ebx
nop
mov dword [ebp - 0xc90], eax
test eax, eax
je 0x44c696
mov ebx, eax
nop dword [eax]
mov ecx, dword [edx]
mov eax, ecx
shr eax, 1
and ecx, 0xffc0ffc0
and eax, 0x1f001f
add edx, 4
or eax, ecx
mov dword [esi], eax
add esi, 4
sub ebx, 1
jne 0x44c670
mov ebx, dword [ebp - 0xc8c]
test ebx, ebx
je 0x44c6b5
movzx ecx, word [edx]
add edx, 2
mov eax, ecx
and ecx, 0xffc0
shr eax, 1
and eax, 0x1f
or eax, ecx
mov word [esi], ax
add esi, 2
add esi, dword [ebp - 0xca0]
add edx, dword [ebp - 0xce0]
mov eax, dword [ebp - 0xcdc]
sub edi, 1
jne 0x44c660
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x8000
jne 0x44c78b
cmp dword [ebp - 0x424], 0x7c00
jne 0x44c78b
cmp dword [ebp - 0x420], 0x3e0
jne 0x44c78b
cmp dword [ebp - 0x41c], 0x1f
jne 0x44c78b
mov ecx, dword [ebp - 0xc8c]
mov eax, ecx
sar eax, 1
and ecx, 1
mov dword [ebp - 0xc90], eax
mov ebx, eax
test ebx, ebx
je 0x44c746
nop dword [eax]
mov eax, dword [edx]
add edx, 4
shr eax, 1
or eax, 0x80008000
mov dword [esi], eax
add esi, 4
sub ebx, 1
jne 0x44c730
test ecx, ecx
je 0x44c761
mov ax, word [edx]
mov ebx, 0x8000
shr ax, 1
add edx, 2
or ax, bx
mov word [esi], ax
add esi, 2
add esi, dword [ebp - 0xca0]
add edx, dword [ebp - 0xce0]
mov eax, dword [ebp - 0xc90]
sub edi, 1
jne 0x44c726
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xf000
jne 0x448b6e
cmp dword [ebp - 0x424], 0xf00
jne 0x448b6e
cmp dword [ebp - 0x420], 0xf0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xf
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov eax, ebx
sar eax, 1
and ebx, 1
mov dword [ebp - 0xcdc], eax
mov dword [ebp - 0xc8c], ebx
nop dword [eax]
mov dword [ebp - 0xc90], eax
test eax, eax
je 0x44c837
mov ebx, eax
nop dword [eax]
mov ecx, dword [edx]
mov edx, ecx
shr edx, 1
mov eax, ecx
and edx, 0xf807f807
and eax, 0x7800780
or edx, eax
and ecx, 0x3c003c
shr edx, 1
or edx, ecx
shr edx, 2
or edx, 0xf000f000
mov dword [esi], edx
add esi, 4
mov edx, dword [ebp - 0xccc]
add edx, 4
mov dword [ebp - 0xccc], edx
sub ebx, 1
jne 0x44c7f0
mov ebx, dword [ebp - 0xc8c]
test ebx, ebx
je 0x44c87a
movzx ecx, word [edx]
mov eax, 0xf807
mov dx, cx
shr dx, 1
and dx, ax
mov eax, ecx
and eax, 0x780
and ecx, 0x3c
or dx, ax
mov eax, 0xf000
shr dx, 1
or dx, cx
shr dx, 2
or dx, ax
mov word [esi], dx
mov edx, dword [ebp - 0xccc]
add edx, 2
add esi, 2
add edx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov eax, dword [ebp - 0xcdc]
mov dword [ebp - 0xccc], edx
sub edi, 1
jne 0x44c7e0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff
jne 0x44c974
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
nop dword [eax]
mov dword [ebp - 0xc90], ebx
movzx edx, word [edx]
mov ecx, edx
mov eax, edx
and ecx, 0xfffffffe
shr edx, 8
or ecx, 0xffffffc0
and eax, 0x7c0
shl ecx, 0xd
and edx, 0xf8
or ecx, eax
shl ecx, 5
or ecx, edx
mov edx, dword [ebp - 0xccc]
mov dword [esi], ecx
add edx, 2
add esi, 4
mov dword [ebp - 0xccc], edx
sub ebx, 1
jne 0x44c906
add edx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xccc], edx
sub edi, 1
jne 0x44c900
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff0000
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xc90], ebx
nop dword [eax + eax]
movzx ecx, word [edx]
mov edx, ecx
mov eax, ecx
and edx, 0xfffff800
and eax, 0x7c0
or edx, 0xffff0000
and ecx, 0x3e
shl edx, 3
or edx, eax
shl edx, 3
or edx, ecx
shl edx, 2
mov dword [esi], edx
add esi, 4
mov edx, dword [ebp - 0xccc]
add edx, 2
mov dword [ebp - 0xccc], edx
sub ebx, 1
jne 0x44c9b0
add edx, dword [ebp - 0xce0]
add esi, dword [ebp - 0xca0]
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xccc], edx
sub edi, 1
jne 0x44c9a5
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp ecx, 1
jne 0x448b6e
cmp dl, 8
jne 0x44cd18
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xce4], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xd28], edi
mov edi, dword [ebp - 0xc9c]
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xca0], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xcc0], edx
cmp al, 0x10
jne 0x44cba0
cmp dword [ebp - 0x418], 0x8000
jne 0x448b6e
cmp dword [ebp - 0x424], 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ecx, 0x8000
mov edi, dword [ebp - 0xca0]
mov ebx, esi
nop dword [eax]
movzx eax, byte [edx]
mov esi, ecx
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x834]
mov edx, eax
cmp eax, dword [ebp + 0x40]
cmove esi, ecx
shr edx, 6
mov ecx, eax
and edx, 0x3e0
shr ecx, 3
and ecx, 0x1f
shr eax, 9
or edx, ecx
and eax, 0x7c00
or edx, eax
mov ecx, 0x8000
or edx, esi
mov word [edi], dx
add edi, 2
mov edx, dword [ebp - 0xcc0]
inc edx
mov dword [ebp - 0xcc0], edx
sub ebx, 1
jne 0x44cb10
add edi, dword [ebp - 0xce4]
add edx, dword [ebp - 0xd28]
sub dword [ebp - 0xc9c], 1
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca0], edi
mov dword [ebp - 0xcc0], edx
jne 0x44cb04
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44cc3c
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
mov ecx, dword [ebp - 0xca0]
nop dword [eax + eax]
mov ebx, esi
movzx eax, byte [edx]
mov eax, dword [ebp + eax*4 - 0x834]
cmp eax, dword [ebp + 0x40]
mov dword [ebp - 0xc], eax
sete al
inc edx
dec al
mov byte [ebp - 9], al
mov eax, dword [ebp - 0xc]
mov dword [ecx], eax
add ecx, 4
sub ebx, 1
jne 0x44cbf2
add ecx, dword [ebp - 0xce4]
add edx, dword [ebp - 0xd28]
sub edi, 1
jne 0x44cbf0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
mov ecx, dword [ebp + 0x40]
mov eax, ecx
shr eax, 0x10
movzx ebx, al
movzx eax, cl
and ecx, 0xff00ff00
shl eax, 0x10
or ebx, eax
or ebx, ecx
mov dword [ebp - 0xc90], ebx
nop dword [eax + eax]
mov edi, dword [ebp - 0xc90]
mov ebx, esi
mov esi, dword [ebp - 0xca0]
nop
movzx ecx, byte [edx]
mov al, byte [ebp + ecx*4 - 0x832]
mov byte [ebp - 0xc], al
mov al, byte [ebp + ecx*4 - 0x833]
mov byte [ebp - 0xb], al
mov al, byte [ebp + ecx*4 - 0x834]
mov byte [ebp - 0xa], al
mov al, byte [ebp + ecx*4 - 0x831]
mov byte [ebp - 9], al
cmp dword [ebp - 0xc], edi
sete al
inc edx
dec al
mov byte [ebp - 9], al
mov eax, dword [ebp - 0xc]
mov dword [esi], eax
add esi, 4
sub ebx, 1
jne 0x44cca0
add esi, dword [ebp - 0xce4]
add edx, dword [ebp - 0xd28]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xca0], esi
mov esi, dword [ebp - 0xc8c]
jne 0x44cc90
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x84c]
mov esi, dword [ebp - 0x848]
cmp dl, 0x18
jne 0x44d3b3
cmp eax, 0xff0000
jne 0x44d06b
cmp esi, 0xff00
jne 0x44d3b3
cmp dword [ebp - 0x844], 0xff
jne 0x44d3b3
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xcc0], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xce4], edi
mov edi, dword [ebp - 0xc9c]
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xca8], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xcac], edx
cmp al, 0x10
jne 0x44cee2
cmp dword [ebp - 0x418], 0x8000
jne 0x448b6e
cmp dword [ebp - 0x424], 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, 0xfff8
nop word [eax + eax]
mov edi, dword [ebp - 0xcac]
mov dword [ebp - 0xca4], esi
nop dword [eax]
movzx eax, byte [edi + 2]
mov esi, 0x8000
movzx ecx, word [edi]
shl eax, 0x10
add eax, ecx
xor ecx, ecx
cmp eax, dword [ebp + 0x40]
cmove esi, ecx
mov ecx, eax
shr ecx, 0x10
add edi, 3
movzx edx, cl
mov ecx, eax
and dx, bx
shr ecx, 8
shl dx, 5
movzx ecx, cl
or dx, cx
shr al, 3
and dx, bx
movzx eax, al
shl dx, 2
or dx, ax
mov eax, dword [ebp - 0xca8]
or dx, si
mov word [eax], dx
add eax, 2
sub dword [ebp - 0xca4], 1
mov dword [ebp - 0xca8], eax
jne 0x44ce40
add eax, dword [ebp - 0xcc0]
add edi, dword [ebp - 0xce4]
sub dword [ebp - 0xc9c], 1
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca8], eax
mov dword [ebp - 0xcac], edi
jne 0x44ce30
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44cfa4
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
nop dword [eax + eax]
mov ebx, esi
mov esi, dword [ebp - 0xca8]
nop dword [eax + eax]
movzx eax, byte [edx + 2]
movzx ecx, word [edx]
shl eax, 0x10
add eax, ecx
mov dword [ebp - 0xc90], 0
cmp eax, dword [ebp + 0x40]
mov ecx, 0xff000000
cmove ecx, dword [ebp - 0xc90]
add edx, 3
or ecx, eax
mov dword [esi], ecx
add esi, 4
sub ebx, 1
jne 0x44cf40
add esi, dword [ebp - 0xcc0]
add edx, dword [ebp - 0xce4]
mov dword [ebp - 0xca8], esi
mov esi, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44cf30
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
nop
mov edi, dword [ebp - 0xca8]
mov ebx, esi
nop dword [eax + eax]
movzx esi, byte [edx + 2]
movzx ecx, word [edx]
mov eax, esi
shl eax, 0x10
mov edx, 0xff000000
add eax, ecx
xor ecx, ecx
cmp eax, dword [ebp + 0x40]
mov eax, dword [ebp - 0xcac]
cmove edx, ecx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax]
shl eax, 8
or ecx, eax
shl ecx, 8
or ecx, edx
mov edx, dword [ebp - 0xcac]
or ecx, esi
add edx, 3
mov dword [edi], ecx
add edi, 4
mov dword [ebp - 0xcac], edx
sub ebx, 1
jne 0x44cfe0
add edi, dword [ebp - 0xcc0]
add edx, dword [ebp - 0xce4]
sub dword [ebp - 0xc9c], 1
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca8], edi
mov dword [ebp - 0xcac], edx
jne 0x44cfd0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x44d3b3
cmp esi, 0xff00
jne 0x44d3b3
cmp dword [ebp - 0x844], 0xff0000
jne 0x44d3b3
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xcc0], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xce4], edi
mov edi, dword [ebp - 0xc9c]
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xca8], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xcac], edx
cmp al, 0x10
jne 0x44d22b
cmp dword [ebp - 0x418], 0x8000
jne 0x448b6e
cmp dword [ebp - 0x424], 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, 0xfff8
nop dword [eax]
nop word [eax + eax]
mov edi, dword [ebp - 0xcac]
mov dword [ebp - 0xca4], esi
nop dword [eax]
movzx ecx, byte [edi]
mov esi, 0x8000
movzx eax, byte [edi + 1]
shl ecx, 8
or eax, ecx
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
xor ecx, ecx
cmp eax, dword [ebp + 0x40]
cmove esi, ecx
mov ecx, eax
shr ecx, 0x10
add edi, 3
movzx edx, cl
mov ecx, eax
and dx, bx
shr ecx, 8
shl dx, 5
movzx ecx, cl
or dx, cx
shr al, 3
and dx, bx
movzx eax, al
shl dx, 2
or dx, ax
mov eax, dword [ebp - 0xca8]
or dx, si
mov word [eax], dx
add eax, 2
sub dword [ebp - 0xca4], 1
mov dword [ebp - 0xca8], eax
jne 0x44d180
add eax, dword [ebp - 0xcc0]
add edi, dword [ebp - 0xce4]
sub dword [ebp - 0xc9c], 1
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca8], eax
mov dword [ebp - 0xcac], edi
jne 0x44d170
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44d2ed
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
mov ebx, esi
mov esi, dword [ebp - 0xca8]
nop dword [eax]
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
shl ecx, 8
or eax, ecx
mov dword [ebp - 0xc90], 0
movzx ecx, byte [edx + 2]
shl eax, 8
or eax, ecx
mov ecx, 0xff000000
cmp eax, dword [ebp + 0x40]
cmove ecx, dword [ebp - 0xc90]
add edx, 3
or ecx, eax
mov dword [esi], ecx
add esi, 4
sub ebx, 1
jne 0x44d280
add esi, dword [ebp - 0xcc0]
add edx, dword [ebp - 0xce4]
mov dword [ebp - 0xca8], esi
mov esi, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44d274
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
nop dword [eax + eax]
mov edi, esi
mov esi, dword [ebp - 0xca8]
nop dword [eax + eax]
mov dl, byte [edx]
mov ebx, dword [ebp - 0xcac]
movzx eax, dl
shl eax, 8
movzx ecx, byte [ebx + 1]
or eax, ecx
movzx ecx, byte [ebx + 2]
shl eax, 8
mov byte [esi], dl
or eax, ecx
cmp eax, dword [ebp + 0x40]
mov edx, ebx
sete al
dec al
mov cl, byte [edx + 1]
mov byte [esi + 1], cl
mov cl, byte [edx + 2]
add edx, 3
mov byte [esi + 2], cl
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0xcac], edx
sub edi, 1
jne 0x44d330
add esi, dword [ebp - 0xcc0]
add edx, dword [ebp - 0xce4]
sub dword [ebp - 0xc9c], 1
mov dword [ebp - 0xca8], esi
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xcac], edx
jne 0x44d320
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0xcd8]
test ecx, ecx
jne 0x44d55a
cmp dl, 0x20
jne 0x44d55a
cmp dword [ebp - 0x840], ecx
jne 0x448b6e
cmp eax, 0xff0000
jne 0x448b6e
cmp esi, 0xff00
jne 0x448b6e
cmp dword [ebp - 0x844], 0xff
jne 0x448b6e
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xd10], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xd38], edi
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xc90], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
mov cl, byte [ebp - 0xc85]
add eax, dword [ebp - 0xcc4]
add edx, eax
cmp cl, 0x20
jne 0x448b74
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b74
cmp dword [ebp - 0x424], 0xff
jne 0x448b74
cmp dword [ebp - 0x420], 0xff00
jne 0x448b74
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b74
mov eax, dword [ebp + 0x40]
mov ebx, dword [ebp - 0xc90]
movzx ecx, al
shl ecx, 8
movzx eax, ah
or ecx, eax
movzx eax, byte [ebp + 0x42]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xcdc], ecx
nop dword [eax]
nop dword [eax + eax]
mov edi, dword [ebp - 0xcdc]
mov dword [ebp - 0xc90], esi
nop dword [eax]
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp edi, ecx
je 0x44d51f
or ecx, 0xff000000
mov dword [ebx], ecx
add edx, 4
add ebx, 4
sub esi, 1
jne 0x44d500
add ebx, dword [ebp - 0xd10]
add edx, dword [ebp - 0xd38]
sub dword [ebp - 0xc9c], 1
mov esi, dword [ebp - 0xc8c]
jne 0x44d4f0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp dl, 0x10
jne 0x448b6e
cmp dword [ebp - 0x840], 0
jne 0x448b6e
cmp eax, 0xf800
jne 0x44d9c8
cmp esi, 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x844], 0x1f
jne 0x448b6e
movzx edx, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edx
mov ecx, dword [ebp - 0xc98]
imul edx, dword [ebp - 0xcb4]
mov edi, dword [ebp - 0xc94]
imul eax, esi
add edx, dword [ebp - 0xcb0]
sub ecx, eax
mov dword [ebp - 0xcf4], ecx
movzx ecx, byte [ebp - 0x858]
mov eax, ecx
imul eax, esi
sub edi, eax
mov eax, ebx
imul eax, dword [ebp - 0xc98]
mov dword [ebp - 0xd1c], edi
mov edi, dword [ebp - 0xc9c]
add eax, edx
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0xcd8], eax
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
mov dword [ebp - 0xca0], edx
cmp al, 0x10
jne 0x44d7c8
mov eax, dword [ebp - 0x418]
cmp eax, 1
jne 0x44d6f4
cmp dword [ebp - 0x424], 0xf800
jne 0x448b6e
cmp dword [ebp - 0x420], 0x7c0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x3e
jne 0x448b6e
mov eax, dword [ebp + 0x40]
movzx ecx, ah
and ecx, 0xfffffff8
movzx eax, al
shr eax, 2
shl ecx, 3
or ecx, eax
movzx eax, byte [ebp + 0x42]
and eax, 0xfffffff8
and ecx, 0xfffffffe
shl eax, 8
or ecx, eax
mov dword [ebp - 0xcdc], ecx
mov ecx, dword [ebp - 0xcd8]
nop
mov edi, dword [ebp - 0xcdc]
mov dword [ebp - 0xc90], esi
nop dword [eax]
movzx eax, word [edx]
mov ebx, eax
and eax, 0xffc0
and ebx, 0x1f
add ebx, ebx
or ebx, eax
cmp edi, ebx
je 0x44d6b8
or ebx, 1
mov word [ecx], bx
add edx, 2
add ecx, 2
sub esi, 1
jne 0x44d6a0
add ecx, dword [ebp - 0xcf4]
add edx, dword [ebp - 0xd1c]
sub dword [ebp - 0xc9c], 1
mov esi, dword [ebp - 0xc8c]
jne 0x44d690
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x8000
jne 0x448b6e
cmp dword [ebp - 0x424], 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
movzx ebx, byte [ebp + 0x42]
mov ecx, dword [ebp + 0x40]
and ebx, 0xfffffff8
shl ebx, 5
movzx eax, ch
or ebx, eax
movzx eax, cl
mov ecx, dword [ebp - 0xcd8]
and ebx, 0xfffffff8
shl ebx, 2
shr eax, 3
or ebx, eax
mov dword [ebp - 0xcdc], ebx
nop dword [eax + eax]
mov edi, dword [ebp - 0xcdc]
mov dword [ebp - 0xc90], esi
nop dword [eax]
movzx eax, word [edx]
mov ebx, eax
and eax, 0x1f
shr ebx, 1
and ebx, 0x7fe0
or ebx, eax
cmp ebx, edi
je 0x44d78c
or ebx, 0x8000
mov word [ecx], bx
add edx, 2
add ecx, 2
sub esi, 1
jne 0x44d770
add ecx, dword [ebp - 0xcf4]
add edx, dword [ebp - 0xd1c]
sub dword [ebp - 0xc9c], 1
mov esi, dword [ebp - 0xc8c]
jne 0x44d760
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44d8d9
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
movzx edx, byte [ebp + 0x42]
mov ecx, dword [ebp + 0x40]
and edx, 0xfffffff8
mov ebx, dword [ebp - 0xca0]
shl edx, 5
movzx eax, ch
or edx, eax
movzx eax, cl
and edx, 0xfffffffc
shr eax, 3
shl edx, 3
or edx, eax
mov dword [ebp - 0xc90], edx
mov edx, dword [ebp - 0xcd8]
nop dword [eax]
nop word [eax + eax]
mov dword [ebp - 0xcd0], esi
mov esi, dword [ebp - 0xc90]
nop dword [eax]
movzx eax, word [ebx]
mov dword [ebp - 0xca4], eax
mov ecx, eax
cmp eax, esi
je 0x44d87d
and ecx, 0xfffff800
or ecx, 0xffff0000
jmp 0x44d883
and ecx, 0xf800
shl ecx, 3
and eax, 0x7e0
or ecx, eax
add ebx, 2
mov eax, dword [ebp - 0xca4]
shl ecx, 2
and eax, 0x1f
or ecx, eax
shl ecx, 3
mov dword [edx], ecx
add edx, 4
sub dword [ebp - 0xcd0], 1
jne 0x44d860
add edx, dword [ebp - 0xcf4]
add ebx, dword [ebp - 0xd1c]
mov esi, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44d850
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
movzx edx, byte [ebp + 0x42]
mov ecx, dword [ebp + 0x40]
and edx, 0xfffffff8
shl edx, 5
movzx eax, ch
or edx, eax
movzx eax, cl
and edx, 0xfffffffc
shr eax, 3
shl edx, 3
or edx, eax
mov eax, dword [ebp - 0xca0]
mov dword [ebp - 0xc90], edx
mov edx, dword [ebp - 0xcd8]
nop word [eax + eax]
mov dword [ebp - 0xca4], esi
mov esi, dword [ebp - 0xc90]
nop dword [eax]
movzx ebx, word [eax]
mov eax, ebx
mov ecx, ebx
and eax, 0x7e0
cmp ebx, esi
je 0x44d965
or ecx, 0xffffffe0
jmp 0x44d968
and ecx, 0x1f
shl ecx, 0xe
or ecx, eax
shr ebx, 8
mov eax, dword [ebp - 0xca0]
and ebx, 0xf8
shl ecx, 5
add eax, 2
or ecx, ebx
mov dword [ebp - 0xca0], eax
mov dword [edx], ecx
add edx, 4
sub dword [ebp - 0xca4], 1
jne 0x44d950
add eax, dword [ebp - 0xd1c]
add edx, dword [ebp - 0xcf4]
mov esi, dword [ebp - 0xc8c]
mov dword [ebp - 0xca0], eax
sub edi, 1
jne 0x44d940
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x7c00
jne 0x448b6e
cmp esi, 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x844], 0x1f
jne 0x448b6e
movzx edx, byte [ebp - 0x430]
mov ecx, dword [ebp - 0xc98]
mov eax, edx
imul eax, dword [ebp - 0xc8c]
mov esi, dword [ebp - 0xc94]
imul edx, dword [ebp - 0xcb4]
sub ecx, eax
mov dword [ebp - 0xca0], ecx
movzx ecx, byte [ebp - 0x858]
add edx, dword [ebp - 0xcb0]
mov eax, ecx
imul eax, dword [ebp - 0xc8c]
sub esi, eax
mov dword [ebp - 0xce0], esi
mov esi, ebx
imul esi, dword [ebp - 0xc98]
add esi, edx
mov edx, dword [ebp - 0xcb8]
mov eax, dword [edx + 4]
imul eax, dword [ebp - 0xc94]
mov edx, dword [edx]
imul edx, ecx
add eax, dword [ebp - 0xcc4]
add edx, eax
mov al, byte [ebp - 0xc85]
cmp al, 0x10
jne 0x44dc6b
mov eax, dword [ebp - 0x418]
cmp eax, 1
jne 0x44db27
cmp dword [ebp - 0x424], 0xf800
jne 0x448b6e
cmp dword [ebp - 0x420], 0x7c0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x3e
jne 0x448b6e
mov eax, dword [ebp + 0x40]
mov ebx, dword [ebp - 0xc8c]
movzx ecx, ah
and ecx, 0xfffffff8
movzx eax, al
shr eax, 2
shl ecx, 3
or ecx, eax
movzx eax, byte [ebp + 0x42]
and eax, 0xfffffff8
and ecx, 0xfffffffe
shl eax, 8
or ecx, eax
mov dword [ebp - 0xc90], ecx
mov ecx, ebx
nop dword [eax + eax]
movzx eax, word [edx]
and eax, 0x7fff
add eax, eax
cmp dword [ebp - 0xc90], eax
je 0x44daf5
or eax, 1
mov word [esi], ax
add edx, 2
add esi, 2
sub ecx, 1
jne 0x44dae0
add esi, dword [ebp - 0xca0]
add edx, dword [ebp - 0xce0]
sub edi, 1
jne 0x44dad6
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0x8000
jne 0x44dbd9
cmp dword [ebp - 0x424], 0x7c00
jne 0x448b6e
cmp dword [ebp - 0x420], 0x3e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
movzx ebx, byte [ebp + 0x42]
mov ecx, dword [ebp + 0x40]
and ebx, 0xfffffff8
shl ebx, 5
movzx eax, ch
or ebx, eax
movzx eax, cl
and ebx, 0xfffffff8
shr eax, 3
shl ebx, 2
or ebx, eax
mov dword [ebp - 0xc90], ebx
mov ebx, dword [ebp - 0xc8c]
nop dword [eax + eax]
mov ecx, ebx
movzx eax, word [edx]
and eax, 0x7fff
cmp dword [ebp - 0xc90], eax
je 0x44dba7
or eax, 0x8000
mov word [esi], ax
add edx, 2
add esi, 2
sub ecx, 1
jne 0x44db92
add esi, dword [ebp - 0xca0]
add edx, dword [ebp - 0xce0]
sub edi, 1
jne 0x44db90
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
test eax, eax
jne 0x448b6e
cmp dword [ebp - 0x424], 0xf800
jne 0x448b6e
cmp dword [ebp - 0x420], 0x7e0
jne 0x448b6e
cmp dword [ebp - 0x41c], 0x1f
jne 0x448b6e
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xc90], ebx
nop word [eax + eax]
movzx ecx, word [edx]
add edx, 2
mov eax, ecx
and ecx, 0x1f
and eax, 0xffe0
add eax, eax
movzx eax, ax
or eax, ecx
mov dword [esi], eax
add esi, 2
sub ebx, 1
jne 0x44dc20
add esi, dword [ebp - 0xca0]
add edx, dword [ebp - 0xce0]
mov ebx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44dc14
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp al, 0x20
jne 0x448b6e
cmp dword [ebp - 0x418], 0xff000000
jne 0x448b6e
mov eax, dword [ebp - 0x424]
cmp eax, 0xff0000
jne 0x44dd69
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff
jne 0x448b6e
movzx ebx, byte [ebp + 0x42]
mov ecx, dword [ebp + 0x40]
and ebx, 0xfffffff8
shl ebx, 5
movzx eax, ch
or ebx, eax
movzx eax, cl
and ebx, 0xfffffff8
shr eax, 3
shl ebx, 2
or ebx, eax
mov dword [ebp - 0xc90], ebx
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xcd0], ebx
mov ebx, dword [ebp - 0xc90]
nop dword [eax]
movzx eax, word [edx]
mov dword [ebp - 0xca4], eax
mov ecx, eax
cmp eax, ebx
je 0x44dd0d
and ecx, 0xfffffc00
or ecx, 0xffff8000
jmp 0x44dd13
and ecx, 0x7c00
shl ecx, 3
and eax, 0x3e0
or ecx, eax
add edx, 2
mov eax, dword [ebp - 0xca4]
shl ecx, 3
and eax, 0x1f
or ecx, eax
shl ecx, 3
mov dword [esi], ecx
add esi, 4
sub dword [ebp - 0xcd0], 1
jne 0x44dcf0
add esi, dword [ebp - 0xca0]
add edx, dword [ebp - 0xce0]
mov ebx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44dce0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
cmp eax, 0xff
jne 0x448b6e
cmp dword [ebp - 0x420], 0xff00
jne 0x448b6e
cmp dword [ebp - 0x41c], 0xff0000
jne 0x448b6e
movzx ebx, byte [ebp + 0x42]
mov ecx, dword [ebp + 0x40]
and ebx, 0xfffffff8
shl ebx, 5
movzx eax, ch
or ebx, eax
movzx eax, cl
and ebx, 0xfffffff8
shr eax, 3
shl ebx, 2
or ebx, eax
mov dword [ebp - 0xc90], ebx
mov ebx, dword [ebp - 0xc8c]
mov dword [ebp - 0xcd0], ebx
mov ebx, dword [ebp - 0xc90]
nop dword [eax]
movzx eax, word [edx]
mov dword [ebp - 0xca4], eax
mov ecx, eax
cmp eax, ebx
je 0x44dde4
or ecx, 0xffffffe0
jmp 0x44dde7
and ecx, 0x1f
and eax, 0x3e0
shl ecx, 0xd
or ecx, eax
add edx, 2
mov eax, dword [ebp - 0xca4]
shr eax, 7
and eax, 0xf8
shl ecx, 6
or ecx, eax
mov dword [esi], ecx
add esi, 4
sub dword [ebp - 0xcd0], 1
jne 0x44ddd0
add esi, dword [ebp - 0xca0]
add edx, dword [ebp - 0xce0]
mov ebx, dword [ebp - 0xc8c]
sub edi, 1
jne 0x44ddc0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov ah, 0x20
mov dword [ebp - 0x850], 0x18000810
mov edi, 0xff0000
mov byte [ebp - 0x857], ah
mov esi, 0xff000000
mov dword [ebp - 0x84c], edi
mov dword [ebp - 0x854], 0x8080808
mov dword [ebp - 0x848], 0xff00
mov dword [ebp - 0x844], 0xff
mov dword [ebp - 0x840], esi
mov al, byte [ebp - 0x431]
test al, al
jne 0x44dee8
cmp byte [ebp - 0x432], 0x10
je 0x44dee8
mov dl, byte [ebp - 0x425]
mov al, byte [ebp - 0x42a]
mov ch, byte [ebp - 0x42b]
mov dh, byte [ebp - 0x42c]
mov byte [ebp - 0xcea], dl
mov dl, byte [ebp - 0x426]
mov byte [ebp - 0xcfe], dl
mov dl, byte [ebp - 0x427]
mov byte [ebp - 0xcff], dl
mov dl, byte [ebp - 0x428]
mov byte [ebp - 0xd0a], al
mov al, byte [ebp - 0x431]
mov byte [ebp - 0xcfd], dl
jmp 0x44df3d
mov dh, 8
mov dword [ebp - 0xd3c], 0xff0000
mov ch, dh
mov byte [ebp - 0xcfd], 0x10
mov cl, 0x20
mov dword [ebp - 0xcf8], 0xff00
mov byte [ebp - 0xcff], dh
mov dword [ebp - 0xd2c], 0xff
mov byte [ebp - 0xcfe], 0
mov byte [ebp - 0xd0a], ch
mov dword [ebp - 0xd6c], 0xff000000
mov byte [ebp - 0xcea], 0x18
mov byte [ebp - 0xcd1], ch
mov byte [ebp - 0xce9], ch
mov byte [ebp - 0xd15], dh
cmp byte [ebp - 0x854], dh
jne 0x44df60
mov byte [ebp - 0xd34], 0
cmp byte [ebp - 0x853], ch
je 0x44df67
mov byte [ebp - 0xd34], 1
cmp dword [ebp - 0xd14], 0
mov ebx, dword [ebp - 0xcbc]
mov dl, byte [ebp - 0xc7c]
mov dword [ebp - 0xca0], 1
je 0x44dfa8
mov ebx, dword [ebp - 0xd34]
cmp dl, byte [ebp - 0xcd1]
movzx ebx, bl
cmovne ebx, dword [ebp - 0xca0]
mov dword [ebp - 0xd34], ebx
mov ebx, dword [ebp - 0xcbc]
test al, al
mov al, byte [ebp - 0x432]
jne 0x44dfb6
cmp al, 0x10
jne 0x44dfbd
mov byte [ebp - 0xd34], 0
cmp byte [ebp - 0x859], 0
jne 0x44dfdc
cmp byte [ebp - 0x431], 0
jne 0x44dfdc
cmp byte [ebp - 0x85a], 0x10
je 0x44dfdc
cmp al, 0x10
jne 0x44dff7
mov dword [ebp - 0xd50], 0
mov dword [ebp + 0x3c], 0
mov dword [ebp - 0xd14], 0
cmp byte [ebp - 0x859], 0
mov byte [ebp - 0xc85], 0
je 0x44e027
mov al, byte [ebp - 0x85a]
cmp al, 0x10
je 0x44e01e
cmp al, 0x20
jne case.0x44e04b.9
mov byte [ebp - 0xc85], 4
jmp case.0x44e04b.9
mov byte [ebp - 0xc85], 5
jmp case.0x44e04b.9
cmp byte [ebp - 0x85a], 0x10
jne 0x44e039
mov byte [ebp - 0xc85], 6
jmp case.0x44e04b.9
movzx eax, ah
add eax, 0xfffffff8
cmp eax, 0x18
ja case.0x44e04b.9
movzx eax, byte [eax + 0x44f964]
jmp dword [eax*4 + 0x44f950]
mov byte [ebp - 0xc85], 0
jmp case.0x44e04b.9
mov byte [ebp - 0xc85], 1
jmp case.0x44e04b.9
mov byte [ebp - 0xc85], 2
jmp case.0x44e04b.9
mov byte [ebp - 0xc85], 3
or esi, dword [ebp - 0x844]
or esi, dword [ebp - 0x848]
or esi, edi
cmp dword [ebp + 0x3c], 0
mov dword [ebp - 0xd90], esi
jne 0x44e0d7
movzx eax, byte [ebp - 0x857]
add eax, 0xfffffff8
cmp eax, 0x18
ja case.0x44e0a4.9
movzx eax, byte [eax + 0x44f994]
jmp dword [eax*4 + 0x44f980]
movzx eax, word [ebp + 0x40]
jmp 0x44e0c4
mov eax, dword [ebp + 0x40]
and eax, 0xffffff
jmp 0x44e0c4
movzx eax, byte [ebp + 0x40]
jmp 0x44e0c4
mov eax, dword [ebp + 0x40]
cmp byte [ebp - 0x857], 8
mov dword [ebp - 0xca8], eax
je 0x44e0e0
and eax, esi
jmp 0x44e0da
mov eax, dword [ebp + 0x40]
mov dword [ebp - 0xca8], eax
cmp byte [ebp - 0x431], 0
je 0x44e11d
mov al, byte [ebp - 0x432]
cmp al, 0x10
je 0x44e111
mov dword [ebp - 0xd20], 0
cmp al, 0x20
jne case.0x44e158.12
mov dword [ebp - 0xd20], 4
jmp case.0x44e158.12
mov dword [ebp - 0xd20], 5
jmp case.0x44e158.12
cmp byte [ebp - 0x432], 0x10
jne 0x44e132
mov dword [ebp - 0xd20], 6
jmp case.0x44e158.12
movzx eax, cl
add eax, 0xfffffff8
mov dword [ebp - 0xd20], 0
cmp eax, 0x18
ja case.0x44e158.12
movzx eax, byte [eax + 0x44f9c4]
mov dword [ebp - 0xd20], 0
jmp dword [eax*4 + 0x44f9b0]
mov dword [ebp - 0xd20], 0
jmp case.0x44e158.12
mov dword [ebp - 0xd20], 1
jmp case.0x44e158.12
mov dword [ebp - 0xd20], 2
jmp case.0x44e158.12
mov dword [ebp - 0xd20], 3
movzx eax, byte [ebp - 0xc7f]
add eax, 0xfffffff8
mov dword [ebp - 0xd30], 0
cmp eax, 0x18
ja case.0x44e1b7.12
movzx eax, byte [eax + 0x44f9f4]
mov dword [ebp - 0xd30], 0
jmp dword [eax*4 + 0x44f9e0]
mov dword [ebp - 0xd30], 0
jmp case.0x44e1b7.12
mov dword [ebp - 0xd30], 1
jmp case.0x44e1b7.12
mov dword [ebp - 0xd30], 2
jmp case.0x44e1b7.12
mov dword [ebp - 0xd30], 3
cmp byte [ebp - 0xd34], 1
jne 0x44e4ce
mov al, byte [ebp - 0x854]
mov esi, dword [ebp - 0xd14]
sub al, dh
mov dh, byte [ebp - 0x853]
mov byte [ebp - 0xd01], al
sub dh, ch
mov al, byte [ebp - 0x852]
sub al, byte [ebp - 0xd0a]
test esi, esi
movzx ecx, byte [ebp - 0x851]
mov byte [ebp - 0xd00], al
movzx eax, dl
cmovne ecx, eax
mov byte [ebp - 0xd09], dh
mov eax, dword [ebp - 0xca0]
mov dl, cl
sub dl, byte [ebp - 0xcd1]
mov edi, eax
mov dword [ebp - 0xd60], ecx
mov cl, byte [ebp - 0xd01]
shl edi, cl
mov cl, dh
shl eax, cl
mov cl, byte [ebp - 0xd00]
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xca0]
shl eax, cl
mov dword [ebp - 0xcd0], eax
mov eax, dword [ebp - 0xca0]
movzx ecx, dl
shl eax, cl
cmp dword [ebp + 0x44], 1
mov byte [ebp - 0xd02], dl
mov dword [ebp - 0xd5c], edi
mov dword [ebp - 0xce8], eax
jne 0x44e366
movzx eax, byte [ebp - 0x850]
test esi, esi
movzx ecx, byte [ebp - 0x84d]
mov ebx, dword [ebp - 0xca4]
mov dword [ebp - 0xc90], eax
movzx eax, byte [ebp - 0x84f]
mov dword [ebp - 0xcdc], eax
movzx eax, byte [ebp - 0x84e]
mov dword [ebp - 0xd10], eax
movzx eax, byte [ebp - 0xc78]
cmovne ecx, eax
xor esi, esi
movzx eax, cl
mov dword [ebp - 0xd38], eax
nop word [eax + eax]
mov edx, dword [esi + 0x73cd78]
mov eax, edx
mov ecx, dword [ebp - 0xc90]
imul eax, edi
shr eax, 4
shl eax, cl
mov ecx, dword [ebp - 0xcdc]
mov dword [ebp + esi - 0xde8], eax
mov eax, edx
imul eax, ebx
shr eax, 4
shl eax, cl
mov ecx, dword [ebp - 0xd10]
mov dword [ebp + esi - 0xe28], eax
mov eax, edx
imul eax, dword [ebp - 0xcd0]
imul edx, dword [ebp - 0xce8]
shr eax, 4
shl eax, cl
mov ecx, dword [ebp - 0xd38]
shr edx, 4
shl edx, cl
mov dword [ebp + esi - 0xe68], eax
mov dword [ebp + esi - 0xea8], edx
add esi, 4
cmp esi, 0x40
jl 0x44e2f0
mov ebx, dword [ebp - 0xcbc]
movzx edi, byte [ebp - 0x850]
mov eax, dword [ebp - 0xd5c]
mov ecx, edi
movzx esi, byte [ebp - 0x84f]
dec eax
shl eax, cl
mov ecx, esi
movzx edx, byte [ebp - 0x84e]
mov dword [ebp - 0xd4c], eax
mov eax, dword [ebp - 0xca4]
dec eax
shl eax, cl
mov ecx, edx
mov dword [ebp - 0xd1c], eax
mov eax, dword [ebp - 0xcd0]
dec eax
shl eax, cl
cmp dword [ebp - 0xd14], 0
movzx ecx, byte [ebp - 0x84d]
mov dword [ebp - 0xcf4], eax
movzx eax, byte [ebp - 0xc78]
cmovne ecx, eax
mov eax, dword [ebp - 0xce8]
dec eax
shl eax, cl
mov ecx, edi
mov dword [ebp - 0xcd8], eax
mov eax, dword [ebp - 0xd6c]
or eax, dword [ebp - 0xd2c]
or eax, dword [ebp - 0xcf8]
or eax, dword [ebp - 0xd3c]
not eax
mov dword [ebp - 0xd38], eax
mov eax, dword [ebp - 0x84c]
shr eax, cl
mov ecx, esi
mov esi, dword [ebp - 0x844]
mov dword [ebp - 0xd8c], eax
mov eax, dword [ebp - 0x848]
shr eax, cl
mov ecx, edx
mov dword [ebp - 0xd7c], eax
mov eax, esi
shr eax, cl
cmp dword [ebp - 0xd14], 0
mov dword [ebp - 0xd84], eax
je 0x44e43e
mov edi, dword [ebp - 0xc74]
mov cl, byte [ebp - 0xc78]
jmp 0x44e44a
mov edi, dword [ebp - 0x840]
mov cl, byte [ebp - 0x84d]
movzx eax, byte [ebp - 0x854]
mov edx, dword [ebp - 0xca0]
shr edi, cl
movzx ecx, byte [ebp - 0xd15]
sub ecx, eax
mov dword [ebp - 0xd28], edi
mov eax, edx
mov edi, edx
shl eax, cl
movzx ecx, byte [ebp - 0xce9]
dec eax
mov dword [ebp - 0xd78], eax
movzx eax, byte [ebp - 0x853]
sub ecx, eax
mov eax, edx
shl eax, cl
movzx ecx, byte [ebp - 0xd0a]
dec eax
mov dword [ebp - 0xd80], eax
movzx eax, byte [ebp - 0x852]
sub ecx, eax
mov eax, edx
shl eax, cl
movzx ecx, byte [ebp - 0xcd1]
dec eax
mov dword [ebp - 0xd5c], eax
mov eax, dword [ebp - 0xd60]
movzx eax, al
sub ecx, eax
shl edi, cl
dec edi
mov dword [ebp - 0xd68], edi
mov edi, dword [ebp - 0x84c]
jmp 0x44e4d4
mov esi, dword [ebp - 0x844]
cmp dword [ebp + 0x3c], 0
je 0x44e57d
mov ecx, dword [ebp - 0xca8]
push 0xff
movzx eax, cl
push eax
mov eax, ecx
shr eax, 8
movzx eax, al
push eax
mov eax, ecx
shr eax, 0x10
movzx eax, al
push eax
lea eax, [ebp - 0x85c]
push eax
call fcn.00448160
add esp, 0x14
cmp byte [ebp - 0x857], 8
jne 0x44e543
movzx ecx, byte [ebp + eax*4 - 0x832]
mov dword [ebp - 0xd70], ecx
movzx ecx, byte [ebp + eax*4 - 0x833]
movzx eax, byte [ebp + eax*4 - 0x834]
mov dword [ebp - 0xd74], ecx
mov dword [ebp - 0xd64], eax
jmp 0x44e57d
mov cl, byte [ebp - 0x850]
mov edx, edi
and edx, eax
shr edx, cl
mov cl, byte [ebp - 0x84f]
mov dword [ebp - 0xd70], edx
mov edx, dword [ebp - 0x848]
and edx, eax
shr edx, cl
mov cl, byte [ebp - 0x84e]
mov dword [ebp - 0xd74], edx
mov edx, esi
and edx, eax
shr edx, cl
mov dword [ebp - 0xd64], edx
movzx edi, byte [ebp - 0x430]
mov esi, dword [ebp - 0xc8c]
mov eax, edi
mov ecx, dword [ebp - 0xc98]
imul eax, esi
cmp dword [ebp + 0x38], 0
mov dword [ebp - 0xca4], edi
jne 0x44e5f0
mov ebx, dword [ebp + 0x24]
mov edx, ecx
sub edx, eax
movzx eax, byte [ebp - 0x858]
mov dword [ebp - 0xcd0], eax
imul eax, esi
mov dword [ebp - 0xcdc], edx
mov edx, dword [ebp - 0xc94]
mov dword [ebp - 0xce0], edx
sub dword [ebp - 0xce0], eax
movzx eax, byte [ebp - 0xc80]
mov dword [ebp - 0xce8], eax
imul eax, esi
sub ebx, eax
mov dword [ebp - 0xc90], ebx
mov ebx, dword [ebp - 0xcbc]
jmp 0x44e63b
mov edx, dword [ebp - 0xc94]
add eax, ecx
mov dword [ebp - 0xcdc], eax
movzx eax, byte [ebp - 0x858]
mov dword [ebp - 0xcd0], eax
imul eax, esi
mov dword [ebp - 0xce0], edx
mov edx, dword [ebp + 0x24]
sub dword [ebp - 0xce0], eax
movzx eax, byte [ebp - 0xc80]
mov dword [ebp - 0xce8], eax
imul eax, esi
sub edx, eax
mov dword [ebp - 0xc90], edx
mov edx, dword [ebp - 0xc94]
xorps xmm5, xmm5
imul ebx, ecx
xor eax, eax
mov dword [ebp - 0xd08], 0
cmp dword [ebp + 0x38], 1
movaps xmm0, xmm5
movaps xmm3, xmm5
mov dword [ebp - 0xc94], 0
movaps xmm2, xmm5
mov dword [ebp - 0xd54], 0
movaps xmm1, xmm5
mov dword [ebp - 0xcac], 0
mov dword [ebp - 0xd24], 0
mov dword [ebp - 0xcfc], 0
mov dword [ebp - 0xccc], eax
movss dword [ebp - 0xcc8], xmm0
movss dword [ebp - 0xcbc], xmm3
movss dword [ebp - 0xcf0], xmm2
movss dword [ebp - 0xc98], xmm1
jne 0x44e6d1
neg edi
mov dword [ebp - 0xd10], edi
mov edi, dword [ebp - 0xcb4]
dec edi
add edi, esi
imul edi, dword [ebp - 0xca4]
jmp 0x44e6de
mov dword [ebp - 0xd10], edi
imul edi, dword [ebp - 0xcb4]
mov eax, dword [ebp - 0xcb8]
add edi, ebx
mov dword [ebp - 0xca4], 0
mov ebx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, ecx
imul ecx, dword [ebp + 0x24]
imul eax, edx
mov edx, dword [ebp - 0xcd0]
imul edx, ebx
imul ebx, dword [ebp - 0xce8]
add ecx, dword [ebp + 0x20]
add eax, dword [ebp - 0xcc4]
add edx, eax
add ebx, ecx
mov dword [ebp - 0xca0], edx
mov dword [ebp - 0xcc4], ebx
mov ebx, dword [ebp - 0xc9c]
test ebx, ebx
jle case.0x449de8.9
movzx eax, byte [ebp - 0xd02]
mov dword [ebp - 0xd60], eax
not eax
inc eax
movss xmm4, dword [0x736664]
mov dword [ebp - 0xd88], eax
movzx eax, byte [ebp - 0xd01]
mov dword [ebp - 0xd98], eax
not eax
inc eax
movss xmm6, dword [0x6b8ea8]
mov dword [ebp - 0xd94], eax
movzx eax, byte [ebp - 0xd09]
movss xmm7, dword [0x6b8cd0]
mov ecx, dword [ebp - 0xcc4]
mov dword [ebp - 0xda8], eax
not eax
inc eax
mov dword [ebp - 0xd58], 0
mov dword [ebp - 0xd9c], eax
movzx eax, byte [ebp - 0xd00]
mov dword [ebp - 0xda4], eax
not eax
inc eax
mov dword [ebp - 0xd40], 0
mov dword [ebp - 0xda0], eax
xor eax, eax
mov dword [ebp - 0xd48], eax
mov eax, dword [ebp - 0xcb0]
add eax, edi
mov dword [ebp - 0xd44], 0
mov dword [ebp - 0xcb8], eax
xor edi, edi
mov dword [ebp - 0xcc0], 0
test esi, esi
jle 0x44f835
movzx eax, byte [ebp - 0xc85]
mov ebx, dword [ebp - 0xd6c]
mov dword [ebp - 0xc], eax
jmp dword [eax*4 + 0x44fa10]
add eax, dword [ebp - 0xcdc]
inc edi
add edx, dword [ebp - 0xce0]
add ecx, dword [ebp - 0xc90]
mov dword [ebp - 0xca4], edi
mov dword [ebp - 0xcb8], eax
mov dword [ebp - 0xca0], edx
mov dword [ebp - 0xcc4], ecx
cmp edi, ebx
jl 0x44e7e1
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c33e1
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
or eax, 0xffffffff
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.005c33e1
mov esp, ebp
pop ebp
ret