Function at 0x49df90
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x9ce254
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x964
mov dword [ebp - 0x8e8], ecx
mov dword [ebp - 0x2a4], 0
mov byte [ebp - 0x25d], 0
mov dword [ebp - 0x2ac], 0
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0
mov dword [ebp - 0x26c], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x268], 0
fldz
fstp qword [ebp - 0x24]
fldz
fstp qword [ebp - 0x3c]
fldz
fstp qword [ebp - 0x3c]
jmp 0x49e024
fld qword [ebp - 0x3c]
fadd qword [0x9d1388]
fstp qword [ebp - 0x3c]
fld qword [0x9d3a80]
fcomp qword [ebp - 0x3c]
fnstsw ax
test ah, 0x41
jne 0x49e083
fld qword [0x9d3a78]
fmul qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fsubp st(1)
fld qword [0x9d1490]
fmul qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fadd qword [0x9d3a70]
fdivp st(1)
fadd qword [ebp - 0x24]
fstp qword [ebp - 0x24]
fld qword [0x9d3a68]
fcomp qword [ebp - 0x24]
fnstsw ax
test ah, 5
jp 0x49e081
fld qword [0x9d3a60]
fmul qword [ebp - 0x3c]
fsubr qword [ebp - 0x24]
fstp qword [ebp - 0x24]
jmp 0x49e018
fldz
fcomp qword [ebp - 0x24]
fnstsw ax
test ah, 0x41
jne 0x49e0cd
push ebp
and edx, dword [eax + edi*2 + 0x7c]
insd dword es:[edi], dx
and al, byte [edi + 0x47]
jns 0x49e10a
xor eax, 0x41627825
xor al, 0x60
push esp
js 0x49e0f1
imul esi, dword [edi + 0x37], 0xffffff8c
nop
cmp edx, dword [esi - 0x6cc56dc9]
xor cl, byte [esi - 0x65cf71d1]
xchg ebp, eax
xor byte [esi - 0x6cce6bc9], cl
cdq
aaa
invalid
mov dword [ebp - 0x40], 0x49e0a6
mov dword [ebp - 0x268], 0x49e08f
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x2b8], eax
mov ecx, dword [ebp - 0x268]
mov dword [ebp - 0x2b4], ecx
mov byte [ebp - 0x3d5], 0x1b
mov dword [ebp - 0x3cc], 0
jmp 0x49e115
invalid
mov edx, dword [ebp - 0x3cc]
add edx, 1
mov dword [ebp - 0x3cc], edx
invalid
cmp dword [ebp - 0x3cc], 0x100
jae 0x49e136
mov eax, dword [ebp - 0x3cc]
mov cl, byte [ebp - 0x3cc]
mov byte [ebp + eax - 0x3c4], cl
jmp 0x49e106
mov dword [ebp - 0x2bc], 0
mov byte [ebp - 0x3d6], 0
mov dword [ebp - 0x3cc], 0xff
jmp 0x49e162
mov edx, dword [ebp - 0x3cc]
sub edx, 1
mov dword [ebp - 0x3cc], edx
cmp dword [ebp - 0x3cc], 0
jbe 0x49e46e
mov dword [ebp - 0x3dc], 0
mov dword [ebp - 0x3e4], 1
mov eax, dword [ebp - 0x3e4]
cmp eax, dword [ebp - 0x3cc]
jae 0x49e1a3
mov ecx, dword [ebp - 0x3e4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3e4], edx
jmp 0x49e183
mov eax, dword [ebp - 0x2bc]
mov dword [ebp - 0x8ec], eax
cmp dword [ebp - 0x8ec], 3
ja case.default.0x49e1c2
mov ecx, dword [ebp - 0x8ec]
jmp dword [ecx*4 + 0x4a2a10]
movzx edx, byte [ebp - 0x3d6]
movzx ecx, byte [ebp + edx - 0x3c4]
fld qword [ebp - 0x24]
fnstcw word [ebp - 0x8ee]
movzx eax, word [ebp - 0x8ee]
or eax, 0xc00
mov dword [ebp - 0x8f4], eax
fldcw word [ebp - 0x8f4]
fistp qword [ebp - 0x8fc]
fldcw word [ebp - 0x8ee]
mov edx, dword [ebp - 0x8fc]
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x3d6], cl
jmp 0x49e347
movzx eax, byte [ebp - 0x3d6]
movzx ecx, byte [ebp + eax - 0x3c4]
fld qword [ebp - 0x24]
fnstcw word [ebp - 0x8fe]
movzx eax, word [ebp - 0x8fe]
or eax, 0xc00
mov dword [ebp - 0x904], eax
fldcw word [ebp - 0x904]
fistp qword [ebp - 0x90c]
fldcw word [ebp - 0x8fe]
mov edx, dword [ebp - 0x90c]
shr edx, 8
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x3d6], cl
jmp 0x49e347
movzx eax, byte [ebp - 0x3d6]
movzx ecx, byte [ebp + eax - 0x3c4]
fld qword [ebp - 0x24]
fnstcw word [ebp - 0x90e]
movzx eax, word [ebp - 0x90e]
or eax, 0xc00
mov dword [ebp - 0x914], eax
fldcw word [ebp - 0x914]
fistp qword [ebp - 0x91c]
fldcw word [ebp - 0x90e]
mov edx, dword [ebp - 0x91c]
shr edx, 0x10
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x3d6], cl
jmp 0x49e347
movzx eax, byte [ebp - 0x3d6]
movzx ecx, byte [ebp + eax - 0x3c4]
fld qword [ebp - 0x24]
fnstcw word [ebp - 0x91e]
movzx eax, word [ebp - 0x91e]
or eax, 0xc00
mov dword [ebp - 0x924], eax
fldcw word [ebp - 0x924]
fistp qword [ebp - 0x92c]
fldcw word [ebp - 0x91e]
mov edx, dword [ebp - 0x92c]
shr edx, 0x18
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x3d6], cl
jmp 0x49e347
movzx eax, byte [ebp - 0x3d6]
movzx ecx, byte [ebp + eax - 0x3c4]
mov edx, dword [ebp - 0x2b4]
add edx, dword [ebp - 0x2bc]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0x3d6], cl
mov ecx, dword [ebp - 0x2bc]
add ecx, 1
mov dword [ebp - 0x2bc], ecx
movzx edx, byte [ebp - 0x3d5]
cmp dword [ebp - 0x2bc], edx
jb 0x49e385
mov dword [ebp - 0x2bc], 0
movzx eax, byte [ebp - 0x3d5]
movzx ecx, byte [ebp - 0x3d6]
add ecx, eax
mov byte [ebp - 0x3d6], cl
movzx edx, byte [ebp - 0x3d6]
and edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x3e0], edx
mov eax, dword [ebp - 0x3dc]
add eax, 1
mov dword [ebp - 0x3dc], eax
cmp dword [ebp - 0x3dc], 0xb
jbe 0x49e3c4
mov eax, dword [ebp - 0x3e0]
xor edx, edx
div dword [ebp - 0x3cc]
mov dword [ebp - 0x3e0], edx
mov ecx, dword [ebp - 0x3e0]
cmp ecx, dword [ebp - 0x3cc]
ja 0x49e1a3
mov edx, dword [ebp - 0x3cc]
cmp edx, dword [ebp - 0x3e0]
je 0x49e469
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [ebp + eax - 0x3c4]
mov edx, dword [ebp - 0x3cc]
movzx eax, byte [ebp + edx - 0x3c4]
xor eax, ecx
mov ecx, dword [ebp - 0x3cc]
mov byte [ebp + ecx - 0x3c4], al
mov edx, dword [ebp - 0x3cc]
movzx eax, byte [ebp + edx - 0x3c4]
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ebp + ecx - 0x3c4]
xor edx, eax
mov eax, dword [ebp - 0x3e0]
mov byte [ebp + eax - 0x3c4], dl
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ebp + ecx - 0x3c4]
mov eax, dword [ebp - 0x3cc]
movzx ecx, byte [ebp + eax - 0x3c4]
xor ecx, edx
mov edx, dword [ebp - 0x3cc]
mov byte [ebp + edx - 0x3c4], cl
jmp 0x49e153
mov al, byte [ebp - 0x3c3]
mov byte [ebp - 0x3d7], al
mov cl, byte [ebp - 0x3c1]
mov byte [ebp - 0x2bd], cl
mov dl, byte [ebp - 0x3bf]
mov byte [ebp - 0x3c5], dl
mov al, byte [ebp - 0x3bd]
mov byte [ebp - 0x3cd], al
movzx ecx, byte [ebp - 0x3d6]
mov dl, byte [ebp + ecx - 0x3c4]
mov byte [ebp - 0x2ad], dl
mov dword [ebp - 0x3d4], 0x22
cmp dword [ebp - 0x3d4], 2
jle 0x4a050c
mov eax, dword [ebp - 0x3d4]
and eax, 1
jne 0x4a050c
mov dword [ebp - 0x498], 0
mov dword [ebp - 0x494], 0
mov ecx, dword [ebp - 0x494]
add ecx, 1
mov dword [ebp - 0x494], ecx
mov dword [ebp - 0x3f8], 0
mov edx, dword [ebp - 0x498]
shl edx, 1
mov dword [ebp - 0x3f8], edx
mov dword [ebp - 0x4dc], 0
mov eax, dword [ebp - 0x2b8]
add eax, dword [ebp - 0x3f8]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x4dc], ecx
mov dword [ebp - 0x440], 0
mov edx, dword [ebp - 0x440]
add edx, 0x2e
mov dword [ebp - 0x440], edx
mov dword [ebp - 0x46c], 0
mov eax, dword [ebp - 0x498]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x46c], ecx
mov dword [ebp - 0x4ec], 0
mov edx, dword [ebp - 0x2b8]
add edx, dword [ebp - 0x46c]
movzx eax, byte [edx]
add eax, dword [ebp - 0x4ec]
mov dword [ebp - 0x4ec], eax
mov dword [ebp - 0x4d8], 0
mov ecx, dword [ebp - 0x4d8]
add ecx, 0x8c
mov dword [ebp - 0x4d8], ecx
mov dword [ebp - 0x4e8], 0
mov edx, dword [ebp - 0x4dc]
sub edx, dword [ebp - 0x440]
add edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x4e8], edx
mov dword [ebp - 0x410], 0
mov eax, dword [ebp - 0x4ec]
sub eax, dword [ebp - 0x4d8]
add eax, dword [ebp - 0x410]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x4e4], 0
mov ecx, dword [ebp - 0x4e8]
shl ecx, 4
mov dword [ebp - 0x4e4], ecx
mov dword [ebp - 0x4d4], 0
mov edx, dword [ebp - 0x410]
mov dword [ebp - 0x4d4], edx
mov dword [ebp - 0x490], 0
fld qword [0x9d3a58]
fstp qword [ebp - 0x48c]
fld qword [0x9d3a50]
fstp qword [ebp - 0x44c]
fld qword [0x9d3a48]
fstp qword [ebp - 0x43c]
fld qword [0x9d3a40]
fstp qword [ebp - 0x40c]
fld qword [ebp - 0x44c]
fsub qword [ebp - 0x40c]
fstp qword [ebp - 0x44c]
fld qword [ebp - 0x48c]
fmul qword [ebp - 0x40c]
fstp qword [ebp - 0x48c]
fld qword [ebp - 0x48c]
fmul qword [ebp - 0x40c]
fstp qword [ebp - 0x48c]
fld qword [ebp - 0x44c]
fsub qword [ebp - 0x40c]
fstp qword [ebp - 0x44c]
fld qword [ebp - 0x44c]
fcomp qword [ebp - 0x48c]
fnstsw ax
test ah, 5
jp 0x49e713
fld qword [ebp - 0x48c]
fsub qword [ebp - 0x44c]
fstp qword [ebp - 0x48c]
fld qword [ebp - 0x40c]
fmul qword [ebp - 0x48c]
fstp qword [ebp - 0x40c]
fld qword [ebp - 0x43c]
fsub qword [ebp - 0x40c]
fstp qword [ebp - 0x43c]
fld qword [ebp - 0x40c]
fsub qword [ebp - 0x48c]
fstp qword [ebp - 0x40c]
mov eax, dword [ebp - 0x4e4]
or eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x490], eax
jmp 0x49e848
fld qword [ebp - 0x40c]
fdiv qword [ebp - 0x48c]
fstp qword [ebp - 0x40c]
fld qword [ebp - 0x44c]
fsub qword [ebp - 0x43c]
fstp qword [ebp - 0x44c]
fld qword [ebp - 0x48c]
fdiv qword [ebp - 0x44c]
fstp qword [ebp - 0x48c]
fld qword [ebp - 0x48c]
fmul qword [ebp - 0x44c]
fstp qword [ebp - 0x48c]
fld qword [ebp - 0x40c]
fdiv qword [ebp - 0x48c]
fstp qword [ebp - 0x40c]
fld qword [ebp - 0x48c]
fdiv qword [ebp - 0x44c]
fstp qword [ebp - 0x48c]
fld qword [ebp - 0x43c]
fsub qword [ebp - 0x40c]
fstp qword [ebp - 0x43c]
fld qword [ebp - 0x48c]
fdiv qword [ebp - 0x44c]
fstp qword [ebp - 0x48c]
fld qword [ebp - 0x43c]
fcomp qword [ebp - 0x48c]
fnstsw ax
test ah, 0x41
jne 0x49e800
fld qword [ebp - 0x43c]
fmul qword [ebp - 0x40c]
fstp qword [ebp - 0x43c]
fld qword [ebp - 0x40c]
fsub qword [ebp - 0x48c]
fstp qword [ebp - 0x40c]
fld qword [ebp - 0x40c]
fmul qword [ebp - 0x48c]
fstp qword [ebp - 0x40c]
fld qword [ebp - 0x48c]
fmul qword [ebp - 0x44c]
fstp qword [ebp - 0x48c]
jmp 0x49e848
fld qword [ebp - 0x43c]
fmul qword [ebp - 0x48c]
fstp qword [ebp - 0x43c]
fld qword [ebp - 0x43c]
fdiv qword [ebp - 0x48c]
fstp qword [ebp - 0x43c]
fld qword [ebp - 0x40c]
fmul qword [ebp - 0x44c]
fstp qword [ebp - 0x40c]
fld qword [ebp - 0x48c]
fsub qword [ebp - 0x43c]
fstp qword [ebp - 0x48c]
mov byte [ebp - 0x441], 0
mov cl, byte [ebp - 0x490]
mov byte [ebp - 0x441], cl
mov byte [ebp - 0x4dd], 0
movzx edx, byte [ebp - 0x2ad]
mov al, byte [ebp + edx - 0x3c4]
mov byte [ebp - 0x4dd], al
movzx ecx, byte [ebp - 0x3d7]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx eax, byte [ebp - 0x2bd]
add eax, edx
mov byte [ebp - 0x2bd], al
mov cl, byte [ebp - 0x3d7]
add cl, 1
mov byte [ebp - 0x3d7], cl
movzx edx, byte [ebp - 0x2bd]
movzx eax, byte [ebp - 0x2ad]
mov cl, byte [ebp + edx - 0x3c4]
mov byte [ebp + eax - 0x3c4], cl
movzx edx, byte [ebp - 0x3cd]
movzx eax, byte [ebp - 0x2bd]
mov cl, byte [ebp + edx - 0x3c4]
mov byte [ebp + eax - 0x3c4], cl
movzx edx, byte [ebp - 0x3d7]
movzx eax, byte [ebp - 0x3cd]
mov cl, byte [ebp + edx - 0x3c4]
mov byte [ebp + eax - 0x3c4], cl
movzx edx, byte [ebp - 0x3d7]
mov al, byte [ebp - 0x4dd]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x4dd]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx eax, byte [ebp - 0x3c5]
add eax, edx
mov byte [ebp - 0x3c5], al
movzx ecx, byte [ebp - 0x441]
movzx edx, byte [ebp - 0x2bd]
movzx eax, byte [ebp + edx - 0x3c4]
movzx edx, byte [ebp - 0x3d7]
movzx edx, byte [ebp + edx - 0x3c4]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x3c4]
xor ecx, eax
movzx edx, byte [ebp - 0x3cd]
movzx eax, byte [ebp + edx - 0x3c4]
movzx edx, byte [ebp - 0x2ad]
movzx edx, byte [ebp + edx - 0x3c4]
add eax, edx
movzx edx, byte [ebp - 0x3c5]
movzx edx, byte [ebp + edx - 0x3c4]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x3c4]
movzx edx, byte [ebp + eax - 0x3c4]
xor ecx, edx
mov byte [ebp - 0x3cd], cl
mov al, byte [ebp - 0x441]
mov byte [ebp - 0x2ad], al
mov cl, byte [ebp - 0x3cd]
mov byte [ebp - 0x4cd], cl
cmp dword [ebp - 0x498], 0
jle 0x49e9de
mov edx, dword [ebp - 0x498]
mov al, byte [ebp - 0x4cd]
mov byte [ebp + edx - 0x55], al
mov ecx, dword [ebp - 0x498]
add ecx, 1
mov dword [ebp - 0x498], ecx
mov edx, dword [ebp - 0x494]
add edx, 1
mov dword [ebp - 0x494], edx
mov eax, dword [ebp - 0x498]
shl eax, 1
mov dword [ebp - 0x3f8], eax
mov ecx, dword [ebp - 0x2b8]
add ecx, dword [ebp - 0x3f8]
movzx edx, byte [ecx]
mov dword [ebp - 0x4dc], edx
mov dword [ebp - 0x440], 0x2e
mov eax, dword [ebp - 0x498]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x46c], ecx
mov edx, dword [ebp - 0x2b8]
add edx, dword [ebp - 0x46c]
movzx eax, byte [edx]
mov dword [ebp - 0x4ec], eax
mov dword [ebp - 0x4d8], 0x8c
mov ecx, dword [ebp - 0x4dc]
sub ecx, dword [ebp - 0x440]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4ec]
sub edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x410], edx
mov eax, dword [ebp - 0x4e8]
shl eax, 4
mov dword [ebp - 0x4e4], eax
mov ecx, dword [ebp - 0x410]
mov dword [ebp - 0x4d4], ecx
mov edx, dword [ebp - 0x4e4]
or edx, dword [ebp - 0x4d4]
mov dword [ebp - 0x490], edx
fld qword [0x9d3a38]
fstp qword [ebp - 0x4cc]
fld qword [0x9d3a30]
fstp qword [ebp - 0x484]
fld qword [0x9d3a28]
fstp qword [ebp - 0x434]
fld qword [0x9d3a20]
fstp qword [ebp - 0x404]
fld qword [0x9d3a18]
fstp qword [ebp - 0x4c4]
fld qword [0x9d3a10]
fstp qword [ebp - 0x47c]
fld qword [0x9d3a08]
fstp qword [ebp - 0x42c]
fld qword [ebp - 0x4cc]
fadd qword [ebp - 0x42c]
fstp qword [ebp - 0x4cc]
fld qword [ebp - 0x484]
fadd qword [ebp - 0x42c]
fstp qword [ebp - 0x484]
fld qword [ebp - 0x4c4]
fmul qword [ebp - 0x42c]
fstp qword [ebp - 0x4c4]
fld qword [ebp - 0x434]
fadd qword [ebp - 0x42c]
fstp qword [ebp - 0x434]
fld qword [ebp - 0x4cc]
fadd qword [ebp - 0x42c]
fstp qword [ebp - 0x4cc]
fld qword [ebp - 0x404]
fsub qword [ebp - 0x42c]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x404]
fsub qword [ebp - 0x42c]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x4c4]
fcomp qword [ebp - 0x42c]
fnstsw ax
test ah, 0x41
jne 0x49ec21
fld qword [ebp - 0x404]
fsub qword [ebp - 0x47c]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x47c]
fmul qword [ebp - 0x4cc]
fstp qword [ebp - 0x47c]
fld qword [ebp - 0x404]
fmul qword [ebp - 0x47c]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x47c]
fmul qword [ebp - 0x4cc]
fstp qword [ebp - 0x47c]
fld qword [ebp - 0x47c]
fmul qword [ebp - 0x4cc]
fstp qword [ebp - 0x47c]
fld qword [ebp - 0x4c4]
fmul qword [ebp - 0x42c]
fstp qword [ebp - 0x4c4]
fld qword [ebp - 0x4c4]
fsub qword [ebp - 0x42c]
fstp qword [ebp - 0x4c4]
mov al, byte [ebp - 0x490]
mov byte [ebp - 0x441], al
jmp 0x49ee32
fld qword [ebp - 0x4c4]
fmul qword [ebp - 0x42c]
fstp qword [ebp - 0x4c4]
fld qword [ebp - 0x47c]
fsub qword [ebp - 0x4cc]
fstp qword [ebp - 0x47c]
fld qword [ebp - 0x47c]
fmul qword [ebp - 0x4cc]
fstp qword [ebp - 0x47c]
fld qword [ebp - 0x47c]
fadd qword [ebp - 0x4cc]
fstp qword [ebp - 0x47c]
fld qword [ebp - 0x434]
fadd qword [ebp - 0x4c4]
fstp qword [ebp - 0x434]
fld qword [ebp - 0x42c]
fdiv qword [ebp - 0x484]
fstp qword [ebp - 0x42c]
fld qword [ebp - 0x434]
fmul qword [ebp - 0x4c4]
fstp qword [ebp - 0x434]
fld qword [ebp - 0x42c]
fsub qword [ebp - 0x484]
fstp qword [ebp - 0x42c]
fld qword [ebp - 0x4c4]
fmul qword [ebp - 0x42c]
fstp qword [ebp - 0x4c4]
fld qword [ebp - 0x47c]
fadd qword [ebp - 0x4cc]
fstp qword [ebp - 0x47c]
fld qword [ebp - 0x4cc]
fdiv qword [ebp - 0x434]
fstp qword [ebp - 0x4cc]
fld qword [ebp - 0x484]
fmul qword [ebp - 0x404]
fstp qword [ebp - 0x484]
fld qword [ebp - 0x484]
fmul qword [ebp - 0x404]
fstp qword [ebp - 0x484]
fld qword [ebp - 0x4c4]
fsub qword [ebp - 0x42c]
fstp qword [ebp - 0x4c4]
fld qword [ebp - 0x42c]
fcomp qword [ebp - 0x4c4]
fnstsw ax
test ah, 0x41
jne 0x49edb4
fld qword [ebp - 0x434]
fmul qword [ebp - 0x404]
fstp qword [ebp - 0x434]
fld qword [ebp - 0x484]
fsub qword [ebp - 0x434]
fstp qword [ebp - 0x484]
fld qword [ebp - 0x42c]
fmul qword [ebp - 0x4cc]
fstp qword [ebp - 0x42c]
fld qword [ebp - 0x404]
fmul qword [ebp - 0x4c4]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x4c4]
fdiv qword [ebp - 0x47c]
fstp qword [ebp - 0x4c4]
fld qword [ebp - 0x42c]
fdiv qword [ebp - 0x4cc]
fstp qword [ebp - 0x42c]
fld qword [ebp - 0x47c]
fadd qword [ebp - 0x42c]
fstp qword [ebp - 0x47c]
jmp 0x49ee32
fld qword [ebp - 0x4c4]
fdiv qword [ebp - 0x47c]
fstp qword [ebp - 0x4c4]
fld qword [ebp - 0x434]
fsub qword [ebp - 0x404]
fstp qword [ebp - 0x434]
fld qword [ebp - 0x4cc]
fmul qword [ebp - 0x484]
fstp qword [ebp - 0x4cc]
fld qword [ebp - 0x484]
fmul qword [ebp - 0x434]
fstp qword [ebp - 0x484]
fld qword [ebp - 0x4cc]
fdiv qword [ebp - 0x484]
fstp qword [ebp - 0x4cc]
fld qword [ebp - 0x4cc]
fdiv qword [ebp - 0x484]
fstp qword [ebp - 0x4cc]
fld qword [ebp - 0x42c]
fsub qword [ebp - 0x4cc]
fstp qword [ebp - 0x42c]
movzx ecx, byte [ebp - 0x2ad]
mov dl, byte [ebp + ecx - 0x3c4]
mov byte [ebp - 0x4dd], dl
movzx eax, byte [ebp - 0x3d7]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx edx, byte [ebp - 0x2bd]
add edx, ecx
mov byte [ebp - 0x2bd], dl
mov al, byte [ebp - 0x3d7]
add al, 1
mov byte [ebp - 0x3d7], al
movzx ecx, byte [ebp - 0x2bd]
movzx edx, byte [ebp - 0x2ad]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3cd]
movzx edx, byte [ebp - 0x2bd]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3d7]
movzx edx, byte [ebp - 0x3cd]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3d7]
mov dl, byte [ebp - 0x4dd]
mov byte [ebp + ecx - 0x3c4], dl
movzx eax, byte [ebp - 0x4dd]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx edx, byte [ebp - 0x3c5]
add edx, ecx
mov byte [ebp - 0x3c5], dl
movzx eax, byte [ebp - 0x441]
movzx ecx, byte [ebp - 0x2bd]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx ecx, byte [ebp - 0x3d7]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c4]
xor eax, edx
movzx ecx, byte [ebp - 0x3cd]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
movzx ecx, byte [ebp - 0x3c5]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c4]
movzx ecx, byte [ebp + edx - 0x3c4]
xor eax, ecx
mov byte [ebp - 0x3cd], al
mov dl, byte [ebp - 0x441]
mov byte [ebp - 0x2ad], dl
mov al, byte [ebp - 0x3cd]
mov byte [ebp - 0x4cd], al
cmp dword [ebp - 0x498], 0
jle 0x49efaf
mov ecx, dword [ebp - 0x498]
mov dl, byte [ebp - 0x4cd]
mov byte [ebp + ecx - 0x55], dl
mov eax, dword [ebp - 0x494]
add eax, 6
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp - 0x498]
add ecx, 1
mov dword [ebp - 0x4f0], ecx
jmp 0x49efde
mov edx, dword [ebp - 0x4f0]
add edx, 1
mov dword [ebp - 0x4f0], edx
mov eax, dword [ebp - 0x4f0]
cmp eax, dword [ebp - 0x494]
jge 0x49f52f
mov ecx, dword [ebp - 0x498]
add ecx, 1
mov dword [ebp - 0x498], ecx
mov edx, dword [ebp - 0x498]
shl edx, 1
mov dword [ebp - 0x3f8], edx
mov eax, dword [ebp - 0x2b8]
add eax, dword [ebp - 0x3f8]
movzx ecx, byte [eax]
mov dword [ebp - 0x4dc], ecx
mov dword [ebp - 0x440], 0x2e
mov edx, dword [ebp - 0x498]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x46c], eax
mov ecx, dword [ebp - 0x2b8]
add ecx, dword [ebp - 0x46c]
movzx edx, byte [ecx]
mov dword [ebp - 0x4ec], edx
mov dword [ebp - 0x4d8], 0x8c
mov eax, dword [ebp - 0x4dc]
sub eax, dword [ebp - 0x440]
mov dword [ebp - 0x4e8], eax
mov ecx, dword [ebp - 0x4ec]
sub ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x4e8]
shl edx, 4
mov dword [ebp - 0x4e4], edx
mov eax, dword [ebp - 0x410]
mov dword [ebp - 0x4d4], eax
mov ecx, dword [ebp - 0x4e4]
or ecx, dword [ebp - 0x4d4]
mov dword [ebp - 0x490], ecx
mov dl, byte [ebp - 0x490]
mov byte [ebp - 0x441], dl
fld qword [0x9d3a00]
fstp qword [ebp - 0x50c]
fld qword [0x9d39f8]
fstp qword [ebp - 0x534]
fld qword [0x9d39f0]
fstp qword [ebp - 0x504]
fld qword [0x9d39e8]
fstp qword [ebp - 0x51c]
fld qword [0x9d39e0]
fstp qword [ebp - 0x524]
fld qword [ebp - 0x534]
fadd qword [ebp - 0x524]
fstp qword [ebp - 0x534]
fld qword [ebp - 0x504]
fsub qword [ebp - 0x524]
fstp qword [ebp - 0x504]
fld qword [ebp - 0x51c]
fmul qword [ebp - 0x524]
fstp qword [ebp - 0x51c]
fld qword [ebp - 0x534]
fmul qword [ebp - 0x524]
fstp qword [ebp - 0x534]
fld qword [ebp - 0x50c]
fadd qword [ebp - 0x524]
fstp qword [ebp - 0x50c]
fld qword [ebp - 0x524]
fcomp qword [ebp - 0x534]
fnstsw ax
test ah, 0x41
jne 0x49f1bd
fld qword [ebp - 0x50c]
fadd qword [ebp - 0x534]
fstp qword [ebp - 0x50c]
fld qword [ebp - 0x51c]
fmul qword [ebp - 0x524]
fstp qword [ebp - 0x51c]
fld qword [ebp - 0x51c]
fsub qword [ebp - 0x524]
fstp qword [ebp - 0x51c]
fld qword [ebp - 0x51c]
fdiv qword [ebp - 0x524]
fstp qword [ebp - 0x51c]
fld qword [ebp - 0x534]
fadd qword [ebp - 0x504]
fstp qword [ebp - 0x534]
jmp 0x49f22b
fld qword [ebp - 0x504]
fmul qword [ebp - 0x51c]
fstp qword [ebp - 0x504]
fld qword [ebp - 0x50c]
fmul qword [ebp - 0x534]
fstp qword [ebp - 0x50c]
fld qword [ebp - 0x534]
fsub qword [ebp - 0x504]
fstp qword [ebp - 0x534]
fld qword [ebp - 0x534]
fsub qword [ebp - 0x504]
fstp qword [ebp - 0x534]
fld qword [ebp - 0x51c]
fadd qword [ebp - 0x524]
fstp qword [ebp - 0x51c]
movzx eax, byte [ebp - 0x2ad]
mov cl, byte [ebp + eax - 0x3c4]
mov byte [ebp - 0x4dd], cl
movzx edx, byte [ebp - 0x3d7]
movzx eax, byte [ebp + edx - 0x3c4]
movzx ecx, byte [ebp - 0x2bd]
add ecx, eax
mov byte [ebp - 0x2bd], cl
mov dl, byte [ebp - 0x3d7]
add dl, 1
mov byte [ebp - 0x3d7], dl
movzx eax, byte [ebp - 0x2bd]
movzx ecx, byte [ebp - 0x2ad]
mov dl, byte [ebp + eax - 0x3c4]
mov byte [ebp + ecx - 0x3c4], dl
movzx eax, byte [ebp - 0x3cd]
movzx ecx, byte [ebp - 0x2bd]
mov dl, byte [ebp + eax - 0x3c4]
mov byte [ebp + ecx - 0x3c4], dl
fld qword [0x9d39d8]
fstp qword [ebp - 0x52c]
fld qword [0x9d39d0]
fstp qword [ebp - 0x4fc]
fld qword [0x9d39c8]
fstp qword [ebp - 0x514]
fld qword [ebp - 0x52c]
fsub qword [ebp - 0x514]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x4fc]
fmul qword [ebp - 0x514]
fstp qword [ebp - 0x4fc]
fld qword [ebp - 0x52c]
fsub qword [ebp - 0x514]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x4fc]
fcomp qword [ebp - 0x52c]
fnstsw ax
test ah, 0x41
jne 0x49f354
fld qword [ebp - 0x514]
fmul qword [ebp - 0x4fc]
fstp qword [ebp - 0x514]
fld qword [ebp - 0x52c]
fmul qword [ebp - 0x514]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x4fc]
fsub qword [ebp - 0x52c]
fstp qword [ebp - 0x4fc]
movzx eax, byte [ebp - 0x3d7]
movzx ecx, byte [ebp - 0x3cd]
mov dl, byte [ebp + eax - 0x3c4]
mov byte [ebp + ecx - 0x3c4], dl
jmp 0x49f441
fld qword [ebp - 0x514]
fdiv qword [ebp - 0x52c]
fstp qword [ebp - 0x514]
fld qword [ebp - 0x52c]
fsub qword [ebp - 0x4fc]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x52c]
fdiv qword [ebp - 0x4fc]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x52c]
fsub qword [ebp - 0x514]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x52c]
fmul qword [ebp - 0x514]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x514]
fdiv qword [ebp - 0x4fc]
fstp qword [ebp - 0x514]
fld qword [ebp - 0x52c]
fcomp qword [ebp - 0x4fc]
fnstsw ax
test ah, 5
jp 0x49f40b
fld qword [ebp - 0x514]
fadd qword [ebp - 0x52c]
fstp qword [ebp - 0x514]
fld qword [ebp - 0x52c]
fmul qword [ebp - 0x4fc]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x52c]
fmul qword [ebp - 0x4fc]
fstp qword [ebp - 0x52c]
jmp 0x49f441
fld qword [ebp - 0x514]
fsub qword [ebp - 0x4fc]
fstp qword [ebp - 0x514]
fld qword [ebp - 0x52c]
fadd qword [ebp - 0x514]
fstp qword [ebp - 0x52c]
fld qword [ebp - 0x52c]
fsub qword [ebp - 0x514]
fstp qword [ebp - 0x52c]
movzx eax, byte [ebp - 0x3d7]
mov cl, byte [ebp - 0x4dd]
mov byte [ebp + eax - 0x3c4], cl
movzx edx, byte [ebp - 0x4dd]
movzx eax, byte [ebp + edx - 0x3c4]
movzx ecx, byte [ebp - 0x3c5]
add ecx, eax
mov byte [ebp - 0x3c5], cl
movzx edx, byte [ebp - 0x441]
movzx eax, byte [ebp - 0x2bd]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx eax, byte [ebp - 0x3d7]
movzx eax, byte [ebp + eax - 0x3c4]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c4]
xor edx, ecx
movzx eax, byte [ebp - 0x3cd]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx eax, byte [ebp - 0x2ad]
movzx eax, byte [ebp + eax - 0x3c4]
add ecx, eax
movzx eax, byte [ebp - 0x3c5]
movzx eax, byte [ebp + eax - 0x3c4]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c4]
movzx eax, byte [ebp + ecx - 0x3c4]
xor edx, eax
mov byte [ebp - 0x3cd], dl
mov cl, byte [ebp - 0x441]
mov byte [ebp - 0x2ad], cl
mov dl, byte [ebp - 0x3cd]
mov byte [ebp - 0x4cd], dl
cmp dword [ebp - 0x498], 0
jle 0x49f52a
mov eax, dword [ebp - 0x498]
mov cl, byte [ebp - 0x4cd]
mov byte [ebp + eax - 0x55], cl
jmp 0x49efcf
mov edx, dword [ebp - 0x494]
add edx, 1
mov dword [ebp - 0x494], edx
mov eax, dword [ebp - 0x498]
add eax, 1
mov dword [ebp - 0x498], eax
mov ecx, dword [ebp - 0x494]
add ecx, 1
mov dword [ebp - 0x494], ecx
mov edx, dword [ebp - 0x498]
shl edx, 1
mov dword [ebp - 0x3f8], edx
mov eax, dword [ebp - 0x2b8]
add eax, dword [ebp - 0x3f8]
movzx ecx, byte [eax]
mov dword [ebp - 0x4dc], ecx
mov dword [ebp - 0x440], 0x2e
mov edx, dword [ebp - 0x498]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x46c], eax
mov ecx, dword [ebp - 0x2b8]
add ecx, dword [ebp - 0x46c]
movzx edx, byte [ecx]
mov dword [ebp - 0x4ec], edx
mov dword [ebp - 0x4d8], 0x8c
mov eax, dword [ebp - 0x4dc]
sub eax, dword [ebp - 0x440]
mov dword [ebp - 0x4e8], eax
mov ecx, dword [ebp - 0x4ec]
sub ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x4e8]
shl edx, 4
mov dword [ebp - 0x4e4], edx
mov eax, dword [ebp - 0x410]
mov dword [ebp - 0x4d4], eax
mov ecx, dword [ebp - 0x4e4]
or ecx, dword [ebp - 0x4d4]
mov dword [ebp - 0x490], ecx
mov dl, byte [ebp - 0x490]
mov byte [ebp - 0x441], dl
movzx eax, byte [ebp - 0x2ad]
mov cl, byte [ebp + eax - 0x3c4]
mov byte [ebp - 0x4dd], cl
movzx edx, byte [ebp - 0x3d7]
movzx eax, byte [ebp + edx - 0x3c4]
movzx ecx, byte [ebp - 0x2bd]
add ecx, eax
mov byte [ebp - 0x2bd], cl
mov dl, byte [ebp - 0x3d7]
add dl, 1
mov byte [ebp - 0x3d7], dl
movzx eax, byte [ebp - 0x2bd]
movzx ecx, byte [ebp - 0x2ad]
mov dl, byte [ebp + eax - 0x3c4]
mov byte [ebp + ecx - 0x3c4], dl
movzx eax, byte [ebp - 0x3cd]
movzx ecx, byte [ebp - 0x2bd]
mov dl, byte [ebp + eax - 0x3c4]
mov byte [ebp + ecx - 0x3c4], dl
movzx eax, byte [ebp - 0x3d7]
movzx ecx, byte [ebp - 0x3cd]
mov dl, byte [ebp + eax - 0x3c4]
mov byte [ebp + ecx - 0x3c4], dl
movzx eax, byte [ebp - 0x3d7]
mov cl, byte [ebp - 0x4dd]
mov byte [ebp + eax - 0x3c4], cl
movzx edx, byte [ebp - 0x4dd]
movzx eax, byte [ebp + edx - 0x3c4]
movzx ecx, byte [ebp - 0x3c5]
add ecx, eax
mov byte [ebp - 0x3c5], cl
movzx edx, byte [ebp - 0x441]
movzx eax, byte [ebp - 0x2bd]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx eax, byte [ebp - 0x3d7]
movzx eax, byte [ebp + eax - 0x3c4]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c4]
xor edx, ecx
movzx eax, byte [ebp - 0x3cd]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx eax, byte [ebp - 0x2ad]
movzx eax, byte [ebp + eax - 0x3c4]
add ecx, eax
movzx eax, byte [ebp - 0x3c5]
movzx eax, byte [ebp + eax - 0x3c4]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c4]
movzx eax, byte [ebp + ecx - 0x3c4]
xor edx, eax
mov byte [ebp - 0x3cd], dl
mov cl, byte [ebp - 0x441]
mov byte [ebp - 0x2ad], cl
mov dl, byte [ebp - 0x3cd]
mov byte [ebp - 0x4cd], dl
cmp dword [ebp - 0x498], 0
jle 0x49f793
mov eax, dword [ebp - 0x498]
mov cl, byte [ebp - 0x4cd]
mov byte [ebp + eax - 0x55], cl
mov edx, dword [ebp - 0x498]
add edx, 1
mov dword [ebp - 0x498], edx
mov eax, dword [ebp - 0x494]
add eax, 1
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp - 0x498]
shl ecx, 1
mov dword [ebp - 0x3f8], ecx
mov edx, dword [ebp - 0x2b8]
add edx, dword [ebp - 0x3f8]
movzx eax, byte [edx]
mov dword [ebp - 0x4dc], eax
mov dword [ebp - 0x440], 0x2e
mov ecx, dword [ebp - 0x498]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x46c], edx
mov eax, dword [ebp - 0x2b8]
add eax, dword [ebp - 0x46c]
movzx ecx, byte [eax]
mov dword [ebp - 0x4ec], ecx
mov dword [ebp - 0x4d8], 0x8c
mov edx, dword [ebp - 0x4dc]
sub edx, dword [ebp - 0x440]
mov dword [ebp - 0x4e8], edx
mov eax, dword [ebp - 0x4ec]
sub eax, dword [ebp - 0x4d8]
mov dword [ebp - 0x410], eax
mov ecx, dword [ebp - 0x4e8]
shl ecx, 4
mov dword [ebp - 0x4e4], ecx
mov edx, dword [ebp - 0x410]
mov dword [ebp - 0x4d4], edx
mov eax, dword [ebp - 0x4e4]
or eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x490], eax
mov cl, byte [ebp - 0x490]
mov byte [ebp - 0x441], cl
movzx edx, byte [ebp - 0x2ad]
mov al, byte [ebp + edx - 0x3c4]
mov byte [ebp - 0x4dd], al
movzx ecx, byte [ebp - 0x3d7]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx eax, byte [ebp - 0x2bd]
add eax, edx
mov byte [ebp - 0x2bd], al
mov cl, byte [ebp - 0x3d7]
add cl, 1
mov byte [ebp - 0x3d7], cl
movzx edx, byte [ebp - 0x2bd]
movzx eax, byte [ebp - 0x2ad]
mov cl, byte [ebp + edx - 0x3c4]
mov byte [ebp + eax - 0x3c4], cl
fld dword [0x9d39c4]
fstp dword [ebp - 0x470]
fld dword [0x9d39c0]
fstp dword [ebp - 0x4b8]
fld dword [0x9d39bc]
fstp dword [ebp - 0x3fc]
fld dword [0x9d39b8]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x3fc]
fmul dword [ebp - 0x468]
fstp dword [ebp - 0x3fc]
fld dword [ebp - 0x470]
fmul dword [ebp - 0x468]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x4b8]
fsub dword [ebp - 0x468]
fstp dword [ebp - 0x4b8]
fld dword [ebp - 0x470]
fsub dword [ebp - 0x468]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x470]
fld dword [ebp - 0x468]
fcompp
fnstsw ax
test ah, 5
jp 0x49f9ba
fld dword [ebp - 0x468]
fsub dword [ebp - 0x4b8]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x468]
fadd dword [ebp - 0x4b8]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x4b8]
fadd dword [ebp - 0x468]
fstp dword [ebp - 0x4b8]
fld dword [ebp - 0x468]
fsub dword [ebp - 0x4b8]
fstp dword [ebp - 0x468]
movzx edx, byte [ebp - 0x3cd]
movzx eax, byte [ebp - 0x2bd]
mov cl, byte [ebp + edx - 0x3c4]
mov byte [ebp + eax - 0x3c4], cl
jmp 0x49fa02
fld dword [ebp - 0x468]
fdiv dword [ebp - 0x4b8]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x468]
fsub dword [ebp - 0x4b8]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x3fc]
fdiv dword [ebp - 0x470]
fstp dword [ebp - 0x3fc]
fld dword [ebp - 0x468]
fadd dword [ebp - 0x4b8]
fstp dword [ebp - 0x468]
movzx edx, byte [ebp - 0x3d7]
movzx eax, byte [ebp - 0x3cd]
mov cl, byte [ebp + edx - 0x3c4]
mov byte [ebp + eax - 0x3c4], cl
movzx edx, byte [ebp - 0x3d7]
mov al, byte [ebp - 0x4dd]
mov byte [ebp + edx - 0x3c4], al
fld qword [0x9d39b0]
fstp qword [ebp - 0x4b4]
fld qword [0x9d39a8]
fstp qword [ebp - 0x3f4]
fld qword [0x9d39a0]
fstp qword [ebp - 0x424]
fld qword [ebp - 0x3f4]
fsub qword [ebp - 0x424]
fstp qword [ebp - 0x3f4]
fld qword [ebp - 0x3f4]
fadd qword [ebp - 0x424]
fstp qword [ebp - 0x3f4]
fld qword [ebp - 0x3f4]
fsub qword [ebp - 0x424]
fstp qword [ebp - 0x3f4]
fld qword [ebp - 0x3f4]
fcomp qword [ebp - 0x4b4]
fnstsw ax
test ah, 0x41
jne 0x49fb92
fld qword [ebp - 0x4b4]
fmul qword [ebp - 0x424]
fstp qword [ebp - 0x4b4]
fld qword [ebp - 0x4b4]
fdiv qword [ebp - 0x424]
fstp qword [ebp - 0x4b4]
fld qword [ebp - 0x4b4]
fmul qword [ebp - 0x424]
fstp qword [ebp - 0x4b4]
fld qword [ebp - 0x424]
fsub qword [ebp - 0x4b4]
fstp qword [ebp - 0x424]
fld qword [ebp - 0x424]
fadd qword [ebp - 0x4b4]
fstp qword [ebp - 0x424]
fld qword [ebp - 0x3f4]
fsub qword [ebp - 0x424]
fstp qword [ebp - 0x3f4]
fld qword [ebp - 0x3f4]
fcomp qword [ebp - 0x424]
fnstsw ax
test ah, 5
jp 0x49fb5a
fld qword [ebp - 0x4b4]
fmul qword [ebp - 0x3f4]
fstp qword [ebp - 0x4b4]
fld qword [ebp - 0x424]
fdiv qword [ebp - 0x4b4]
fstp qword [ebp - 0x424]
fld qword [ebp - 0x4b4]
fmul qword [ebp - 0x3f4]
fstp qword [ebp - 0x4b4]
jmp 0x49fb90
fld qword [ebp - 0x3f4]
fadd qword [ebp - 0x4b4]
fstp qword [ebp - 0x3f4]
fld qword [ebp - 0x3f4]
fmul qword [ebp - 0x4b4]
fstp qword [ebp - 0x3f4]
fld qword [ebp - 0x424]
fsub qword [ebp - 0x3f4]
fstp qword [ebp - 0x424]
jmp 0x49fbe6
fld qword [ebp - 0x424]
fmul qword [ebp - 0x3f4]
fstp qword [ebp - 0x424]
fld qword [ebp - 0x424]
fmul qword [ebp - 0x3f4]
fstp qword [ebp - 0x424]
fld qword [ebp - 0x3f4]
fmul qword [ebp - 0x4b4]
fstp qword [ebp - 0x3f4]
movzx ecx, byte [ebp - 0x4dd]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx eax, byte [ebp - 0x3c5]
add eax, edx
mov byte [ebp - 0x3c5], al
movzx ecx, byte [ebp - 0x441]
movzx edx, byte [ebp - 0x2bd]
movzx eax, byte [ebp + edx - 0x3c4]
movzx edx, byte [ebp - 0x3d7]
movzx edx, byte [ebp + edx - 0x3c4]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x3c4]
xor ecx, eax
movzx edx, byte [ebp - 0x3cd]
movzx eax, byte [ebp + edx - 0x3c4]
movzx edx, byte [ebp - 0x2ad]
movzx edx, byte [ebp + edx - 0x3c4]
add eax, edx
movzx edx, byte [ebp - 0x3c5]
movzx edx, byte [ebp + edx - 0x3c4]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x3c4]
movzx edx, byte [ebp + eax - 0x3c4]
xor ecx, edx
mov byte [ebp - 0x3cd], cl
mov al, byte [ebp - 0x441]
mov byte [ebp - 0x2ad], al
mov cl, byte [ebp - 0x3cd]
mov byte [ebp - 0x4cd], cl
cmp dword [ebp - 0x498], 0
jle 0x49fc9b
mov edx, dword [ebp - 0x498]
mov al, byte [ebp - 0x4cd]
mov byte [ebp + edx - 0x55], al
mov ecx, dword [ebp - 0x494]
add ecx, 6
mov dword [ebp - 0x494], ecx
mov edx, dword [ebp - 0x498]
add edx, 1
mov dword [ebp - 0x538], edx
jmp 0x49fcca
mov eax, dword [ebp - 0x538]
add eax, 1
mov dword [ebp - 0x538], eax
mov ecx, dword [ebp - 0x538]
cmp ecx, dword [ebp - 0x494]
jge 0x49ff26
mov edx, dword [ebp - 0x498]
add edx, 1
mov dword [ebp - 0x498], edx
mov eax, dword [ebp - 0x498]
shl eax, 1
mov dword [ebp - 0x3f8], eax
mov ecx, dword [ebp - 0x2b8]
add ecx, dword [ebp - 0x3f8]
movzx edx, byte [ecx]
mov dword [ebp - 0x4dc], edx
mov dword [ebp - 0x440], 0x2e
mov eax, dword [ebp - 0x498]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x46c], ecx
mov edx, dword [ebp - 0x2b8]
add edx, dword [ebp - 0x46c]
movzx eax, byte [edx]
mov dword [ebp - 0x4ec], eax
mov dword [ebp - 0x4d8], 0x8c
mov ecx, dword [ebp - 0x4dc]
sub ecx, dword [ebp - 0x440]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4ec]
sub edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x410], edx
mov eax, dword [ebp - 0x4e8]
shl eax, 4
mov dword [ebp - 0x4e4], eax
mov ecx, dword [ebp - 0x410]
mov dword [ebp - 0x4d4], ecx
mov edx, dword [ebp - 0x4e4]
or edx, dword [ebp - 0x4d4]
mov dword [ebp - 0x490], edx
mov al, byte [ebp - 0x490]
mov byte [ebp - 0x441], al
movzx ecx, byte [ebp - 0x2ad]
mov dl, byte [ebp + ecx - 0x3c4]
mov byte [ebp - 0x4dd], dl
movzx eax, byte [ebp - 0x3d7]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx edx, byte [ebp - 0x2bd]
add edx, ecx
mov byte [ebp - 0x2bd], dl
mov al, byte [ebp - 0x3d7]
add al, 1
mov byte [ebp - 0x3d7], al
movzx ecx, byte [ebp - 0x2bd]
movzx edx, byte [ebp - 0x2ad]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3cd]
movzx edx, byte [ebp - 0x2bd]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3d7]
movzx edx, byte [ebp - 0x3cd]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3d7]
mov dl, byte [ebp - 0x4dd]
mov byte [ebp + ecx - 0x3c4], dl
movzx eax, byte [ebp - 0x4dd]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx edx, byte [ebp - 0x3c5]
add edx, ecx
mov byte [ebp - 0x3c5], dl
movzx eax, byte [ebp - 0x441]
movzx ecx, byte [ebp - 0x2bd]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx ecx, byte [ebp - 0x3d7]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c4]
xor eax, edx
movzx ecx, byte [ebp - 0x3cd]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
movzx ecx, byte [ebp - 0x3c5]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c4]
movzx ecx, byte [ebp + edx - 0x3c4]
xor eax, ecx
mov byte [ebp - 0x3cd], al
mov dl, byte [ebp - 0x441]
mov byte [ebp - 0x2ad], dl
mov al, byte [ebp - 0x3cd]
mov byte [ebp - 0x4cd], al
cmp dword [ebp - 0x498], 0
jle 0x49ff21
mov ecx, dword [ebp - 0x498]
mov dl, byte [ebp - 0x4cd]
mov byte [ebp + ecx - 0x55], dl
jmp 0x49fcbb
mov eax, dword [ebp - 0x494]
add eax, 1
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp - 0x498]
add ecx, 1
mov dword [ebp - 0x498], ecx
fld qword [0x9d3998]
fstp qword [ebp - 0x464]
fld qword [0x9d3990]
fstp qword [ebp - 0x4ac]
fld qword [0x9d3988]
fstp qword [ebp - 0x3ec]
fld qword [0x9d3980]
fstp qword [ebp - 0x41c]
fld qword [0x9d3978]
fstp qword [ebp - 0x45c]
fld qword [0x9d3970]
fstp qword [ebp - 0x4a4]
fld qword [0x9d3968]
fstp qword [ebp - 0x454]
fld qword [ebp - 0x4a4]
fmul qword [ebp - 0x454]
fstp qword [ebp - 0x4a4]
fld qword [ebp - 0x41c]
fmul qword [ebp - 0x454]
fstp qword [ebp - 0x41c]
fld qword [ebp - 0x3ec]
fsub qword [ebp - 0x454]
fstp qword [ebp - 0x3ec]
fld qword [ebp - 0x4ac]
fsub qword [ebp - 0x454]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x45c]
fsub qword [ebp - 0x454]
fstp qword [ebp - 0x45c]
fld qword [ebp - 0x4a4]
fadd qword [ebp - 0x454]
fstp qword [ebp - 0x4a4]
fld qword [ebp - 0x3ec]
fmul qword [ebp - 0x454]
fstp qword [ebp - 0x3ec]
fld qword [ebp - 0x41c]
fcomp qword [ebp - 0x454]
fnstsw ax
test ah, 0x41
jne 0x4a00bf
fld qword [ebp - 0x45c]
fadd qword [ebp - 0x4a4]
fstp qword [ebp - 0x45c]
fld qword [ebp - 0x45c]
fsub qword [ebp - 0x4a4]
fstp qword [ebp - 0x45c]
fld qword [ebp - 0x464]
fadd qword [ebp - 0x4ac]
fstp qword [ebp - 0x464]
fld qword [ebp - 0x464]
fmul qword [ebp - 0x4ac]
fstp qword [ebp - 0x464]
fld qword [ebp - 0x41c]
fadd qword [ebp - 0x45c]
fstp qword [ebp - 0x41c]
fld qword [ebp - 0x464]
fsub qword [ebp - 0x4ac]
fstp qword [ebp - 0x464]
fld qword [ebp - 0x4ac]
fmul qword [ebp - 0x3ec]
fstp qword [ebp - 0x4ac]
mov edx, dword [ebp - 0x494]
add edx, 1
mov dword [ebp - 0x494], edx
jmp 0x4a02d0
fld qword [ebp - 0x4a4]
fadd qword [ebp - 0x454]
fstp qword [ebp - 0x4a4]
fld qword [ebp - 0x4ac]
fadd qword [ebp - 0x3ec]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x45c]
fadd qword [ebp - 0x4a4]
fstp qword [ebp - 0x45c]
fld qword [ebp - 0x45c]
fadd qword [ebp - 0x4a4]
fstp qword [ebp - 0x45c]
fld qword [ebp - 0x4ac]
fadd qword [ebp - 0x3ec]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x4ac]
fadd qword [ebp - 0x3ec]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x4ac]
fsub qword [ebp - 0x3ec]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x454]
fmul qword [ebp - 0x464]
fstp qword [ebp - 0x454]
fld qword [ebp - 0x3ec]
fsub qword [ebp - 0x41c]
fstp qword [ebp - 0x3ec]
fld qword [ebp - 0x4ac]
fadd qword [ebp - 0x3ec]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x41c]
fmul qword [ebp - 0x45c]
fstp qword [ebp - 0x41c]
fld qword [ebp - 0x4ac]
fmul qword [ebp - 0x3ec]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x454]
fadd qword [ebp - 0x464]
fstp qword [ebp - 0x454]
fld qword [ebp - 0x3ec]
fadd qword [ebp - 0x41c]
fstp qword [ebp - 0x3ec]
fld qword [ebp - 0x454]
fcomp qword [ebp - 0x45c]
fnstsw ax
test ah, 0x41
jne 0x4a0252
fld qword [ebp - 0x45c]
fadd qword [ebp - 0x454]
fstp qword [ebp - 0x45c]
fld qword [ebp - 0x45c]
fmul qword [ebp - 0x454]
fstp qword [ebp - 0x45c]
fld qword [ebp - 0x464]
fmul qword [ebp - 0x3ec]
fstp qword [ebp - 0x464]
fld qword [ebp - 0x3ec]
fsub qword [ebp - 0x45c]
fstp qword [ebp - 0x3ec]
fld qword [ebp - 0x3ec]
fsub qword [ebp - 0x45c]
fstp qword [ebp - 0x3ec]
fld qword [ebp - 0x41c]
fdiv qword [ebp - 0x4a4]
fstp qword [ebp - 0x41c]
fld qword [ebp - 0x464]
fadd qword [ebp - 0x3ec]
fstp qword [ebp - 0x464]
jmp 0x4a02d0
fld qword [ebp - 0x4ac]
fdiv qword [ebp - 0x41c]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x4ac]
fsub qword [ebp - 0x41c]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x454]
fsub qword [ebp - 0x4ac]
fstp qword [ebp - 0x454]
fld qword [ebp - 0x45c]
fmul qword [ebp - 0x454]
fstp qword [ebp - 0x45c]
fld qword [ebp - 0x464]
fsub qword [ebp - 0x3ec]
fstp qword [ebp - 0x464]
fld qword [ebp - 0x4ac]
fadd qword [ebp - 0x41c]
fstp qword [ebp - 0x4ac]
fld qword [ebp - 0x464]
fmul qword [ebp - 0x3ec]
fstp qword [ebp - 0x464]
mov eax, dword [ebp - 0x498]
shl eax, 1
mov dword [ebp - 0x3f8], eax
mov ecx, dword [ebp - 0x2b8]
add ecx, dword [ebp - 0x3f8]
movzx edx, byte [ecx]
mov dword [ebp - 0x4dc], edx
mov dword [ebp - 0x440], 0x2e
mov eax, dword [ebp - 0x498]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x46c], ecx
mov edx, dword [ebp - 0x2b8]
add edx, dword [ebp - 0x46c]
movzx eax, byte [edx]
mov dword [ebp - 0x4ec], eax
mov dword [ebp - 0x4d8], 0x8c
mov ecx, dword [ebp - 0x4dc]
sub ecx, dword [ebp - 0x440]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4ec]
sub edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x410], edx
mov eax, dword [ebp - 0x4e8]
shl eax, 4
mov dword [ebp - 0x4e4], eax
mov ecx, dword [ebp - 0x410]
mov dword [ebp - 0x4d4], ecx
mov edx, dword [ebp - 0x4e4]
or edx, dword [ebp - 0x4d4]
mov dword [ebp - 0x490], edx
mov al, byte [ebp - 0x490]
mov byte [ebp - 0x441], al
movzx ecx, byte [ebp - 0x2ad]
mov dl, byte [ebp + ecx - 0x3c4]
mov byte [ebp - 0x4dd], dl
movzx eax, byte [ebp - 0x3d7]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx edx, byte [ebp - 0x2bd]
add edx, ecx
mov byte [ebp - 0x2bd], dl
mov al, byte [ebp - 0x3d7]
add al, 1
mov byte [ebp - 0x3d7], al
movzx ecx, byte [ebp - 0x2bd]
movzx edx, byte [ebp - 0x2ad]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3cd]
movzx edx, byte [ebp - 0x2bd]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3d7]
movzx edx, byte [ebp - 0x3cd]
mov al, byte [ebp + ecx - 0x3c4]
mov byte [ebp + edx - 0x3c4], al
movzx ecx, byte [ebp - 0x3d7]
mov dl, byte [ebp - 0x4dd]
mov byte [ebp + ecx - 0x3c4], dl
movzx eax, byte [ebp - 0x4dd]
movzx ecx, byte [ebp + eax - 0x3c4]
movzx edx, byte [ebp - 0x3c5]
add edx, ecx
mov byte [ebp - 0x3c5], dl
movzx eax, byte [ebp - 0x441]
movzx ecx, byte [ebp - 0x2bd]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx ecx, byte [ebp - 0x3d7]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c4]
xor eax, edx
movzx ecx, byte [ebp - 0x3cd]
movzx edx, byte [ebp + ecx - 0x3c4]
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
movzx ecx, byte [ebp - 0x3c5]
movzx ecx, byte [ebp + ecx - 0x3c4]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c4]
movzx ecx, byte [ebp + edx - 0x3c4]
xor eax, ecx
mov byte [ebp - 0x3cd], al
mov dl, byte [ebp - 0x441]
mov byte [ebp - 0x2ad], dl
mov al, byte [ebp - 0x3cd]
mov byte [ebp - 0x4cd], al
cmp dword [ebp - 0x498], 0
jle 0x4a0506
mov ecx, dword [ebp - 0x498]
mov dl, byte [ebp - 0x4cd]
mov byte [ebp + ecx - 0x55], dl
mov byte [ebp - 0x44], 0
jmp 0x4a053d
mov dword [ebp - 0x53c], 0
jmp 0x4a0527
mov eax, dword [ebp - 0x53c]
add eax, 1
mov dword [ebp - 0x53c], eax
cmp dword [ebp - 0x53c], 0x11
jge 0x4a053d
mov ecx, dword [ebp - 0x53c]
mov byte [ebp + ecx - 0x54], 0
jmp 0x4a0518
lea edx, [ebp - 0x54]
push edx
mov ecx, dword [0xa08a24]
call fcn.00451a00
mov dword [ebp - 0x2a8], eax
lea eax, [ebp - 0x30]
push eax
push 0xf01ff
mov ecx, dword [ebp - 0x28]
push ecx
call dword [ebp - 0x2a8]
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x1c]
call fcn.004e9280
mov dword [ebp - 4], 0
lea edx, [ebp - 0x264]
push edx
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x1c]
push ecx
mov ecx, dword [ebp - 0x8e8]
call fcn.004985e0
cmp dword [ebp - 0x2c], 0
je 0x4a29d2
mov dword [ebp - 0x574], 0
mov dword [ebp - 0x540], 0
fldz
fstp qword [ebp - 0x54c]
fldz
fstp qword [ebp - 0x57c]
fldz
fstp qword [ebp - 0x57c]
jmp 0x4a05de
fld qword [ebp - 0x57c]
fadd qword [0x9d0ca8]
fstp qword [ebp - 0x57c]
fld qword [0x9d3960]
fcomp qword [ebp - 0x57c]
fnstsw ax
test ah, 0x41
jne 0x4a0667
fld qword [0x9d3958]
fmul qword [ebp - 0x57c]
fmul qword [ebp - 0x57c]
fld qword [ebp - 0x57c]
fmul qword [ebp - 0x57c]
fsubp st(1)
fld qword [0x9d3950]
fmul qword [ebp - 0x57c]
fmul qword [ebp - 0x57c]
fadd qword [0x9d3948]
fdivp st(1)
fadd qword [ebp - 0x54c]
fstp qword [ebp - 0x54c]
fld qword [0x9d3940]
fcomp qword [ebp - 0x54c]
fnstsw ax
test ah, 5
jp 0x4a0662
fld qword [0x9d3938]
fmul qword [ebp - 0x57c]
fsubr qword [ebp - 0x54c]
fstp qword [ebp - 0x54c]
jmp 0x4a05cc
fldz
fcomp qword [ebp - 0x54c]
fnstsw ax
test ah, 0x41
jne 0x4a06bc
inc ebp
pop eax
dec ebx
imul esp, dword [ebp + 0x4c], 0x36
sub dword [eax], ebp
push ebx
jp 0x4a06bf
js 0x4a06c4
dec edi
jle 0x4a06aa
ja 0x4a06bc
pop esp
pop edx
push ebx
ja 0x4a070c
push ebp
xor dword [edi], esp
and dword [edx + 0x36], edi
xchg byte [edi - 0x5d7a5b6e], ah
mov ah, byte [eax - 0x50795571]
lea ebp, [eax - 0x56745375]
test dword [ebp - 0x5a735879], ebp
xchg ecx, eax
scasb al, byte es:[edi]
mov dword [edi - 0x5b775e75], esp
and dword [ebx + 0x1f0ce9], 0
cmpsd dword [esi], dword es:[edi]
mov word [ebp - 0x5876516f], fs
mov esp, dword [ecx - 0x5c7c5b78]
jmp 0x4a25c8
mov dword [ebp - 0x574], 0x4a0695
mov dword [ebp - 0x540], 0x4a0676
mov edx, dword [ebp - 0x574]
mov dword [ebp - 0x58c], edx
mov eax, dword [ebp - 0x540]
mov dword [ebp - 0x588], eax
mov byte [ebp - 0x6ad], 0x23
mov dword [ebp - 0x6a0], 0
jmp 0x4a070a
cli
invalid
dec edx
add bh, al
test eax, eax
cli
invalid
mov ecx, dword [ebp - 0x6a0]
add ecx, 1
mov dword [ebp - 0x6a0], ecx
cmp dword [ebp - 0x6a0], 0x100
jae 0x4a072b
pushal
stc
invalid
mov edx, dword [ebp - 0x6a0]
mov al, byte [ebp - 0x6a0]
mov byte [ebp + edx - 0x694], al
jmp 0x4a06fb
mov dword [ebp - 0x590], 0
mov byte [ebp - 0x6ae], 0
mov dword [ebp - 0x6a0], 0xff
jmp 0x4a0757
mov ecx, dword [ebp - 0x6a0]
sub ecx, 1
mov dword [ebp - 0x6a0], ecx
cmp dword [ebp - 0x6a0], 0
jbe 0x4a0a6b
mov dword [ebp - 0x6b8], 0
mov dword [ebp - 0x6c0], 1
mov edx, dword [ebp - 0x6c0]
cmp edx, dword [ebp - 0x6a0]
jae 0x4a0798
mov eax, dword [ebp - 0x6c0]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x6c0], ecx
jmp 0x4a0778
mov edx, dword [ebp - 0x590]
mov dword [ebp - 0x930], edx
cmp dword [ebp - 0x930], 3
ja case.default.0x4a07b7
mov eax, dword [ebp - 0x930]
jmp dword [eax*4 + 0x4a2a20]
movzx ecx, byte [ebp - 0x6ae]
movzx edx, byte [ebp + ecx - 0x694]
fld qword [ebp - 0x54c]
fnstcw word [ebp - 0x932]
movzx eax, word [ebp - 0x932]
or eax, 0xc00
mov dword [ebp - 0x938], eax
fldcw word [ebp - 0x938]
fistp qword [ebp - 0x940]
fldcw word [ebp - 0x932]
mov eax, dword [ebp - 0x940]
and eax, 0xff
add edx, eax
mov byte [ebp - 0x6ae], dl
jmp 0x4a0944
movzx ecx, byte [ebp - 0x6ae]
movzx edx, byte [ebp + ecx - 0x694]
fld qword [ebp - 0x54c]
fnstcw word [ebp - 0x942]
movzx eax, word [ebp - 0x942]
or eax, 0xc00
mov dword [ebp - 0x948], eax
fldcw word [ebp - 0x948]
fistp qword [ebp - 0x950]
fldcw word [ebp - 0x942]
mov eax, dword [ebp - 0x950]
shr eax, 8
and eax, 0xff
add edx, eax
mov byte [ebp - 0x6ae], dl
jmp 0x4a0944
movzx ecx, byte [ebp - 0x6ae]
movzx edx, byte [ebp + ecx - 0x694]
fld qword [ebp - 0x54c]
fnstcw word [ebp - 0x952]
movzx eax, word [ebp - 0x952]
or eax, 0xc00
mov dword [ebp - 0x958], eax
fldcw word [ebp - 0x958]
fistp qword [ebp - 0x960]
fldcw word [ebp - 0x952]
mov eax, dword [ebp - 0x960]
shr eax, 0x10
and eax, 0xff
add edx, eax
mov byte [ebp - 0x6ae], dl
jmp 0x4a0944
movzx ecx, byte [ebp - 0x6ae]
movzx edx, byte [ebp + ecx - 0x694]
fld qword [ebp - 0x54c]
fnstcw word [ebp - 0x962]
movzx eax, word [ebp - 0x962]
or eax, 0xc00
mov dword [ebp - 0x968], eax
fldcw word [ebp - 0x968]
fistp qword [ebp - 0x970]
fldcw word [ebp - 0x962]
mov eax, dword [ebp - 0x970]
shr eax, 0x18
and eax, 0xff
add edx, eax
mov byte [ebp - 0x6ae], dl
jmp 0x4a0944
movzx ecx, byte [ebp - 0x6ae]
movzx edx, byte [ebp + ecx - 0x694]
mov eax, dword [ebp - 0x588]
add eax, dword [ebp - 0x590]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0x6ae], dl
mov edx, dword [ebp - 0x590]
add edx, 1
mov dword [ebp - 0x590], edx
movzx eax, byte [ebp - 0x6ad]
cmp dword [ebp - 0x590], eax
jb 0x4a0982
mov dword [ebp - 0x590], 0
movzx ecx, byte [ebp - 0x6ad]
movzx edx, byte [ebp - 0x6ae]
add edx, ecx
mov byte [ebp - 0x6ae], dl
movzx eax, byte [ebp - 0x6ae]
and eax, dword [ebp - 0x6c0]
mov dword [ebp - 0x6bc], eax
mov ecx, dword [ebp - 0x6b8]
add ecx, 1
mov dword [ebp - 0x6b8], ecx
cmp dword [ebp - 0x6b8], 0xb
jbe 0x4a09c1
mov eax, dword [ebp - 0x6bc]
xor edx, edx
div dword [ebp - 0x6a0]
mov dword [ebp - 0x6bc], edx
mov edx, dword [ebp - 0x6bc]
cmp edx, dword [ebp - 0x6a0]
ja 0x4a0798
mov eax, dword [ebp - 0x6a0]
cmp eax, dword [ebp - 0x6bc]
je 0x4a0a66
mov ecx, dword [ebp - 0x6bc]
movzx edx, byte [ebp + ecx - 0x694]
mov eax, dword [ebp - 0x6a0]
movzx ecx, byte [ebp + eax - 0x694]
xor ecx, edx
mov edx, dword [ebp - 0x6a0]
mov byte [ebp + edx - 0x694], cl
mov eax, dword [ebp - 0x6a0]
movzx ecx, byte [ebp + eax - 0x694]
mov edx, dword [ebp - 0x6bc]
movzx eax, byte [ebp + edx - 0x694]
xor eax, ecx
mov ecx, dword [ebp - 0x6bc]
mov byte [ebp + ecx - 0x694], al
mov edx, dword [ebp - 0x6bc]
movzx eax, byte [ebp + edx - 0x694]
mov ecx, dword [ebp - 0x6a0]
movzx edx, byte [ebp + ecx - 0x694]
xor edx, eax
mov eax, dword [ebp - 0x6a0]
mov byte [ebp + eax - 0x694], dl
jmp 0x4a0748
mov cl, byte [ebp - 0x693]
mov byte [ebp - 0x6af], cl
mov dl, byte [ebp - 0x691]
mov byte [ebp - 0x591], dl
fld dword [0x9d3934]
fstp dword [ebp - 0x6b4]
fld dword [0x9d3930]
fstp dword [ebp - 0x698]
fld dword [0x9d392c]
fstp dword [ebp - 0x6ac]
fld dword [0x9d3928]
fstp dword [ebp - 0x580]
fld dword [ebp - 0x6ac]
fmul dword [ebp - 0x580]
fstp dword [ebp - 0x6ac]
fld dword [ebp - 0x698]
fsub dword [ebp - 0x580]
fstp dword [ebp - 0x698]
fld dword [ebp - 0x6b4]
fmul dword [ebp - 0x580]
fstp dword [ebp - 0x6b4]
fld dword [ebp - 0x698]
fadd dword [ebp - 0x580]
fstp dword [ebp - 0x698]
fld dword [ebp - 0x6b4]
fld dword [ebp - 0x580]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4a0b5a
fld dword [ebp - 0x580]
fdiv dword [ebp - 0x698]
fstp dword [ebp - 0x580]
fld dword [ebp - 0x698]
fdiv dword [ebp - 0x580]
fstp dword [ebp - 0x698]
fld dword [ebp - 0x698]
fdiv dword [ebp - 0x580]
fstp dword [ebp - 0x698]
fld dword [ebp - 0x6ac]
fdiv dword [ebp - 0x6b4]
fstp dword [ebp - 0x6ac]
jmp 0x4a0bae
fld dword [ebp - 0x6b4]
fsub dword [ebp - 0x6ac]
fstp dword [ebp - 0x6b4]
fld dword [ebp - 0x698]
fmul dword [ebp - 0x580]
fstp dword [ebp - 0x698]
fld dword [ebp - 0x6b4]
fadd dword [ebp - 0x6ac]
fstp dword [ebp - 0x6b4]
fld dword [ebp - 0x6b4]
fsub dword [ebp - 0x6ac]
fstp dword [ebp - 0x6b4]
mov al, byte [ebp - 0x68f]
mov byte [ebp - 0x699], al
mov cl, byte [ebp - 0x68d]
mov byte [ebp - 0x6a1], cl
movzx edx, byte [ebp - 0x6ae]
mov al, byte [ebp + edx - 0x694]
mov byte [ebp - 0x581], al
mov dword [ebp - 0x6a8], 0x22
cmp dword [ebp - 0x6a8], 2
jle 0x4a2592
mov ecx, dword [ebp - 0x6a8]
and ecx, 1
jne 0x4a2592
mov dword [ebp - 0x728], 0
mov dword [ebp - 0x724], 0
fld qword [0x9d3920]
fstp qword [ebp - 0x6e4]
fld qword [0x9d3918]
fstp qword [ebp - 0x70c]
fld qword [0x9d3910]
fstp qword [ebp - 0x734]
fld qword [ebp - 0x6e4]
fsub qword [ebp - 0x734]
fstp qword [ebp - 0x6e4]
fld qword [ebp - 0x70c]
fmul qword [ebp - 0x734]
fstp qword [ebp - 0x70c]
fld qword [ebp - 0x70c]
fsub qword [ebp - 0x734]
fstp qword [ebp - 0x70c]
fld qword [ebp - 0x70c]
fcomp qword [ebp - 0x734]
fnstsw ax
test ah, 0x41
jne 0x4a0cbf
fld qword [ebp - 0x734]
fmul qword [ebp - 0x70c]
fstp qword [ebp - 0x734]
fld qword [ebp - 0x70c]
fsub qword [ebp - 0x6e4]
fstp qword [ebp - 0x70c]
fld qword [ebp - 0x70c]
fmul qword [ebp - 0x6e4]
fstp qword [ebp - 0x70c]
mov edx, dword [ebp - 0x724]
add edx, 1
mov dword [ebp - 0x724], edx
jmp 0x4a0dac
fld qword [ebp - 0x70c]
fdiv qword [ebp - 0x6e4]
fstp qword [ebp - 0x70c]
fld qword [ebp - 0x734]
fdiv qword [ebp - 0x70c]
fstp qword [ebp - 0x734]
fld qword [ebp - 0x6e4]
fmul qword [ebp - 0x734]
fstp qword [ebp - 0x6e4]
fld qword [ebp - 0x6e4]
fmul qword [ebp - 0x734]
fstp qword [ebp - 0x6e4]
fld qword [ebp - 0x70c]
fdiv qword [ebp - 0x6e4]
fstp qword [ebp - 0x70c]
fld qword [ebp - 0x734]
fmul qword [ebp - 0x70c]
fstp qword [ebp - 0x734]
fld qword [ebp - 0x734]
fcomp qword [ebp - 0x6e4]
fnstsw ax
test ah, 0x41
jne 0x4a0d76
fld qword [ebp - 0x734]
fsub qword [ebp - 0x6e4]
fstp qword [ebp - 0x734]
fld qword [ebp - 0x734]
fmul qword [ebp - 0x6e4]
fstp qword [ebp - 0x734]
fld qword [ebp - 0x734]
fsub qword [ebp - 0x6e4]
fstp qword [ebp - 0x734]
jmp 0x4a0dac
fld qword [ebp - 0x6e4]
fmul qword [ebp - 0x734]
fstp qword [ebp - 0x6e4]
fld qword [ebp - 0x6e4]
fsub qword [ebp - 0x734]
fstp qword [ebp - 0x6e4]
fld qword [ebp - 0x734]
fmul qword [ebp - 0x70c]
fstp qword [ebp - 0x734]
mov dword [ebp - 0x6c4], 0
mov eax, dword [ebp - 0x728]
shl eax, 1
mov dword [ebp - 0x6c4], eax
mov dword [ebp - 0x750], 0
mov ecx, dword [ebp - 0x58c]
add ecx, dword [ebp - 0x6c4]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x750]
mov dword [ebp - 0x750], edx
mov dword [ebp - 0x6f8], 0
mov eax, dword [ebp - 0x6f8]
add eax, 0x83
mov dword [ebp - 0x6f8], eax
mov dword [ebp - 0x700], 0
mov ecx, dword [ebp - 0x728]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x700], edx
mov dword [ebp - 0x760], 0
mov eax, dword [ebp - 0x58c]
add eax, dword [ebp - 0x700]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x760]
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x74c], 0
mov edx, dword [ebp - 0x74c]
add edx, 0xa0
mov dword [ebp - 0x74c], edx
mov dword [ebp - 0x75c], 0
mov eax, dword [ebp - 0x750]
sub eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x75c]
mov dword [ebp - 0x75c], eax
mov dword [ebp - 0x6d8], 0
mov ecx, dword [ebp - 0x760]
sub ecx, dword [ebp - 0x74c]
add ecx, dword [ebp - 0x6d8]
mov dword [ebp - 0x6d8], ecx
mov dword [ebp - 0x758], 0
mov edx, dword [ebp - 0x75c]
shl edx, 4
mov dword [ebp - 0x758], edx
mov dword [ebp - 0x748], 0
mov eax, dword [ebp - 0x6d8]
mov dword [ebp - 0x748], eax
mov dword [ebp - 0x720], 0
mov ecx, dword [ebp - 0x758]
or ecx, dword [ebp - 0x748]
mov dword [ebp - 0x720], ecx
mov byte [ebp - 0x6f9], 0
mov dl, byte [ebp - 0x720]
mov byte [ebp - 0x6f9], dl
mov byte [ebp - 0x751], 0
movzx eax, byte [ebp - 0x581]
mov cl, byte [ebp + eax - 0x694]
mov byte [ebp - 0x751], cl
movzx edx, byte [ebp - 0x6af]
movzx eax, byte [ebp + edx - 0x694]
movzx ecx, byte [ebp - 0x591]
add ecx, eax
mov byte [ebp - 0x591], cl
mov dl, byte [ebp - 0x6af]
add dl, 1
mov byte [ebp - 0x6af], dl
movzx eax, byte [ebp - 0x591]
movzx ecx, byte [ebp - 0x581]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6a1]
movzx ecx, byte [ebp - 0x591]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6af]
movzx ecx, byte [ebp - 0x6a1]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6af]
mov cl, byte [ebp - 0x751]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x751]
movzx eax, byte [ebp + edx - 0x694]
movzx ecx, byte [ebp - 0x699]
add ecx, eax
mov byte [ebp - 0x699], cl
movzx edx, byte [ebp - 0x6f9]
movzx eax, byte [ebp - 0x591]
movzx ecx, byte [ebp + eax - 0x694]
movzx eax, byte [ebp - 0x6af]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x694]
xor edx, ecx
movzx eax, byte [ebp - 0x6a1]
movzx ecx, byte [ebp + eax - 0x694]
movzx eax, byte [ebp - 0x581]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
movzx eax, byte [ebp - 0x699]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp + ecx - 0x694]
xor edx, eax
mov byte [ebp - 0x6a1], dl
mov cl, byte [ebp - 0x6f9]
mov byte [ebp - 0x581], cl
mov dl, byte [ebp - 0x6a1]
mov byte [ebp - 0x741], dl
cmp dword [ebp - 0x728], 0
jle 0x4a108c
movsx ax, byte [ebp - 0x741]
mov ecx, dword [ebp - 0x728]
mov word [ebp + ecx*2 - 0x572], ax
mov edx, dword [ebp - 0x724]
add edx, 6
mov dword [ebp - 0x724], edx
mov eax, dword [ebp - 0x728]
add eax, 1
mov dword [ebp - 0x764], eax
jmp 0x4a10bb
mov ecx, dword [ebp - 0x764]
add ecx, 1
mov dword [ebp - 0x764], ecx
mov edx, dword [ebp - 0x764]
cmp edx, dword [ebp - 0x724]
jge 0x4a1699
fld qword [0x9d3908]
fstp qword [ebp - 0x774]
fld qword [0x9d3900]
fstp qword [ebp - 0x77c]
fld qword [0x9d38f8]
fstp qword [ebp - 0x784]
fld qword [0x9d38f0]
fstp qword [ebp - 0x794]
fld qword [0x9d38e8]
fstp qword [ebp - 0x76c]
fld qword [0x9d38e0]
fstp qword [ebp - 0x78c]
fld qword [0x9d38d8]
fstp qword [ebp - 0x79c]
fld qword [ebp - 0x78c]
fmul qword [ebp - 0x79c]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x774]
fmul qword [ebp - 0x79c]
fstp qword [ebp - 0x774]
fld qword [ebp - 0x794]
fadd qword [ebp - 0x79c]
fstp qword [ebp - 0x794]
fld qword [ebp - 0x76c]
fsub qword [ebp - 0x79c]
fstp qword [ebp - 0x76c]
fld qword [ebp - 0x76c]
fmul qword [ebp - 0x79c]
fstp qword [ebp - 0x76c]
fld qword [ebp - 0x77c]
fsub qword [ebp - 0x79c]
fstp qword [ebp - 0x77c]
fld qword [ebp - 0x77c]
fsub qword [ebp - 0x79c]
fstp qword [ebp - 0x77c]
fld qword [ebp - 0x774]
fcomp qword [ebp - 0x79c]
fnstsw ax
test ah, 5
jp 0x4a13cc
fld qword [ebp - 0x78c]
fadd qword [ebp - 0x774]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x76c]
fmul qword [ebp - 0x79c]
fstp qword [ebp - 0x76c]
fld qword [ebp - 0x79c]
fmul qword [ebp - 0x77c]
fstp qword [ebp - 0x79c]
fld qword [ebp - 0x794]
fdiv qword [ebp - 0x78c]
fstp qword [ebp - 0x794]
fld qword [ebp - 0x784]
fsub qword [ebp - 0x76c]
fstp qword [ebp - 0x784]
fld qword [ebp - 0x794]
fdiv qword [ebp - 0x78c]
fstp qword [ebp - 0x794]
fld qword [ebp - 0x794]
fsub qword [ebp - 0x78c]
fstp qword [ebp - 0x794]
fld qword [ebp - 0x78c]
fsub qword [ebp - 0x79c]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x79c]
fmul qword [ebp - 0x774]
fstp qword [ebp - 0x79c]
fld qword [ebp - 0x76c]
fsub qword [ebp - 0x78c]
fstp qword [ebp - 0x76c]
fld qword [ebp - 0x78c]
fdiv qword [ebp - 0x79c]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x77c]
fmul qword [ebp - 0x784]
fstp qword [ebp - 0x77c]
fld qword [ebp - 0x79c]
fadd qword [ebp - 0x774]
fstp qword [ebp - 0x79c]
fld qword [ebp - 0x784]
fadd qword [ebp - 0x794]
fstp qword [ebp - 0x784]
fld qword [ebp - 0x76c]
fcomp qword [ebp - 0x784]
fnstsw ax
test ah, 5
jp 0x4a1349
fld qword [ebp - 0x794]
fadd qword [ebp - 0x76c]
fstp qword [ebp - 0x794]
fld qword [ebp - 0x794]
fadd qword [ebp - 0x76c]
fstp qword [ebp - 0x794]
fld qword [ebp - 0x78c]
fsub qword [ebp - 0x79c]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x774]
fadd qword [ebp - 0x77c]
fstp qword [ebp - 0x774]
fld qword [ebp - 0x79c]
fadd qword [ebp - 0x774]
fstp qword [ebp - 0x79c]
fld qword [ebp - 0x774]
fmul qword [ebp - 0x77c]
fstp qword [ebp - 0x774]
fld qword [ebp - 0x79c]
fdiv qword [ebp - 0x774]
fstp qword [ebp - 0x79c]
jmp 0x4a13c7
fld qword [ebp - 0x76c]
fadd qword [ebp - 0x78c]
fstp qword [ebp - 0x76c]
fld qword [ebp - 0x76c]
fadd qword [ebp - 0x78c]
fstp qword [ebp - 0x76c]
fld qword [ebp - 0x78c]
fadd qword [ebp - 0x79c]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x78c]
fmul qword [ebp - 0x79c]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x79c]
fdiv qword [ebp - 0x774]
fstp qword [ebp - 0x79c]
fld qword [ebp - 0x784]
fadd qword [ebp - 0x794]
fstp qword [ebp - 0x784]
fld qword [ebp - 0x76c]
fadd qword [ebp - 0x78c]
fstp qword [ebp - 0x76c]
jmp 0x4a1459
fld qword [ebp - 0x784]
fsub qword [ebp - 0x76c]
fstp qword [ebp - 0x784]
fld qword [ebp - 0x794]
fadd qword [ebp - 0x78c]
fstp qword [ebp - 0x794]
fld qword [ebp - 0x794]
fsub qword [ebp - 0x78c]
fstp qword [ebp - 0x794]
fld qword [ebp - 0x76c]
fsub qword [ebp - 0x79c]
fstp qword [ebp - 0x76c]
fld qword [ebp - 0x78c]
fsub qword [ebp - 0x774]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x78c]
fmul qword [ebp - 0x774]
fstp qword [ebp - 0x78c]
fld qword [ebp - 0x774]
fmul qword [ebp - 0x784]
fstp qword [ebp - 0x774]
mov eax, dword [ebp - 0x728]
add eax, 1
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x728]
shl ecx, 1
mov dword [ebp - 0x6c4], ecx
mov edx, dword [ebp - 0x58c]
add edx, dword [ebp - 0x6c4]
movzx eax, byte [edx]
mov dword [ebp - 0x750], eax
mov dword [ebp - 0x6f8], 0x83
mov ecx, dword [ebp - 0x728]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x700], edx
mov eax, dword [ebp - 0x58c]
add eax, dword [ebp - 0x700]
movzx ecx, byte [eax]
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x74c], 0xa0
mov edx, dword [ebp - 0x750]
sub edx, dword [ebp - 0x6f8]
mov dword [ebp - 0x75c], edx
mov eax, dword [ebp - 0x760]
sub eax, dword [ebp - 0x74c]
mov dword [ebp - 0x6d8], eax
mov ecx, dword [ebp - 0x75c]
shl ecx, 4
mov dword [ebp - 0x758], ecx
mov edx, dword [ebp - 0x6d8]
mov dword [ebp - 0x748], edx
mov eax, dword [ebp - 0x758]
or eax, dword [ebp - 0x748]
mov dword [ebp - 0x720], eax
mov cl, byte [ebp - 0x720]
mov byte [ebp - 0x6f9], cl
movzx edx, byte [ebp - 0x581]
mov al, byte [ebp + edx - 0x694]
mov byte [ebp - 0x751], al
movzx ecx, byte [ebp - 0x6af]
movzx edx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp - 0x591]
add eax, edx
mov byte [ebp - 0x591], al
mov cl, byte [ebp - 0x6af]
add cl, 1
mov byte [ebp - 0x6af], cl
movzx edx, byte [ebp - 0x591]
movzx eax, byte [ebp - 0x581]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6a1]
movzx eax, byte [ebp - 0x591]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6af]
movzx eax, byte [ebp - 0x6a1]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6af]
mov al, byte [ebp - 0x751]
mov byte [ebp + edx - 0x694], al
movzx ecx, byte [ebp - 0x751]
movzx edx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp - 0x699]
add eax, edx
mov byte [ebp - 0x699], al
movzx ecx, byte [ebp - 0x6f9]
movzx edx, byte [ebp - 0x591]
movzx eax, byte [ebp + edx - 0x694]
movzx edx, byte [ebp - 0x6af]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x694]
xor ecx, eax
movzx edx, byte [ebp - 0x6a1]
movzx eax, byte [ebp + edx - 0x694]
movzx edx, byte [ebp - 0x581]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
movzx edx, byte [ebp - 0x699]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x694]
movzx edx, byte [ebp + eax - 0x694]
xor ecx, edx
mov byte [ebp - 0x6a1], cl
mov al, byte [ebp - 0x6f9]
mov byte [ebp - 0x581], al
mov cl, byte [ebp - 0x6a1]
mov byte [ebp - 0x741], cl
cmp dword [ebp - 0x728], 0
jle 0x4a1694
movsx dx, byte [ebp - 0x741]
mov eax, dword [ebp - 0x728]
mov word [ebp + eax*2 - 0x572], dx
jmp 0x4a10ac
mov ecx, dword [ebp - 0x724]
add ecx, 1
mov dword [ebp - 0x724], ecx
mov edx, dword [ebp - 0x728]
add edx, 1
mov dword [ebp - 0x728], edx
mov eax, dword [ebp - 0x724]
add eax, 1
mov dword [ebp - 0x724], eax
mov ecx, dword [ebp - 0x728]
shl ecx, 1
mov dword [ebp - 0x6c4], ecx
mov edx, dword [ebp - 0x58c]
add edx, dword [ebp - 0x6c4]
movzx eax, byte [edx]
mov dword [ebp - 0x750], eax
mov dword [ebp - 0x6f8], 0x83
mov ecx, dword [ebp - 0x728]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x700], edx
mov eax, dword [ebp - 0x58c]
add eax, dword [ebp - 0x700]
movzx ecx, byte [eax]
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x74c], 0xa0
mov edx, dword [ebp - 0x750]
sub edx, dword [ebp - 0x6f8]
mov dword [ebp - 0x75c], edx
mov eax, dword [ebp - 0x760]
sub eax, dword [ebp - 0x74c]
mov dword [ebp - 0x6d8], eax
mov ecx, dword [ebp - 0x75c]
shl ecx, 4
mov dword [ebp - 0x758], ecx
mov edx, dword [ebp - 0x6d8]
mov dword [ebp - 0x748], edx
mov eax, dword [ebp - 0x758]
or eax, dword [ebp - 0x748]
mov dword [ebp - 0x720], eax
mov cl, byte [ebp - 0x720]
mov byte [ebp - 0x6f9], cl
movzx edx, byte [ebp - 0x581]
mov al, byte [ebp + edx - 0x694]
mov byte [ebp - 0x751], al
movzx ecx, byte [ebp - 0x6af]
movzx edx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp - 0x591]
add eax, edx
mov byte [ebp - 0x591], al
mov cl, byte [ebp - 0x6af]
add cl, 1
mov byte [ebp - 0x6af], cl
movzx edx, byte [ebp - 0x591]
movzx eax, byte [ebp - 0x581]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6a1]
movzx eax, byte [ebp - 0x591]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6af]
movzx eax, byte [ebp - 0x6a1]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6af]
mov al, byte [ebp - 0x751]
mov byte [ebp + edx - 0x694], al
movzx ecx, byte [ebp - 0x751]
movzx edx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp - 0x699]
add eax, edx
mov byte [ebp - 0x699], al
movzx ecx, byte [ebp - 0x6f9]
movzx edx, byte [ebp - 0x591]
movzx eax, byte [ebp + edx - 0x694]
movzx edx, byte [ebp - 0x6af]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x694]
xor ecx, eax
movzx edx, byte [ebp - 0x6a1]
movzx eax, byte [ebp + edx - 0x694]
movzx edx, byte [ebp - 0x581]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
movzx edx, byte [ebp - 0x699]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x694]
movzx edx, byte [ebp + eax - 0x694]
xor ecx, edx
mov byte [ebp - 0x6a1], cl
mov al, byte [ebp - 0x6f9]
mov byte [ebp - 0x581], al
mov cl, byte [ebp - 0x6a1]
mov byte [ebp - 0x741], cl
cmp dword [ebp - 0x728], 0
jle 0x4a1901
movsx dx, byte [ebp - 0x741]
mov eax, dword [ebp - 0x728]
mov word [ebp + eax*2 - 0x572], dx
mov ecx, dword [ebp - 0x728]
add ecx, 1
mov dword [ebp - 0x728], ecx
mov edx, dword [ebp - 0x724]
add edx, 1
mov dword [ebp - 0x724], edx
mov eax, dword [ebp - 0x728]
shl eax, 1
mov dword [ebp - 0x6c4], eax
mov ecx, dword [ebp - 0x58c]
add ecx, dword [ebp - 0x6c4]
movzx edx, byte [ecx]
mov dword [ebp - 0x750], edx
mov dword [ebp - 0x6f8], 0x83
mov eax, dword [ebp - 0x728]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x700], ecx
mov edx, dword [ebp - 0x58c]
add edx, dword [ebp - 0x700]
movzx eax, byte [edx]
mov dword [ebp - 0x760], eax
mov dword [ebp - 0x74c], 0xa0
mov ecx, dword [ebp - 0x750]
sub ecx, dword [ebp - 0x6f8]
mov dword [ebp - 0x75c], ecx
mov edx, dword [ebp - 0x760]
sub edx, dword [ebp - 0x74c]
mov dword [ebp - 0x6d8], edx
mov eax, dword [ebp - 0x75c]
shl eax, 4
mov dword [ebp - 0x758], eax
mov ecx, dword [ebp - 0x6d8]
mov dword [ebp - 0x748], ecx
mov edx, dword [ebp - 0x758]
or edx, dword [ebp - 0x748]
mov dword [ebp - 0x720], edx
mov al, byte [ebp - 0x720]
mov byte [ebp - 0x6f9], al
fld qword [0x9d38d0]
fstp qword [ebp - 0x6d4]
fld qword [0x9d38c8]
fstp qword [ebp - 0x6f4]
fld qword [0x9d38c0]
fstp qword [ebp - 0x71c]
fld qword [ebp - 0x6f4]
fmul qword [ebp - 0x71c]
fstp qword [ebp - 0x6f4]
fld qword [ebp - 0x6d4]
fmul qword [ebp - 0x71c]
fstp qword [ebp - 0x6d4]
fld qword [ebp - 0x6d4]
fadd qword [ebp - 0x71c]
fstp qword [ebp - 0x6d4]
fld qword [ebp - 0x6d4]
fcomp qword [ebp - 0x71c]
fnstsw ax
test ah, 5
jp 0x4a1a7d
fld qword [ebp - 0x71c]
fdiv qword [ebp - 0x6d4]
fstp qword [ebp - 0x71c]
fld qword [ebp - 0x6f4]
fsub qword [ebp - 0x71c]
fstp qword [ebp - 0x6f4]
fld qword [ebp - 0x71c]
fdiv qword [ebp - 0x6d4]
fstp qword [ebp - 0x71c]
jmp 0x4a1ac7
fld qword [ebp - 0x71c]
fmul qword [ebp - 0x6d4]
fstp qword [ebp - 0x71c]
fld qword [ebp - 0x71c]
fsub qword [ebp - 0x6d4]
fstp qword [ebp - 0x71c]
fld qword [ebp - 0x6f4]
fsub qword [ebp - 0x71c]
fstp qword [ebp - 0x6f4]
movzx ecx, byte [ebp - 0x581]
mov dl, byte [ebp + ecx - 0x694]
mov byte [ebp - 0x751], dl
movzx eax, byte [ebp - 0x6af]
movzx ecx, byte [ebp + eax - 0x694]
movzx edx, byte [ebp - 0x591]
add edx, ecx
mov byte [ebp - 0x591], dl
mov al, byte [ebp - 0x6af]
add al, 1
mov byte [ebp - 0x6af], al
movzx ecx, byte [ebp - 0x591]
movzx edx, byte [ebp - 0x581]
mov al, byte [ebp + ecx - 0x694]
mov byte [ebp + edx - 0x694], al
movzx ecx, byte [ebp - 0x6a1]
movzx edx, byte [ebp - 0x591]
mov al, byte [ebp + ecx - 0x694]
mov byte [ebp + edx - 0x694], al
fld dword [0x9d38b8]
fstp dword [ebp - 0x740]
fld dword [0x9d38b4]
fstp dword [ebp - 0x6cc]
fld dword [0x9d38b0]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x740]
fsub dword [ebp - 0x6e8]
fstp dword [ebp - 0x740]
fld dword [ebp - 0x6cc]
fmul dword [ebp - 0x6e8]
fstp dword [ebp - 0x6cc]
fld dword [ebp - 0x740]
fmul dword [ebp - 0x6e8]
fstp dword [ebp - 0x740]
fld dword [ebp - 0x740]
fld dword [ebp - 0x6e8]
fcompp
fnstsw ax
test ah, 5
jp 0x4a1bee
fld dword [ebp - 0x6cc]
fsub dword [ebp - 0x6e8]
fstp dword [ebp - 0x6cc]
fld dword [ebp - 0x6cc]
fmul dword [ebp - 0x6e8]
fstp dword [ebp - 0x6cc]
fld dword [ebp - 0x740]
fmul dword [ebp - 0x6cc]
fstp dword [ebp - 0x740]
movzx ecx, byte [ebp - 0x6af]
movzx edx, byte [ebp - 0x6a1]
mov al, byte [ebp + ecx - 0x694]
mov byte [ebp + edx - 0x694], al
jmp 0x4a1c24
fld dword [ebp - 0x740]
fmul dword [ebp - 0x6cc]
fstp dword [ebp - 0x740]
fld dword [ebp - 0x6e8]
fsub dword [ebp - 0x740]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x740]
fmul dword [ebp - 0x6cc]
fstp dword [ebp - 0x740]
movzx ecx, byte [ebp - 0x6af]
mov dl, byte [ebp - 0x751]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x751]
movzx ecx, byte [ebp + eax - 0x694]
movzx edx, byte [ebp - 0x699]
add edx, ecx
mov byte [ebp - 0x699], dl
movzx eax, byte [ebp - 0x6f9]
movzx ecx, byte [ebp - 0x591]
movzx edx, byte [ebp + ecx - 0x694]
movzx ecx, byte [ebp - 0x6af]
movzx ecx, byte [ebp + ecx - 0x694]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x694]
xor eax, edx
movzx ecx, byte [ebp - 0x6a1]
movzx edx, byte [ebp + ecx - 0x694]
movzx ecx, byte [ebp - 0x581]
movzx ecx, byte [ebp + ecx - 0x694]
add edx, ecx
movzx ecx, byte [ebp - 0x699]
movzx ecx, byte [ebp + ecx - 0x694]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x694]
movzx ecx, byte [ebp + edx - 0x694]
xor eax, ecx
mov byte [ebp - 0x6a1], al
mov dl, byte [ebp - 0x6f9]
mov byte [ebp - 0x581], dl
mov al, byte [ebp - 0x6a1]
mov byte [ebp - 0x741], al
cmp dword [ebp - 0x728], 0
jle 0x4a1d13
movsx cx, byte [ebp - 0x741]
mov edx, dword [ebp - 0x728]
mov word [ebp + edx*2 - 0x572], cx
mov eax, dword [ebp - 0x724]
add eax, 6
mov dword [ebp - 0x724], eax
mov ecx, dword [ebp - 0x728]
add ecx, 1
mov dword [ebp - 0x7a0], ecx
jmp 0x4a1d42
mov edx, dword [ebp - 0x7a0]
add edx, 1
mov dword [ebp - 0x7a0], edx
mov eax, dword [ebp - 0x7a0]
cmp eax, dword [ebp - 0x724]
jge 0x4a1fa5
mov ecx, dword [ebp - 0x728]
add ecx, 1
mov dword [ebp - 0x728], ecx
mov edx, dword [ebp - 0x728]
shl edx, 1
mov dword [ebp - 0x6c4], edx
mov eax, dword [ebp - 0x58c]
add eax, dword [ebp - 0x6c4]
movzx ecx, byte [eax]
mov dword [ebp - 0x750], ecx
mov dword [ebp - 0x6f8], 0x83
mov edx, dword [ebp - 0x728]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x700], eax
mov ecx, dword [ebp - 0x58c]
add ecx, dword [ebp - 0x700]
movzx edx, byte [ecx]
mov dword [ebp - 0x760], edx
mov dword [ebp - 0x74c], 0xa0
mov eax, dword [ebp - 0x750]
sub eax, dword [ebp - 0x6f8]
mov dword [ebp - 0x75c], eax
mov ecx, dword [ebp - 0x760]
sub ecx, dword [ebp - 0x74c]
mov dword [ebp - 0x6d8], ecx
mov edx, dword [ebp - 0x75c]
shl edx, 4
mov dword [ebp - 0x758], edx
mov eax, dword [ebp - 0x6d8]
mov dword [ebp - 0x748], eax
mov ecx, dword [ebp - 0x758]
or ecx, dword [ebp - 0x748]
mov dword [ebp - 0x720], ecx
mov dl, byte [ebp - 0x720]
mov byte [ebp - 0x6f9], dl
movzx eax, byte [ebp - 0x581]
mov cl, byte [ebp + eax - 0x694]
mov byte [ebp - 0x751], cl
movzx edx, byte [ebp - 0x6af]
movzx eax, byte [ebp + edx - 0x694]
movzx ecx, byte [ebp - 0x591]
add ecx, eax
mov byte [ebp - 0x591], cl
mov dl, byte [ebp - 0x6af]
add dl, 1
mov byte [ebp - 0x6af], dl
movzx eax, byte [ebp - 0x591]
movzx ecx, byte [ebp - 0x581]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6a1]
movzx ecx, byte [ebp - 0x591]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6af]
movzx ecx, byte [ebp - 0x6a1]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6af]
mov cl, byte [ebp - 0x751]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x751]
movzx eax, byte [ebp + edx - 0x694]
movzx ecx, byte [ebp - 0x699]
add ecx, eax
mov byte [ebp - 0x699], cl
movzx edx, byte [ebp - 0x6f9]
movzx eax, byte [ebp - 0x591]
movzx ecx, byte [ebp + eax - 0x694]
movzx eax, byte [ebp - 0x6af]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x694]
xor edx, ecx
movzx eax, byte [ebp - 0x6a1]
movzx ecx, byte [ebp + eax - 0x694]
movzx eax, byte [ebp - 0x581]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
movzx eax, byte [ebp - 0x699]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp + ecx - 0x694]
xor edx, eax
mov byte [ebp - 0x6a1], dl
mov cl, byte [ebp - 0x6f9]
mov byte [ebp - 0x581], cl
mov dl, byte [ebp - 0x6a1]
mov byte [ebp - 0x741], dl
cmp dword [ebp - 0x728], 0
jle 0x4a1fa0
movsx ax, byte [ebp - 0x741]
mov ecx, dword [ebp - 0x728]
mov word [ebp + ecx*2 - 0x572], ax
jmp 0x4a1d33
mov edx, dword [ebp - 0x724]
add edx, 1
mov dword [ebp - 0x724], edx
mov eax, dword [ebp - 0x728]
add eax, 1
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x724]
add ecx, 1
mov dword [ebp - 0x724], ecx
mov edx, dword [ebp - 0x728]
shl edx, 1
mov dword [ebp - 0x6c4], edx
mov eax, dword [ebp - 0x58c]
add eax, dword [ebp - 0x6c4]
movzx ecx, byte [eax]
mov dword [ebp - 0x750], ecx
fld dword [0x9d38ac]
fstp dword [ebp - 0x710]
fld dword [0x9d38a8]
fstp dword [ebp - 0x73c]
fld dword [0x9d38a4]
fstp dword [ebp - 0x6c8]
fld dword [0x9d38a0]
fstp dword [ebp - 0x738]
fld dword [ebp - 0x710]
fadd dword [ebp - 0x738]
fstp dword [ebp - 0x710]
fld dword [ebp - 0x6c8]
fsub dword [ebp - 0x738]
fstp dword [ebp - 0x6c8]
fld dword [ebp - 0x73c]
fadd dword [ebp - 0x738]
fstp dword [ebp - 0x73c]
fld dword [ebp - 0x710]
fmul dword [ebp - 0x738]
fstp dword [ebp - 0x710]
fld dword [ebp - 0x6c8]
fld dword [ebp - 0x710]
fcompp
fnstsw ax
test ah, 5
jp 0x4a20cc
fld dword [ebp - 0x738]
fdiv dword [ebp - 0x710]
fstp dword [ebp - 0x738]
fld dword [ebp - 0x738]
fsub dword [ebp - 0x710]
fstp dword [ebp - 0x738]
fld dword [ebp - 0x738]
fdiv dword [ebp - 0x710]
fstp dword [ebp - 0x738]
fld dword [ebp - 0x73c]
fadd dword [ebp - 0x6c8]
fstp dword [ebp - 0x73c]
jmp 0x4a211e
fld dword [ebp - 0x6c8]
fsub dword [ebp - 0x738]
fstp dword [ebp - 0x6c8]
fld dword [ebp - 0x73c]
fmul dword [ebp - 0x6c8]
fstp dword [ebp - 0x73c]
fld dword [ebp - 0x6c8]
fadd dword [ebp - 0x738]
fstp dword [ebp - 0x6c8]
fld dword [ebp - 0x710]
fmul dword [ebp - 0x73c]
fstp dword [ebp - 0x710]
mov dword [ebp - 0x6f8], 0x83
mov edx, dword [ebp - 0x728]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x700], eax
mov ecx, dword [ebp - 0x58c]
add ecx, dword [ebp - 0x700]
movzx edx, byte [ecx]
mov dword [ebp - 0x760], edx
mov dword [ebp - 0x74c], 0xa0
mov eax, dword [ebp - 0x750]
sub eax, dword [ebp - 0x6f8]
mov dword [ebp - 0x75c], eax
mov ecx, dword [ebp - 0x760]
sub ecx, dword [ebp - 0x74c]
mov dword [ebp - 0x6d8], ecx
mov edx, dword [ebp - 0x75c]
shl edx, 4
mov dword [ebp - 0x758], edx
mov eax, dword [ebp - 0x6d8]
mov dword [ebp - 0x748], eax
mov ecx, dword [ebp - 0x758]
or ecx, dword [ebp - 0x748]
mov dword [ebp - 0x720], ecx
mov dl, byte [ebp - 0x720]
mov byte [ebp - 0x6f9], dl
movzx eax, byte [ebp - 0x581]
mov cl, byte [ebp + eax - 0x694]
mov byte [ebp - 0x751], cl
movzx edx, byte [ebp - 0x6af]
movzx eax, byte [ebp + edx - 0x694]
movzx ecx, byte [ebp - 0x591]
add ecx, eax
mov byte [ebp - 0x591], cl
mov dl, byte [ebp - 0x6af]
add dl, 1
mov byte [ebp - 0x6af], dl
movzx eax, byte [ebp - 0x591]
movzx ecx, byte [ebp - 0x581]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6a1]
movzx ecx, byte [ebp - 0x591]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6af]
movzx ecx, byte [ebp - 0x6a1]
mov dl, byte [ebp + eax - 0x694]
mov byte [ebp + ecx - 0x694], dl
movzx eax, byte [ebp - 0x6af]
mov cl, byte [ebp - 0x751]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x751]
movzx eax, byte [ebp + edx - 0x694]
movzx ecx, byte [ebp - 0x699]
add ecx, eax
mov byte [ebp - 0x699], cl
movzx edx, byte [ebp - 0x6f9]
movzx eax, byte [ebp - 0x591]
movzx ecx, byte [ebp + eax - 0x694]
movzx eax, byte [ebp - 0x6af]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x694]
xor edx, ecx
movzx eax, byte [ebp - 0x6a1]
movzx ecx, byte [ebp + eax - 0x694]
movzx eax, byte [ebp - 0x581]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
movzx eax, byte [ebp - 0x699]
movzx eax, byte [ebp + eax - 0x694]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp + ecx - 0x694]
xor edx, eax
mov byte [ebp - 0x6a1], dl
mov cl, byte [ebp - 0x6f9]
mov byte [ebp - 0x581], cl
mov dl, byte [ebp - 0x6a1]
mov byte [ebp - 0x741], dl
cmp dword [ebp - 0x728], 0
jle 0x4a232e
movsx ax, byte [ebp - 0x741]
mov ecx, dword [ebp - 0x728]
mov word [ebp + ecx*2 - 0x572], ax
mov edx, dword [ebp - 0x728]
add edx, 1
mov dword [ebp - 0x728], edx
mov eax, dword [ebp - 0x724]
add eax, 1
mov dword [ebp - 0x724], eax
mov ecx, dword [ebp - 0x728]
shl ecx, 1
mov dword [ebp - 0x6c4], ecx
mov edx, dword [ebp - 0x58c]
add edx, dword [ebp - 0x6c4]
movzx eax, byte [edx]
mov dword [ebp - 0x750], eax
mov dword [ebp - 0x6f8], 0x83
mov ecx, dword [ebp - 0x728]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x700], edx
mov eax, dword [ebp - 0x58c]
add eax, dword [ebp - 0x700]
movzx ecx, byte [eax]
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x74c], 0xa0
mov edx, dword [ebp - 0x750]
sub edx, dword [ebp - 0x6f8]
mov dword [ebp - 0x75c], edx
mov eax, dword [ebp - 0x760]
sub eax, dword [ebp - 0x74c]
mov dword [ebp - 0x6d8], eax
mov ecx, dword [ebp - 0x75c]
shl ecx, 4
mov dword [ebp - 0x758], ecx
mov edx, dword [ebp - 0x6d8]
mov dword [ebp - 0x748], edx
mov eax, dword [ebp - 0x758]
or eax, dword [ebp - 0x748]
mov dword [ebp - 0x720], eax
mov cl, byte [ebp - 0x720]
mov byte [ebp - 0x6f9], cl
movzx edx, byte [ebp - 0x581]
mov al, byte [ebp + edx - 0x694]
mov byte [ebp - 0x751], al
movzx ecx, byte [ebp - 0x6af]
movzx edx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp - 0x591]
add eax, edx
mov byte [ebp - 0x591], al
mov cl, byte [ebp - 0x6af]
add cl, 1
mov byte [ebp - 0x6af], cl
movzx edx, byte [ebp - 0x591]
movzx eax, byte [ebp - 0x581]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6a1]
movzx eax, byte [ebp - 0x591]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6af]
movzx eax, byte [ebp - 0x6a1]
mov cl, byte [ebp + edx - 0x694]
mov byte [ebp + eax - 0x694], cl
movzx edx, byte [ebp - 0x6af]
mov al, byte [ebp - 0x751]
mov byte [ebp + edx - 0x694], al
movzx ecx, byte [ebp - 0x751]
movzx edx, byte [ebp + ecx - 0x694]
movzx eax, byte [ebp - 0x699]
add eax, edx
mov byte [ebp - 0x699], al
movzx ecx, byte [ebp - 0x6f9]
movzx edx, byte [ebp - 0x591]
movzx eax, byte [ebp + edx - 0x694]
movzx edx, byte [ebp - 0x6af]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x694]
xor ecx, eax
movzx edx, byte [ebp - 0x6a1]
movzx eax, byte [ebp + edx - 0x694]
movzx edx, byte [ebp - 0x581]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
movzx edx, byte [ebp - 0x699]
movzx edx, byte [ebp + edx - 0x694]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x694]
movzx edx, byte [ebp + eax - 0x694]
xor ecx, edx
mov byte [ebp - 0x6a1], cl
mov al, byte [ebp - 0x6f9]
mov byte [ebp - 0x581], al
mov cl, byte [ebp - 0x6a1]
mov byte [ebp - 0x741], cl
cmp dword [ebp - 0x728], 0
jle 0x4a2587
movsx dx, byte [ebp - 0x741]
mov eax, dword [ebp - 0x728]
mov word [ebp + eax*2 - 0x572], dx
xor ecx, ecx
mov word [ebp - 0x550], cx
jmp 0x4a25c8
mov dword [ebp - 0x7a4], 0
jmp 0x4a25ad
mov edx, dword [ebp - 0x7a4]
add edx, 1
mov dword [ebp - 0x7a4], edx
cmp dword [ebp - 0x7a4], 0x11
jge 0x4a25c8
xor eax, eax
mov ecx, dword [ebp - 0x7a4]
mov word [ebp + ecx*2 - 0x570], ax
jmp 0x4a259e
push 1
lea edx, [ebp - 0x570]
push edx
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x8e8]
call fcn.0048b720
mov dword [ebp - 0x298], eax
lea ecx, [ebp - 0x2a0]
push ecx
push 0
mov edx, dword [ebp - 0x2ac]
push edx
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x8e8]
mov edx, dword [ecx + 0x10]
call edx
test eax, eax
je 0x4a295f
mov eax, dword [ebp - 0x2a0]
shr eax, 2
mov dword [ebp - 0x7a8], eax
xor ecx, ecx
mov eax, dword [ebp - 0x7a8]
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.009668a7
add esp, 4
mov dword [ebp - 0x830], eax
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x2ac], eax
lea ecx, [ebp - 0x2a0]
push ecx
mov edx, dword [ebp - 0x7a8]
shl edx, 2
push edx
mov eax, dword [ebp - 0x2ac]
push eax
mov ecx, dword [ebp - 0x28]
push ecx
mov edx, dword [ebp - 0x8e8]
mov eax, dword [edx + 0x10]
call eax
test eax, eax
je 0x4a2944
mov dword [ebp - 0x7ac], 0
jmp 0x4a2697
mov ecx, dword [ebp - 0x7ac]
add ecx, 1
mov dword [ebp - 0x7ac], ecx
mov edx, dword [ebp - 0x7ac]
cmp edx, dword [ebp - 0x7a8]
jae 0x4a2944
push 0x104
lea eax, [ebp - 0x25c]
push eax
mov ecx, dword [ebp - 0x7ac]
mov edx, dword [ebp - 0x2ac]
mov eax, dword [edx + ecx*4]
push eax
mov ecx, dword [ebp - 0x8e8]
mov edx, dword [ecx]
call edx
test eax, eax
je 0x4a293f
lea eax, [ebp - 0x25c]
push eax
lea ecx, [ebp - 0x820]
call fcn.00430b20
mov byte [ebp - 4], 1
push fcn.0096818e
lea ecx, [ebp - 0x834]
push ecx
lea ecx, [ebp - 0x820]
call fcn.0044eb90
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x838]
push eax
lea ecx, [ebp - 0x820]
call fcn.0044ebb0
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x83c]
push edx
lea ecx, [ebp - 0x820]
call fcn.0044eb90
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x840]
push ecx
call fcn.0044ec30
add esp, 0x14
lea edx, [ebp - 0x844]
push edx
lea ecx, [ebp - 0x820]
call fcn.0044ebb0
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x848]
push ecx
lea ecx, [ebp - 0x820]
call fcn.0044eb90
mov edx, dword [eax]
push edx
lea ecx, [ebp - 0x7c8]
call fcn.00494890
mov byte [ebp - 4], 2
push 0x5c
lea ecx, [ebp - 0x7c8]
call fcn.00475670
push eax
call fcn.00968220
add esp, 8
mov dword [ebp - 0x7cc], eax
cmp dword [ebp - 0x7cc], 0
jne 0x4a27c1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x7c8]
call fcn.004b6410
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x820]
call fcn.0042f920
jmp 0x4a2688
lea ecx, [ebp - 0x804]
call fcn.00477770
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x264]
cdq
push 0
push 4
push edx
push eax
call fcn.00967450
push eax
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x804]
call fcn.004772f0
mov ecx, dword [ebp - 0x7cc]
add ecx, 1
push ecx
lea ecx, [ebp - 0x864]
call fcn.00498c70
mov byte [ebp - 4], 4
lea edx, [ebp - 0x864]
push edx
lea ecx, [ebp - 0x804]
call fcn.00477920
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x864]
call fcn.004b6410
lea ecx, [ebp - 0x804]
call fcn.004773a0
mov dword [ebp - 0x824], 0
jmp 0x4a2855
mov eax, dword [ebp - 0x824]
add eax, 1
mov dword [ebp - 0x824], eax
lea ecx, [ebp - 0x1c]
call fcn.004940b0
cmp dword [ebp - 0x824], eax
jae 0x4a2912
mov dword [ebp - 0x828], 0
jmp 0x4a2884
mov ecx, dword [ebp - 0x828]
add ecx, 1
mov dword [ebp - 0x828], ecx
mov edx, dword [ebp - 0x824]
push edx
lea ecx, [ebp - 0x1c]
call fcn.0045e0c0
mov ecx, dword [eax]
add ecx, 4
call fcn.004940b0
cmp dword [ebp - 0x828], eax
jae 0x4a290d
lea ecx, [ebp - 0x804]
call fcn.00451a70
push eax
mov eax, dword [ebp - 0x828]
push eax
mov ecx, dword [ebp - 0x824]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.0045e0c0
mov ecx, dword [eax]
add ecx, 4
call fcn.0045e0c0
mov ecx, dword [eax]
call fcn.00477ac0
mov byte [ebp - 0x829], al
movzx edx, byte [ebp - 0x829]
test edx, edx
je 0x4a2908
mov eax, dword [ebp - 0x824]
push eax
lea ecx, [ebp - 0x1c]
call fcn.0045e0c0
mov ecx, dword [eax]
mov edx, dword [ebp - 0x2a4]
or edx, dword [ecx]
mov dword [ebp - 0x2a4], edx
jmp 0x4a2875
jmp 0x4a2846
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x804]
call fcn.0045e1c0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x7c8]
call fcn.004b6410
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x820]
call fcn.0042f920
jmp 0x4a2688
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x868], eax
mov ecx, dword [ebp - 0x868]
push ecx
call fcn.00966891
add esp, 4
cmp dword [ebp - 0x298], 0
je 0x4a2980
push 0
lea edx, [ebp - 0x570]
push edx
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x8e8]
call fcn.0048b720
mov dword [ebp - 0x8e0], 0x22
lea ecx, [ebp - 0x570]
mov dword [ebp - 0x8dc], ecx
cmp dword [ebp - 0x8e0], 0
je 0x4a29c8
mov edx, dword [ebp - 0x8dc]
mov byte [edx], 0
mov eax, dword [ebp - 0x8dc]
add eax, 1
mov dword [ebp - 0x8dc], eax
mov ecx, dword [ebp - 0x8e0]
sub ecx, 1
mov dword [ebp - 0x8e0], ecx
jmp 0x4a2996
mov edx, dword [ebp - 0x28]
push edx
call dword [0xa08a30]
lea eax, [ebp - 0x1c]
push eax
call fcn.00498c00
add esp, 4
mov ecx, dword [ebp - 0x2a4]
mov dword [ebp - 0x86c], ecx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c]
call fcn.0045e1f0
mov eax, dword [ebp - 0x86c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret