Function at 0x46b4d0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x9c6fd3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x6fc
mov dword [ebp - 0x670], ecx
lea ecx, [ebp - 0x84]
call fcn.004e9840
mov dword [ebp - 4], 0
push 0x30
call fcn.0095fa1f
add esp, 4
mov dword [ebp - 0x568], eax
cmp dword [ebp - 0x568], 0
je 0x46b568
push 0
push 0
push 0xcf515299
push 0x6a3c9433
push 0x41defcb
push 0x5f35af79
push 0x4efa84d5
push 0x2711f2d4
push 0x7f028144
push 0xfaf0522e
push 0x88d0ddef
push 0xefda075a
mov ecx, dword [ebp - 0x568]
call fcn.0044d0a0
mov dword [ebp - 0x674], eax
jmp 0x46b572
mov dword [ebp - 0x674], 0
mov eax, dword [ebp - 0x674]
mov dword [ebp - 0x564], eax
mov ecx, dword [ebp - 0x564]
mov dword [ebp - 0x560], ecx
lea edx, [ebp - 0x560]
push edx
lea ecx, [ebp - 0x84]
call fcn.0095b230
push 0x30
call fcn.0095fa1f
add esp, 4
mov dword [ebp - 0x574], eax
cmp dword [ebp - 0x574], 0
je 0x46b5fe
push 0
push 0
push 0xcf515299
push 0x6a3c9433
push 0x41defcb
push 0x5f35af79
push 0x4efa84d5
push 0x4bea5f8
push 0x1d7c8019
push 0x603d09c3
push 0x307e1c4c
push 0xaaaba4ee
mov ecx, dword [ebp - 0x574]
call fcn.0044d0a0
mov dword [ebp - 0x678], eax
jmp 0x46b608
mov dword [ebp - 0x678], 0
mov eax, dword [ebp - 0x678]
mov dword [ebp - 0x570], eax
mov ecx, dword [ebp - 0x570]
mov dword [ebp - 0x56c], ecx
lea edx, [ebp - 0x56c]
push edx
lea ecx, [ebp - 0x84]
call fcn.0095b230
push 0x30
call fcn.0095fa1f
add esp, 4
mov dword [ebp - 0x580], eax
cmp dword [ebp - 0x580], 0
je 0x46b694
push 0
push 0
push 0x1af52a47
push 0x3d953cc8
push 0xa24dd191
push 0xdfe2412b
push 0x24318c6b
push 0x8165ff03
push 0x7996ddf3
push 0xe4835b63
push 0x4e393c04
push 0x19ea0509
mov ecx, dword [ebp - 0x580]
call fcn.0044d0a0
mov dword [ebp - 0x67c], eax
jmp 0x46b69e
mov dword [ebp - 0x67c], 0
mov eax, dword [ebp - 0x67c]
mov dword [ebp - 0x57c], eax
mov ecx, dword [ebp - 0x57c]
mov dword [ebp - 0x578], ecx
lea edx, [ebp - 0x578]
push edx
lea ecx, [ebp - 0x84]
call fcn.0095b230
push 0x30
call fcn.0095fa1f
add esp, 4
mov dword [ebp - 0x58c], eax
cmp dword [ebp - 0x58c], 0
je 0x46b72a
push 0
push 0
push 0x1af52a47
push 0x3d953cc8
push 0xa24dd191
push 0xdfe2412b
push 0x24318c6b
push 0x3d9a1648
push 0x24126cd5
push 0x3e8b17a1
push 0xa5bede7b
push 0xd8a967ad
mov ecx, dword [ebp - 0x58c]
call fcn.0044d0a0
mov dword [ebp - 0x680], eax
jmp 0x46b734
mov dword [ebp - 0x680], 0
mov eax, dword [ebp - 0x680]
mov dword [ebp - 0x588], eax
mov ecx, dword [ebp - 0x588]
mov dword [ebp - 0x584], ecx
lea edx, [ebp - 0x584]
push edx
lea ecx, [ebp - 0x84]
call fcn.0095b230
lea ecx, [ebp - 0x30]
call fcn.0042f900
mov byte [ebp - 4], 1
mov dword [ebp - 0x90], 0
mov dword [ebp - 0xe8], 0
fldz
fstp qword [ebp - 0x8c]
fldz
fstp qword [ebp - 0x14]
fldz
fstp qword [ebp - 0x14]
jmp 0x46b79e
fld qword [ebp - 0x14]
fadd qword [0x9ca2c0]
fstp qword [ebp - 0x14]
fld qword [0x9cb750]
fcomp qword [ebp - 0x14]
fnstsw ax
test ah, 0x41
jne 0x46b80c
fld qword [0x9cb748]
fmul qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fsubp st(1)
fld qword [0x9cb740]
fmul qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fadd qword [0x9cb738]
fdivp st(1)
fadd qword [ebp - 0x8c]
fstp qword [ebp - 0x8c]
fld qword [0x9cb730]
fcomp qword [ebp - 0x8c]
fnstsw ax
test ah, 5
jp 0x46b80a
fld qword [0x9cb728]
fmul qword [ebp - 0x14]
fsubr qword [ebp - 0x8c]
fstp qword [ebp - 0x8c]
jmp 0x46b792
fldz
fcomp qword [ebp - 0x8c]
fnstsw ax
test ah, 0x41
jne 0x46b871
dec eax
mov bl, 0x48
cmpsd dword [esi], dword es:[edi]
dec edi
mov al, 0x49
mov ah, 0x51
test eax, 0xa848b151
dec edx
stosd dword es:[edi], eax
push ecx
lodsd eax, dword [esi]
dec ebx
mov al, 0x4d
mov ah, 0x54
test eax, 0xb34fb450
dec edi
cmpsd dword [esi], dword es:[edi]
inc edi
mov ah, 0x4b
mov dl, 0x4f
mov bl, 0x50
mov dl, 0x54
stosd dword es:[edi], eax
push esp
scasb al, byte es:[edi]
push ecx
test al, 0x49
mov al, 0x46
mov al, 0x51
mov cl, 0x47
mov ah, 0x53
test eax, 0x7961ab4e
pop ecx
xor eax, 0x30462c69
pop ebp
pop ebp
and dword [ecx + 0x43], edi
pop bx
pop ecx
pop ecx
jns 0x46b8c8
dec esp
imul ebp, dword [edi], 0xffffffe9
jbe 0x46b89d
add byte [eax], al
mov dword [ebp - 0x90], 0x46b81b
mov dword [ebp - 0xe8], 0x46b853
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0xe8]
mov dword [ebp - 0xfc], ecx
mov byte [ebp - 0x21d], 0x1d
mov dword [ebp - 0x214], 0
jmp 0x46b8bf
mov edx, dword [ebp - 0x214]
add edx, 1
mov dword [ebp - 0x214], edx
cmp dword [ebp - 0x214], 0x100
jae 0x46b8e0
add byte [ebx + 0x15], dh
mov eax, dword [ebp - 0x214]
mov cl, byte [ebp - 0x214]
mov byte [ebp + eax - 0x20c], cl
jmp 0x46b8b0
mov dword [ebp - 0x104], 0
mov byte [ebp - 0x21e], 0
mov dword [ebp - 0x214], 0xff
jmp 0x46b90c
mov edx, dword [ebp - 0x214]
sub edx, 1
mov dword [ebp - 0x214], edx
cmp dword [ebp - 0x214], 0
jbe 0x46bc24
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x22c], 1
mov eax, dword [ebp - 0x22c]
cmp eax, dword [ebp - 0x214]
jae 0x46b94d
mov ecx, dword [ebp - 0x22c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x22c], edx
jmp 0x46b92d
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x684], eax
cmp dword [ebp - 0x684], 3
ja case.default.0x46b96c
mov ecx, dword [ebp - 0x684]
jmp dword [ecx*4 + 0x470404]
movzx edx, byte [ebp - 0x21e]
movzx ecx, byte [ebp + edx - 0x20c]
fld qword [ebp - 0x8c]
fnstcw word [ebp - 0x686]
movzx eax, word [ebp - 0x686]
or eax, 0xc00
mov dword [ebp - 0x68c], eax
fldcw word [ebp - 0x68c]
fistp qword [ebp - 0x694]
fldcw word [ebp - 0x686]
mov edx, dword [ebp - 0x694]
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x21e], cl
jmp 0x46bafd
movzx eax, byte [ebp - 0x21e]
movzx ecx, byte [ebp + eax - 0x20c]
fld qword [ebp - 0x8c]
fnstcw word [ebp - 0x696]
movzx eax, word [ebp - 0x696]
or eax, 0xc00
mov dword [ebp - 0x69c], eax
fldcw word [ebp - 0x69c]
fistp qword [ebp - 0x6a4]
fldcw word [ebp - 0x696]
mov edx, dword [ebp - 0x6a4]
shr edx, 8
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x21e], cl
jmp 0x46bafd
movzx eax, byte [ebp - 0x21e]
movzx ecx, byte [ebp + eax - 0x20c]
fld qword [ebp - 0x8c]
fnstcw word [ebp - 0x6a6]
movzx eax, word [ebp - 0x6a6]
or eax, 0xc00
mov dword [ebp - 0x6ac], eax
fldcw word [ebp - 0x6ac]
fistp qword [ebp - 0x6b4]
fldcw word [ebp - 0x6a6]
mov edx, dword [ebp - 0x6b4]
shr edx, 0x10
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x21e], cl
jmp 0x46bafd
movzx eax, byte [ebp - 0x21e]
movzx ecx, byte [ebp + eax - 0x20c]
fld qword [ebp - 0x8c]
fnstcw word [ebp - 0x6b6]
movzx eax, word [ebp - 0x6b6]
or eax, 0xc00
mov dword [ebp - 0x6bc], eax
fldcw word [ebp - 0x6bc]
fistp qword [ebp - 0x6c4]
fldcw word [ebp - 0x6b6]
mov edx, dword [ebp - 0x6c4]
shr edx, 0x18
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x21e], cl
jmp 0x46bafd
movzx eax, byte [ebp - 0x21e]
movzx ecx, byte [ebp + eax - 0x20c]
mov edx, dword [ebp - 0xfc]
add edx, dword [ebp - 0x104]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0x21e], cl
mov ecx, dword [ebp - 0x104]
add ecx, 1
mov dword [ebp - 0x104], ecx
movzx edx, byte [ebp - 0x21d]
cmp dword [ebp - 0x104], edx
jb 0x46bb3b
mov dword [ebp - 0x104], 0
movzx eax, byte [ebp - 0x21d]
movzx ecx, byte [ebp - 0x21e]
add ecx, eax
mov byte [ebp - 0x21e], cl
movzx edx, byte [ebp - 0x21e]
and edx, dword [ebp - 0x22c]
mov dword [ebp - 0x228], edx
mov eax, dword [ebp - 0x224]
add eax, 1
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0xb
jbe 0x46bb7a
mov eax, dword [ebp - 0x228]
xor edx, edx
div dword [ebp - 0x214]
mov dword [ebp - 0x228], edx
mov ecx, dword [ebp - 0x228]
cmp ecx, dword [ebp - 0x214]
ja 0x46b94d
mov edx, dword [ebp - 0x214]
cmp edx, dword [ebp - 0x228]
je 0x46bc1f
mov eax, dword [ebp - 0x228]
movzx ecx, byte [ebp + eax - 0x20c]
mov edx, dword [ebp - 0x214]
movzx eax, byte [ebp + edx - 0x20c]
xor eax, ecx
mov ecx, dword [ebp - 0x214]
mov byte [ebp + ecx - 0x20c], al
mov edx, dword [ebp - 0x214]
movzx eax, byte [ebp + edx - 0x20c]
mov ecx, dword [ebp - 0x228]
movzx edx, byte [ebp + ecx - 0x20c]
xor edx, eax
mov eax, dword [ebp - 0x228]
mov byte [ebp + eax - 0x20c], dl
mov ecx, dword [ebp - 0x228]
movzx edx, byte [ebp + ecx - 0x20c]
mov eax, dword [ebp - 0x214]
movzx ecx, byte [ebp + eax - 0x20c]
xor ecx, edx
mov edx, dword [ebp - 0x214]
mov byte [ebp + edx - 0x20c], cl
jmp 0x46b8fd
mov al, byte [ebp - 0x20b]
mov byte [ebp - 0x21f], al
mov cl, byte [ebp - 0x209]
mov byte [ebp - 0x105], cl
mov dl, byte [ebp - 0x207]
mov byte [ebp - 0x20d], dl
mov al, byte [ebp - 0x205]
mov byte [ebp - 0x215], al
movzx ecx, byte [ebp - 0x21e]
mov dl, byte [ebp + ecx - 0x20c]
mov byte [ebp - 0xf5], dl
mov dword [ebp - 0x21c], 0x38
cmp dword [ebp - 0x21c], 2
jle 0x46e6b4
mov eax, dword [ebp - 0x21c]
and eax, 1
jne 0x46e6b4
mov dword [ebp - 0x2bc], 0
mov dword [ebp - 0x2b8], 0
mov ecx, dword [ebp - 0x2b8]
add ecx, 1
mov dword [ebp - 0x2b8], ecx
mov dword [ebp - 0x238], 0
mov edx, dword [ebp - 0x2bc]
shl edx, 1
mov dword [ebp - 0x238], edx
mov dword [ebp - 0x2ec], 0
mov eax, dword [ebp - 0x100]
add eax, dword [ebp - 0x238]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x2ec]
mov dword [ebp - 0x2ec], ecx
mov dword [ebp - 0x270], 0
mov edx, dword [ebp - 0x270]
add edx, 0x45
mov dword [ebp - 0x270], edx
mov dword [ebp - 0x294], 0
mov eax, dword [ebp - 0x2bc]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x294], ecx
mov dword [ebp - 0x308], 0
fld dword [0x9cb720]
fstp dword [ebp - 0x28c]
fld dword [0x9cb71c]
fstp dword [ebp - 0x254]
fld dword [0x9cb718]
fstp dword [ebp - 0x304]
fld dword [0x9cb714]
fstp dword [ebp - 0x2c0]
fld dword [0x9cb710]
fstp dword [ebp - 0x288]
fld dword [0x9cb70c]
fstp dword [ebp - 0x2b4]
fld dword [0x9cb708]
fstp dword [ebp - 0x284]
fld dword [ebp - 0x288]
fsub dword [ebp - 0x284]
fstp dword [ebp - 0x288]
fld dword [ebp - 0x304]
fmul dword [ebp - 0x284]
fstp dword [ebp - 0x304]
fld dword [ebp - 0x288]
fsub dword [ebp - 0x284]
fstp dword [ebp - 0x288]
fld dword [ebp - 0x288]
fsub dword [ebp - 0x284]
fstp dword [ebp - 0x288]
fld dword [ebp - 0x2c0]
fmul dword [ebp - 0x284]
fstp dword [ebp - 0x2c0]
fld dword [ebp - 0x2b4]
fadd dword [ebp - 0x284]
fstp dword [ebp - 0x2b4]
fld dword [ebp - 0x2b4]
fadd dword [ebp - 0x284]
fstp dword [ebp - 0x2b4]
fld dword [ebp - 0x288]
fld dword [ebp - 0x304]
fcompp
fnstsw ax
test ah, 0x41
jne 0x46beb4
fld dword [ebp - 0x2c0]
fadd dword [ebp - 0x2b4]
fstp dword [ebp - 0x2c0]
fld dword [ebp - 0x2c0]
fsub dword [ebp - 0x2b4]
fstp dword [ebp - 0x2c0]
fld dword [ebp - 0x2c0]
fmul dword [ebp - 0x2b4]
fstp dword [ebp - 0x2c0]
fld dword [ebp - 0x2c0]
fadd dword [ebp - 0x2b4]
fstp dword [ebp - 0x2c0]
fld dword [ebp - 0x28c]
fadd dword [ebp - 0x304]
fstp dword [ebp - 0x28c]
fld dword [ebp - 0x2c0]
fmul dword [ebp - 0x2b4]
fstp dword [ebp - 0x2c0]
fld dword [ebp - 0x2b4]
fadd dword [ebp - 0x28c]
fstp dword [ebp - 0x2b4]
mov edx, dword [ebp - 0x100]
add edx, dword [ebp - 0x294]
movzx eax, byte [edx]
add eax, dword [ebp - 0x308]
mov dword [ebp - 0x308], eax
jmp 0x46c0c7
fld dword [ebp - 0x288]
fdiv dword [ebp - 0x2b4]
fstp dword [ebp - 0x288]
fld dword [ebp - 0x304]
fsub dword [ebp - 0x2c0]
fstp dword [ebp - 0x304]
fld dword [ebp - 0x28c]
fmul dword [ebp - 0x254]
fstp dword [ebp - 0x28c]
fld dword [ebp - 0x254]
fmul dword [ebp - 0x304]
fstp dword [ebp - 0x254]
fld dword [ebp - 0x28c]
fdiv dword [ebp - 0x254]
fstp dword [ebp - 0x28c]
fld dword [ebp - 0x28c]
fdiv dword [ebp - 0x254]
fstp dword [ebp - 0x28c]
fld dword [ebp - 0x284]
fsub dword [ebp - 0x28c]
fstp dword [ebp - 0x284]
fld dword [ebp - 0x254]
fmul dword [ebp - 0x304]
fstp dword [ebp - 0x254]
fld dword [ebp - 0x284]
fsub dword [ebp - 0x28c]
fstp dword [ebp - 0x284]
fld dword [ebp - 0x254]
fdiv dword [ebp - 0x304]
fstp dword [ebp - 0x254]
fld dword [ebp - 0x2b4]
fmul dword [ebp - 0x284]
fstp dword [ebp - 0x2b4]
fld dword [ebp - 0x2b4]
fmul dword [ebp - 0x284]
fstp dword [ebp - 0x2b4]
fld dword [ebp - 0x254]
fsub dword [ebp - 0x304]
fstp dword [ebp - 0x254]
fld dword [ebp - 0x254]
fdiv dword [ebp - 0x304]
fstp dword [ebp - 0x254]
fld dword [ebp - 0x2b4]
fld dword [ebp - 0x28c]
fcompp
fnstsw ax
test ah, 5
jp 0x46c049
fld dword [ebp - 0x28c]
fsub dword [ebp - 0x254]
fstp dword [ebp - 0x28c]
fld dword [ebp - 0x254]
fmul dword [ebp - 0x304]
fstp dword [ebp - 0x254]
fld dword [ebp - 0x28c]
fsub dword [ebp - 0x254]
fstp dword [ebp - 0x28c]
fld dword [ebp - 0x254]
fdiv dword [ebp - 0x304]
fstp dword [ebp - 0x254]
fld dword [ebp - 0x28c]
fadd dword [ebp - 0x254]
fstp dword [ebp - 0x28c]
fld dword [ebp - 0x254]
fadd dword [ebp - 0x304]
fstp dword [ebp - 0x254]
fld dword [ebp - 0x254]
fdiv dword [ebp - 0x304]
fstp dword [ebp - 0x254]
jmp 0x46c0c7
fld dword [ebp - 0x28c]
fdiv dword [ebp - 0x254]
fstp dword [ebp - 0x28c]
fld dword [ebp - 0x304]
fsub dword [ebp - 0x2c0]
fstp dword [ebp - 0x304]
fld dword [ebp - 0x2b4]
fsub dword [ebp - 0x284]
fstp dword [ebp - 0x2b4]
fld dword [ebp - 0x284]
fmul dword [ebp - 0x28c]
fstp dword [ebp - 0x284]
fld dword [ebp - 0x288]
fdiv dword [ebp - 0x2b4]
fstp dword [ebp - 0x288]
fld dword [ebp - 0x304]
fadd dword [ebp - 0x2c0]
fstp dword [ebp - 0x304]
fld dword [ebp - 0x284]
fsub dword [ebp - 0x28c]
fstp dword [ebp - 0x284]
mov dword [ebp - 0x2e8], 0
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xa5
mov dword [ebp - 0x2e8], ecx
mov dword [ebp - 0x300], 0
mov edx, dword [ebp - 0x2ec]
sub edx, dword [ebp - 0x270]
add edx, dword [ebp - 0x300]
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x250], 0
mov eax, dword [ebp - 0x308]
sub eax, dword [ebp - 0x2e8]
add eax, dword [ebp - 0x250]
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x2fc], 0
mov ecx, dword [ebp - 0x300]
shl ecx, 4
mov dword [ebp - 0x2fc], ecx
mov dword [ebp - 0x2e4], 0
mov edx, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], edx
mov dword [ebp - 0x2b0], 0
mov eax, dword [ebp - 0x2fc]
or eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], eax
mov byte [ebp - 0x27d], 0
mov cl, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], cl
mov byte [ebp - 0x2f5], 0
movzx edx, byte [ebp - 0xf5]
mov al, byte [ebp + edx - 0x20c]
mov byte [ebp - 0x2f5], al
movzx ecx, byte [ebp - 0x21f]
movzx edx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp - 0x105]
add eax, edx
mov byte [ebp - 0x105], al
mov cl, byte [ebp - 0x21f]
add cl, 1
mov byte [ebp - 0x21f], cl
movzx edx, byte [ebp - 0x105]
movzx eax, byte [ebp - 0xf5]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x215]
movzx eax, byte [ebp - 0x105]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x21f]
movzx eax, byte [ebp - 0x215]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x21f]
mov al, byte [ebp - 0x2f5]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x2f5]
movzx edx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp - 0x20d]
add eax, edx
mov byte [ebp - 0x20d], al
movzx ecx, byte [ebp - 0x27d]
movzx edx, byte [ebp - 0x105]
movzx eax, byte [ebp + edx - 0x20c]
movzx edx, byte [ebp - 0x21f]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x20c]
xor ecx, eax
movzx edx, byte [ebp - 0x215]
movzx eax, byte [ebp + edx - 0x20c]
movzx edx, byte [ebp - 0xf5]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
movzx edx, byte [ebp - 0x20d]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp + eax - 0x20c]
xor ecx, edx
mov byte [ebp - 0x215], cl
mov al, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], al
mov cl, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], cl
cmp dword [ebp - 0x2bc], 0
jle 0x46c30b
movsx dx, byte [ebp - 0x2dd]
mov eax, dword [ebp - 0x2bc]
mov word [ebp + eax*2 - 0x76], dx
mov ecx, dword [ebp - 0x2bc]
add ecx, 1
mov dword [ebp - 0x2bc], ecx
mov edx, dword [ebp - 0x2b8]
add edx, 1
mov dword [ebp - 0x2b8], edx
mov eax, dword [ebp - 0x2bc]
shl eax, 1
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp - 0x100]
add ecx, dword [ebp - 0x238]
movzx edx, byte [ecx]
mov dword [ebp - 0x2ec], edx
mov dword [ebp - 0x270], 0x45
mov eax, dword [ebp - 0x2bc]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x294], ecx
mov edx, dword [ebp - 0x100]
add edx, dword [ebp - 0x294]
movzx eax, byte [edx]
mov dword [ebp - 0x308], eax
mov dword [ebp - 0x2e8], 0xa5
mov ecx, dword [ebp - 0x2ec]
sub ecx, dword [ebp - 0x270]
mov dword [ebp - 0x300], ecx
mov edx, dword [ebp - 0x308]
sub edx, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], edx
mov eax, dword [ebp - 0x300]
shl eax, 4
mov dword [ebp - 0x2fc], eax
mov ecx, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], ecx
mov edx, dword [ebp - 0x2fc]
or edx, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], edx
mov al, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], al
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + ecx - 0x20c]
mov byte [ebp - 0x2f5], dl
movzx eax, byte [ebp - 0x21f]
movzx ecx, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp - 0x105]
add edx, ecx
mov byte [ebp - 0x105], dl
mov al, byte [ebp - 0x21f]
add al, 1
mov byte [ebp - 0x21f], al
movzx ecx, byte [ebp - 0x105]
movzx edx, byte [ebp - 0xf5]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x215]
movzx edx, byte [ebp - 0x105]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x21f]
movzx edx, byte [ebp - 0x215]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x21f]
mov dl, byte [ebp - 0x2f5]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x2f5]
movzx ecx, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp - 0x20d]
add edx, ecx
mov byte [ebp - 0x20d], dl
movzx eax, byte [ebp - 0x27d]
movzx ecx, byte [ebp - 0x105]
movzx edx, byte [ebp + ecx - 0x20c]
movzx ecx, byte [ebp - 0x21f]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x20c]
xor eax, edx
movzx ecx, byte [ebp - 0x215]
movzx edx, byte [ebp + ecx - 0x20c]
movzx ecx, byte [ebp - 0xf5]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
movzx ecx, byte [ebp - 0x20d]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp + edx - 0x20c]
xor eax, ecx
mov byte [ebp - 0x215], al
mov dl, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], dl
mov al, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], al
cmp dword [ebp - 0x2bc], 0
jle 0x46c562
movsx cx, byte [ebp - 0x2dd]
mov edx, dword [ebp - 0x2bc]
mov word [ebp + edx*2 - 0x76], cx
mov eax, dword [ebp - 0x2b8]
add eax, 0xa
mov dword [ebp - 0x2b8], eax
mov ecx, dword [ebp - 0x2bc]
add ecx, 1
mov dword [ebp - 0x30c], ecx
jmp 0x46c591
mov edx, dword [ebp - 0x30c]
add edx, 1
mov dword [ebp - 0x30c], edx
mov eax, dword [ebp - 0x30c]
cmp eax, dword [ebp - 0x2b8]
jge 0x46ca76
mov ecx, dword [ebp - 0x2bc]
add ecx, 1
mov dword [ebp - 0x2bc], ecx
mov edx, dword [ebp - 0x2bc]
shl edx, 1
mov dword [ebp - 0x238], edx
mov eax, dword [ebp - 0x100]
add eax, dword [ebp - 0x238]
movzx ecx, byte [eax]
mov dword [ebp - 0x2ec], ecx
mov dword [ebp - 0x270], 0x45
mov edx, dword [ebp - 0x2bc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x294], eax
mov ecx, dword [ebp - 0x100]
add ecx, dword [ebp - 0x294]
movzx edx, byte [ecx]
mov dword [ebp - 0x308], edx
mov dword [ebp - 0x2e8], 0xa5
mov eax, dword [ebp - 0x2ec]
sub eax, dword [ebp - 0x270]
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x308]
sub ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], ecx
mov edx, dword [ebp - 0x300]
shl edx, 4
mov dword [ebp - 0x2fc], edx
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], eax
mov ecx, dword [ebp - 0x2fc]
or ecx, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], ecx
mov dl, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], dl
movzx eax, byte [ebp - 0xf5]
mov cl, byte [ebp + eax - 0x20c]
mov byte [ebp - 0x2f5], cl
movzx edx, byte [ebp - 0x21f]
movzx eax, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp - 0x105]
add ecx, eax
mov byte [ebp - 0x105], cl
mov dl, byte [ebp - 0x21f]
add dl, 1
mov byte [ebp - 0x21f], dl
fld qword [0x9cb700]
fstp qword [ebp - 0x31c]
fld qword [0x9cb6f8]
fstp qword [ebp - 0x334]
fld qword [0x9cb6f0]
fstp qword [ebp - 0x32c]
fld qword [0x9cb6e8]
fstp qword [ebp - 0x324]
fld qword [0x9cb6e0]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x31c]
fadd qword [ebp - 0x314]
fstp qword [ebp - 0x31c]
fld qword [ebp - 0x324]
fadd qword [ebp - 0x314]
fstp qword [ebp - 0x324]
fld qword [ebp - 0x32c]
fmul qword [ebp - 0x314]
fstp qword [ebp - 0x32c]
fld qword [ebp - 0x334]
fadd qword [ebp - 0x314]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x324]
fsub qword [ebp - 0x314]
fstp qword [ebp - 0x324]
fld qword [ebp - 0x314]
fcomp qword [ebp - 0x32c]
fnstsw ax
test ah, 5
jp 0x46c7d0
fld qword [ebp - 0x32c]
fadd qword [ebp - 0x324]
fstp qword [ebp - 0x32c]
fld qword [ebp - 0x32c]
fadd qword [ebp - 0x324]
fstp qword [ebp - 0x32c]
fld qword [ebp - 0x32c]
fsub qword [ebp - 0x324]
fstp qword [ebp - 0x32c]
fld qword [ebp - 0x31c]
fsub qword [ebp - 0x334]
fstp qword [ebp - 0x31c]
fld qword [ebp - 0x324]
fmul qword [ebp - 0x314]
fstp qword [ebp - 0x324]
movzx eax, byte [ebp - 0x105]
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
jmp 0x46c94d
fld qword [ebp - 0x334]
fsub qword [ebp - 0x32c]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x32c]
fadd qword [ebp - 0x324]
fstp qword [ebp - 0x32c]
fld qword [ebp - 0x32c]
fdiv qword [ebp - 0x324]
fstp qword [ebp - 0x32c]
fld qword [ebp - 0x314]
fadd qword [ebp - 0x31c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x314]
fadd qword [ebp - 0x31c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x314]
fsub qword [ebp - 0x31c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x314]
fadd qword [ebp - 0x31c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x334]
fdiv qword [ebp - 0x32c]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x324]
fadd qword [ebp - 0x314]
fstp qword [ebp - 0x324]
fld qword [ebp - 0x32c]
fsub qword [ebp - 0x324]
fstp qword [ebp - 0x32c]
fld qword [ebp - 0x31c]
fcomp qword [ebp - 0x324]
fnstsw ax
test ah, 5
jp 0x46c8f3
fld qword [ebp - 0x334]
fsub qword [ebp - 0x324]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x31c]
fadd qword [ebp - 0x32c]
fstp qword [ebp - 0x31c]
fld qword [ebp - 0x334]
fadd qword [ebp - 0x324]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x32c]
fmul qword [ebp - 0x314]
fstp qword [ebp - 0x32c]
fld qword [ebp - 0x31c]
fadd qword [ebp - 0x32c]
fstp qword [ebp - 0x31c]
jmp 0x46c94d
fld qword [ebp - 0x314]
fmul qword [ebp - 0x31c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x334]
fdiv qword [ebp - 0x32c]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x31c]
fdiv qword [ebp - 0x334]
fstp qword [ebp - 0x31c]
fld qword [ebp - 0x314]
fsub qword [ebp - 0x31c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x31c]
fmul qword [ebp - 0x334]
fstp qword [ebp - 0x31c]
movzx eax, byte [ebp - 0x215]
movzx ecx, byte [ebp - 0x105]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x21f]
movzx ecx, byte [ebp - 0x215]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x21f]
mov cl, byte [ebp - 0x2f5]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x2f5]
movzx eax, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp - 0x20d]
add ecx, eax
mov byte [ebp - 0x20d], cl
movzx edx, byte [ebp - 0x27d]
movzx eax, byte [ebp - 0x105]
movzx ecx, byte [ebp + eax - 0x20c]
movzx eax, byte [ebp - 0x21f]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x20c]
xor edx, ecx
movzx eax, byte [ebp - 0x215]
movzx ecx, byte [ebp + eax - 0x20c]
movzx eax, byte [ebp - 0xf5]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
movzx eax, byte [ebp - 0x20d]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp + ecx - 0x20c]
xor edx, eax
mov byte [ebp - 0x215], dl
mov cl, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], cl
mov dl, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], dl
cmp dword [ebp - 0x2bc], 0
jle 0x46ca71
movsx ax, byte [ebp - 0x2dd]
mov ecx, dword [ebp - 0x2bc]
mov word [ebp + ecx*2 - 0x76], ax
jmp 0x46c582
mov edx, dword [ebp - 0x2b8]
add edx, 1
mov dword [ebp - 0x2b8], edx
mov eax, dword [ebp - 0x2bc]
add eax, 1
mov dword [ebp - 0x2bc], eax
mov ecx, dword [ebp - 0x2b8]
add ecx, 1
mov dword [ebp - 0x2b8], ecx
mov edx, dword [ebp - 0x2bc]
shl edx, 1
mov dword [ebp - 0x238], edx
mov eax, dword [ebp - 0x100]
add eax, dword [ebp - 0x238]
movzx ecx, byte [eax]
mov dword [ebp - 0x2ec], ecx
mov dword [ebp - 0x270], 0x45
mov edx, dword [ebp - 0x2bc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x294], eax
mov ecx, dword [ebp - 0x100]
add ecx, dword [ebp - 0x294]
movzx edx, byte [ecx]
mov dword [ebp - 0x308], edx
mov dword [ebp - 0x2e8], 0xa5
mov eax, dword [ebp - 0x2ec]
sub eax, dword [ebp - 0x270]
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x308]
sub ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], ecx
mov edx, dword [ebp - 0x300]
shl edx, 4
mov dword [ebp - 0x2fc], edx
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], eax
mov ecx, dword [ebp - 0x2fc]
or ecx, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], ecx
mov dl, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], dl
movzx eax, byte [ebp - 0xf5]
mov cl, byte [ebp + eax - 0x20c]
mov byte [ebp - 0x2f5], cl
movzx edx, byte [ebp - 0x21f]
movzx eax, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp - 0x105]
add ecx, eax
mov byte [ebp - 0x105], cl
mov dl, byte [ebp - 0x21f]
add dl, 1
mov byte [ebp - 0x21f], dl
movzx eax, byte [ebp - 0x105]
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x215]
movzx ecx, byte [ebp - 0x105]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x21f]
movzx ecx, byte [ebp - 0x215]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x21f]
mov cl, byte [ebp - 0x2f5]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x2f5]
movzx eax, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp - 0x20d]
add ecx, eax
mov byte [ebp - 0x20d], cl
movzx edx, byte [ebp - 0x27d]
movzx eax, byte [ebp - 0x105]
movzx ecx, byte [ebp + eax - 0x20c]
movzx eax, byte [ebp - 0x21f]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x20c]
xor edx, ecx
movzx eax, byte [ebp - 0x215]
movzx ecx, byte [ebp + eax - 0x20c]
movzx eax, byte [ebp - 0xf5]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
movzx eax, byte [ebp - 0x20d]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp + ecx - 0x20c]
xor edx, eax
mov byte [ebp - 0x215], dl
mov cl, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], cl
mov dl, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], dl
cmp dword [ebp - 0x2bc], 0
jle 0x46ccdd
movsx ax, byte [ebp - 0x2dd]
mov ecx, dword [ebp - 0x2bc]
mov word [ebp + ecx*2 - 0x76], ax
mov edx, dword [ebp - 0x2bc]
add edx, 1
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp - 0x2b8]
add eax, 1
mov dword [ebp - 0x2b8], eax
mov ecx, dword [ebp - 0x2bc]
shl ecx, 1
mov dword [ebp - 0x238], ecx
mov edx, dword [ebp - 0x100]
add edx, dword [ebp - 0x238]
movzx eax, byte [edx]
mov dword [ebp - 0x2ec], eax
mov dword [ebp - 0x270], 0x45
mov ecx, dword [ebp - 0x2bc]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x294], edx
mov eax, dword [ebp - 0x100]
add eax, dword [ebp - 0x294]
movzx ecx, byte [eax]
mov dword [ebp - 0x308], ecx
mov dword [ebp - 0x2e8], 0xa5
mov edx, dword [ebp - 0x2ec]
sub edx, dword [ebp - 0x270]
mov dword [ebp - 0x300], edx
mov eax, dword [ebp - 0x308]
sub eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], eax
mov ecx, dword [ebp - 0x300]
shl ecx, 4
mov dword [ebp - 0x2fc], ecx
mov edx, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], edx
mov eax, dword [ebp - 0x2fc]
or eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], eax
mov cl, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], cl
fld qword [0x9cb6d8]
fstp qword [ebp - 0x2f4]
fld qword [0x9cb6d0]
fstp qword [ebp - 0x2ac]
fld qword [0x9cb6c8]
fstp qword [ebp - 0x27c]
fld qword [0x9cb6c0]
fstp qword [ebp - 0x26c]
fld qword [0x9cb6b8]
fstp qword [ebp - 0x24c]
fld qword [0x9cb6b0]
fstp qword [ebp - 0x2dc]
fld qword [0x9cb6a8]
fstp qword [ebp - 0x2a4]
fld qword [ebp - 0x2ac]
fsub qword [ebp - 0x2a4]
fstp qword [ebp - 0x2ac]
fld qword [ebp - 0x26c]
fadd qword [ebp - 0x2a4]
fstp qword [ebp - 0x26c]
fld qword [ebp - 0x27c]
fadd qword [ebp - 0x2a4]
fstp qword [ebp - 0x27c]
fld qword [ebp - 0x27c]
fsub qword [ebp - 0x2a4]
fstp qword [ebp - 0x27c]
fld qword [ebp - 0x24c]
fmul qword [ebp - 0x2a4]
fstp qword [ebp - 0x24c]
fld qword [ebp - 0x27c]
fadd qword [ebp - 0x2a4]
fstp qword [ebp - 0x27c]
fld qword [ebp - 0x2ac]
fsub qword [ebp - 0x2a4]
fstp qword [ebp - 0x2ac]
fld qword [ebp - 0x24c]
fcomp qword [ebp - 0x2a4]
fnstsw ax
test ah, 0x41
jne 0x46cf31
fld qword [ebp - 0x2ac]
fsub qword [ebp - 0x26c]
fstp qword [ebp - 0x2ac]
fld qword [ebp - 0x27c]
fmul qword [ebp - 0x24c]
fstp qword [ebp - 0x27c]
fld qword [ebp - 0x2dc]
fsub qword [ebp - 0x2f4]
fstp qword [ebp - 0x2dc]
fld qword [ebp - 0x24c]
fmul qword [ebp - 0x2a4]
fstp qword [ebp - 0x24c]
fld qword [ebp - 0x24c]
fmul qword [ebp - 0x2a4]
fstp qword [ebp - 0x24c]
fld qword [ebp - 0x2f4]
fadd qword [ebp - 0x27c]
fstp qword [ebp - 0x2f4]
fld qword [ebp - 0x2a4]
fadd qword [ebp - 0x2ac]
fstp qword [ebp - 0x2a4]
movzx edx, byte [ebp - 0xf5]
mov al, byte [ebp + edx - 0x20c]
mov byte [ebp - 0x2f5], al
jmp 0x46cfaf
fld qword [ebp - 0x26c]
fmul qword [ebp - 0x24c]
fstp qword [ebp - 0x26c]
fld qword [ebp - 0x27c]
fdiv qword [ebp - 0x26c]
fstp qword [ebp - 0x27c]
fld qword [ebp - 0x26c]
fadd qword [ebp - 0x24c]
fstp qword [ebp - 0x26c]
fld qword [ebp - 0x24c]
fsub qword [ebp - 0x2dc]
fstp qword [ebp - 0x24c]
fld qword [ebp - 0x27c]
fdiv qword [ebp - 0x26c]
fstp qword [ebp - 0x27c]
fld qword [ebp - 0x2ac]
fmul qword [ebp - 0x27c]
fstp qword [ebp - 0x2ac]
fld qword [ebp - 0x2ac]
fsub qword [ebp - 0x27c]
fstp qword [ebp - 0x2ac]
fld dword [0x9cb6a0]
fstp dword [ebp - 0x260]
fld dword [0x9cb69c]
fstp dword [ebp - 0x240]
fld dword [0x9cb698]
fstp dword [ebp - 0x2d0]
fld dword [0x9cb694]
fstp dword [ebp - 0x298]
fld dword [0x9cb690]
fstp dword [ebp - 0x25c]
fld dword [0x9cb68c]
fstp dword [ebp - 0x23c]
fld dword [0x9cb688]
fstp dword [ebp - 0x2cc]
fld dword [ebp - 0x23c]
fmul dword [ebp - 0x2cc]
fstp dword [ebp - 0x23c]
fld dword [ebp - 0x298]
fmul dword [ebp - 0x2cc]
fstp dword [ebp - 0x298]
fld dword [ebp - 0x298]
fadd dword [ebp - 0x2cc]
fstp dword [ebp - 0x298]
fld dword [ebp - 0x240]
fsub dword [ebp - 0x2cc]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x240]
fsub dword [ebp - 0x2cc]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x23c]
fsub dword [ebp - 0x2cc]
fstp dword [ebp - 0x23c]
fld dword [ebp - 0x298]
fsub dword [ebp - 0x2cc]
fstp dword [ebp - 0x298]
fld dword [ebp - 0x298]
fld dword [ebp - 0x2cc]
fcompp
fnstsw ax
test ah, 5
jp 0x46d14a
fld dword [ebp - 0x260]
fadd dword [ebp - 0x240]
fstp dword [ebp - 0x260]
fld dword [ebp - 0x298]
fsub dword [ebp - 0x25c]
fstp dword [ebp - 0x298]
fld dword [ebp - 0x23c]
fsub dword [ebp - 0x2cc]
fstp dword [ebp - 0x23c]
fld dword [ebp - 0x298]
fadd dword [ebp - 0x25c]
fstp dword [ebp - 0x298]
fld dword [ebp - 0x2cc]
fsub dword [ebp - 0x260]
fstp dword [ebp - 0x2cc]
fld dword [ebp - 0x2cc]
fadd dword [ebp - 0x260]
fstp dword [ebp - 0x2cc]
fld dword [ebp - 0x260]
fadd dword [ebp - 0x240]
fstp dword [ebp - 0x260]
movzx ecx, byte [ebp - 0x21f]
movzx edx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp - 0x105]
add eax, edx
mov byte [ebp - 0x105], al
mov cl, byte [ebp - 0x21f]
add cl, 1
mov byte [ebp - 0x21f], cl
jmp 0x46d35d
fld dword [ebp - 0x240]
fsub dword [ebp - 0x298]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x240]
fadd dword [ebp - 0x298]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x260]
fsub dword [ebp - 0x2d0]
fstp dword [ebp - 0x260]
fld dword [ebp - 0x2cc]
fmul dword [ebp - 0x240]
fstp dword [ebp - 0x2cc]
fld dword [ebp - 0x25c]
fdiv dword [ebp - 0x2cc]
fstp dword [ebp - 0x25c]
fld dword [ebp - 0x260]
fmul dword [ebp - 0x2d0]
fstp dword [ebp - 0x260]
fld dword [ebp - 0x25c]
fadd dword [ebp - 0x2cc]
fstp dword [ebp - 0x25c]
fld dword [ebp - 0x260]
fsub dword [ebp - 0x240]
fstp dword [ebp - 0x260]
fld dword [ebp - 0x2d0]
fmul dword [ebp - 0x298]
fstp dword [ebp - 0x2d0]
fld dword [ebp - 0x2cc]
fsub dword [ebp - 0x260]
fstp dword [ebp - 0x2cc]
fld dword [ebp - 0x23c]
fdiv dword [ebp - 0x2cc]
fstp dword [ebp - 0x23c]
fld dword [ebp - 0x2d0]
fsub dword [ebp - 0x298]
fstp dword [ebp - 0x2d0]
fld dword [ebp - 0x23c]
fadd dword [ebp - 0x2cc]
fstp dword [ebp - 0x23c]
fld dword [ebp - 0x25c]
fdiv dword [ebp - 0x23c]
fstp dword [ebp - 0x25c]
fld dword [ebp - 0x2d0]
fld dword [ebp - 0x25c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x46d2df
fld dword [ebp - 0x298]
fadd dword [ebp - 0x23c]
fstp dword [ebp - 0x298]
fld dword [ebp - 0x240]
fadd dword [ebp - 0x298]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x240]
fmul dword [ebp - 0x298]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x2d0]
fadd dword [ebp - 0x25c]
fstp dword [ebp - 0x2d0]
fld dword [ebp - 0x240]
fsub dword [ebp - 0x298]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x260]
fsub dword [ebp - 0x2d0]
fstp dword [ebp - 0x260]
fld dword [ebp - 0x23c]
fdiv dword [ebp - 0x260]
fstp dword [ebp - 0x23c]
jmp 0x46d35d
fld dword [ebp - 0x240]
fadd dword [ebp - 0x2d0]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x23c]
fmul dword [ebp - 0x2cc]
fstp dword [ebp - 0x23c]
fld dword [ebp - 0x2cc]
fsub dword [ebp - 0x260]
fstp dword [ebp - 0x2cc]
fld dword [ebp - 0x298]
fsub dword [ebp - 0x25c]
fstp dword [ebp - 0x298]
fld dword [ebp - 0x23c]
fadd dword [ebp - 0x2cc]
fstp dword [ebp - 0x23c]
fld dword [ebp - 0x240]
fadd dword [ebp - 0x2d0]
fstp dword [ebp - 0x240]
fld dword [ebp - 0x25c]
fsub dword [ebp - 0x23c]
fstp dword [ebp - 0x25c]
movzx edx, byte [ebp - 0x105]
movzx eax, byte [ebp - 0xf5]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x215]
movzx eax, byte [ebp - 0x105]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x21f]
movzx eax, byte [ebp - 0x215]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x21f]
mov al, byte [ebp - 0x2f5]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x2f5]
movzx edx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp - 0x20d]
add eax, edx
mov byte [ebp - 0x20d], al
movzx ecx, byte [ebp - 0x27d]
movzx edx, byte [ebp - 0x105]
movzx eax, byte [ebp + edx - 0x20c]
movzx edx, byte [ebp - 0x21f]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x20c]
xor ecx, eax
movzx edx, byte [ebp - 0x215]
movzx eax, byte [ebp + edx - 0x20c]
movzx edx, byte [ebp - 0xf5]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
movzx edx, byte [ebp - 0x20d]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp + eax - 0x20c]
xor ecx, edx
mov byte [ebp - 0x215], cl
mov al, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], al
mov cl, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], cl
cmp dword [ebp - 0x2bc], 0
jle 0x46d49b
movsx dx, byte [ebp - 0x2dd]
mov eax, dword [ebp - 0x2bc]
mov word [ebp + eax*2 - 0x76], dx
mov ecx, dword [ebp - 0x2b8]
add ecx, 0xa
mov dword [ebp - 0x2b8], ecx
mov edx, dword [ebp - 0x2bc]
add edx, 1
mov dword [ebp - 0x338], edx
jmp 0x46d4ca
mov eax, dword [ebp - 0x338]
add eax, 1
mov dword [ebp - 0x338], eax
mov ecx, dword [ebp - 0x338]
cmp ecx, dword [ebp - 0x2b8]
jge 0x46db83
mov edx, dword [ebp - 0x2bc]
add edx, 1
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp - 0x2bc]
shl eax, 1
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp - 0x100]
add ecx, dword [ebp - 0x238]
movzx edx, byte [ecx]
mov dword [ebp - 0x2ec], edx
mov dword [ebp - 0x270], 0x45
fld qword [0x9cb680]
fstp qword [ebp - 0x34c]
fld qword [0x9cb678]
fstp qword [ebp - 0x35c]
fld qword [0x9cb670]
fstp qword [ebp - 0x374]
fld qword [0x9cb668]
fstp qword [ebp - 0x384]
fld qword [0x9cb660]
fstp qword [ebp - 0x344]
fld qword [0x9cb658]
fstp qword [ebp - 0x354]
fld qword [0x9cb650]
fstp qword [ebp - 0x36c]
fld qword [ebp - 0x34c]
fadd qword [ebp - 0x36c]
fstp qword [ebp - 0x34c]
fld qword [ebp - 0x354]
fadd qword [ebp - 0x36c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x374]
fadd qword [ebp - 0x36c]
fstp qword [ebp - 0x374]
fld qword [ebp - 0x374]
fsub qword [ebp - 0x36c]
fstp qword [ebp - 0x374]
fld qword [ebp - 0x374]
fmul qword [ebp - 0x36c]
fstp qword [ebp - 0x374]
fld qword [ebp - 0x34c]
fadd qword [ebp - 0x36c]
fstp qword [ebp - 0x34c]
fld qword [ebp - 0x35c]
fadd qword [ebp - 0x36c]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x36c]
fcomp qword [ebp - 0x374]
fnstsw ax
test ah, 0x41
jne 0x46d817
fld qword [ebp - 0x35c]
fsub qword [ebp - 0x384]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x35c]
fadd qword [ebp - 0x384]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x34c]
fadd qword [ebp - 0x374]
fstp qword [ebp - 0x34c]
fld qword [ebp - 0x36c]
fmul qword [ebp - 0x35c]
fstp qword [ebp - 0x36c]
fld qword [ebp - 0x354]
fmul qword [ebp - 0x34c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x35c]
fadd qword [ebp - 0x384]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x354]
fadd qword [ebp - 0x34c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x36c]
fdiv qword [ebp - 0x35c]
fstp qword [ebp - 0x36c]
fld qword [ebp - 0x344]
fdiv qword [ebp - 0x36c]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x354]
fdiv qword [ebp - 0x34c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x344]
fsub qword [ebp - 0x36c]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x354]
fdiv qword [ebp - 0x34c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x354]
fdiv qword [ebp - 0x34c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x34c]
fdiv qword [ebp - 0x374]
fstp qword [ebp - 0x34c]
fld qword [ebp - 0x384]
fcomp qword [ebp - 0x35c]
fnstsw ax
test ah, 0x41
jne 0x46d794
fld qword [ebp - 0x35c]
fadd qword [ebp - 0x374]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x35c]
fmul qword [ebp - 0x374]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x36c]
fsub qword [ebp - 0x34c]
fstp qword [ebp - 0x36c]
fld qword [ebp - 0x354]
fsub qword [ebp - 0x36c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x384]
fadd qword [ebp - 0x344]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x374]
fadd qword [ebp - 0x384]
fstp qword [ebp - 0x374]
fld qword [ebp - 0x344]
fsub qword [ebp - 0x354]
fstp qword [ebp - 0x344]
jmp 0x46d812
fld qword [ebp - 0x384]
fadd qword [ebp - 0x344]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x35c]
fadd qword [ebp - 0x374]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x354]
fsub qword [ebp - 0x36c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x36c]
fmul qword [ebp - 0x34c]
fstp qword [ebp - 0x36c]
fld qword [ebp - 0x344]
fadd qword [ebp - 0x354]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x36c]
fmul qword [ebp - 0x34c]
fstp qword [ebp - 0x36c]
fld qword [ebp - 0x344]
fdiv qword [ebp - 0x354]
fstp qword [ebp - 0x344]
jmp 0x46d8a5
fld qword [ebp - 0x35c]
fadd qword [ebp - 0x374]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x344]
fadd qword [ebp - 0x354]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x354]
fmul qword [ebp - 0x36c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x384]
fsub qword [ebp - 0x344]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x384]
fsub qword [ebp - 0x344]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x354]
fsub qword [ebp - 0x36c]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x34c]
fmul qword [ebp - 0x35c]
fstp qword [ebp - 0x34c]
mov eax, dword [ebp - 0x2bc]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x294], ecx
mov edx, dword [ebp - 0x100]
add edx, dword [ebp - 0x294]
movzx eax, byte [edx]
mov dword [ebp - 0x308], eax
mov dword [ebp - 0x2e8], 0xa5
mov ecx, dword [ebp - 0x2ec]
sub ecx, dword [ebp - 0x270]
mov dword [ebp - 0x300], ecx
mov edx, dword [ebp - 0x308]
sub edx, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], edx
mov eax, dword [ebp - 0x300]
shl eax, 4
mov dword [ebp - 0x2fc], eax
mov ecx, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], ecx
mov edx, dword [ebp - 0x2fc]
or edx, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], edx
mov al, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], al
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + ecx - 0x20c]
mov byte [ebp - 0x2f5], dl
movzx eax, byte [ebp - 0x21f]
movzx ecx, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp - 0x105]
add edx, ecx
mov byte [ebp - 0x105], dl
mov al, byte [ebp - 0x21f]
add al, 1
mov byte [ebp - 0x21f], al
fld dword [0x9cb648]
fstp dword [ebp - 0x378]
fld dword [0x9cb644]
fstp dword [ebp - 0x33c]
fld dword [0x9cb640]
fstp dword [ebp - 0x360]
fld dword [ebp - 0x33c]
fsub dword [ebp - 0x360]
fstp dword [ebp - 0x33c]
fld dword [ebp - 0x378]
fadd dword [ebp - 0x360]
fstp dword [ebp - 0x378]
fld dword [ebp - 0x378]
fsub dword [ebp - 0x360]
fstp dword [ebp - 0x378]
fld dword [ebp - 0x33c]
fld dword [ebp - 0x378]
fcompp
fnstsw ax
test ah, 0x41
jne 0x46da24
fld dword [ebp - 0x33c]
fsub dword [ebp - 0x360]
fstp dword [ebp - 0x33c]
fld dword [ebp - 0x33c]
fmul dword [ebp - 0x360]
fstp dword [ebp - 0x33c]
fld dword [ebp - 0x360]
fmul dword [ebp - 0x378]
fstp dword [ebp - 0x360]
movzx ecx, byte [ebp - 0x105]
movzx edx, byte [ebp - 0xf5]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
jmp 0x46da5a
fld dword [ebp - 0x378]
fmul dword [ebp - 0x33c]
fstp dword [ebp - 0x378]
fld dword [ebp - 0x378]
fdiv dword [ebp - 0x33c]
fstp dword [ebp - 0x378]
fld dword [ebp - 0x360]
fmul dword [ebp - 0x378]
fstp dword [ebp - 0x360]
movzx ecx, byte [ebp - 0x215]
movzx edx, byte [ebp - 0x105]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x21f]
movzx edx, byte [ebp - 0x215]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x21f]
mov dl, byte [ebp - 0x2f5]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x2f5]
movzx ecx, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp - 0x20d]
add edx, ecx
mov byte [ebp - 0x20d], dl
movzx eax, byte [ebp - 0x27d]
movzx ecx, byte [ebp - 0x105]
movzx edx, byte [ebp + ecx - 0x20c]
movzx ecx, byte [ebp - 0x21f]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x20c]
xor eax, edx
movzx ecx, byte [ebp - 0x215]
movzx edx, byte [ebp + ecx - 0x20c]
movzx ecx, byte [ebp - 0xf5]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
movzx ecx, byte [ebp - 0x20d]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp + edx - 0x20c]
xor eax, ecx
mov byte [ebp - 0x215], al
mov dl, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], dl
mov al, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], al
cmp dword [ebp - 0x2bc], 0
jle 0x46db7e
movsx cx, byte [ebp - 0x2dd]
mov edx, dword [ebp - 0x2bc]
mov word [ebp + edx*2 - 0x76], cx
jmp 0x46d4bb
mov eax, dword [ebp - 0x2b8]
add eax, 1
mov dword [ebp - 0x2b8], eax
fld dword [0x9cb63c]
fstp dword [ebp - 0x2c8]
fld dword [0x9cb638]
fstp dword [ebp - 0x234]
fld dword [0x9cb634]
fstp dword [ebp - 0x258]
fld dword [ebp - 0x2c8]
fsub dword [ebp - 0x258]
fstp dword [ebp - 0x2c8]
fld dword [ebp - 0x234]
fmul dword [ebp - 0x258]
fstp dword [ebp - 0x234]
fld dword [ebp - 0x2c8]
fmul dword [ebp - 0x258]
fstp dword [ebp - 0x2c8]
fld dword [ebp - 0x258]
fld dword [ebp - 0x234]
fcompp
fnstsw ax
test ah, 0x41
jne 0x46dc48
fld dword [ebp - 0x2c8]
fadd dword [ebp - 0x258]
fstp dword [ebp - 0x2c8]
fld dword [ebp - 0x2c8]
fadd dword [ebp - 0x258]
fstp dword [ebp - 0x2c8]
fld dword [ebp - 0x258]
fsub dword [ebp - 0x234]
fstp dword [ebp - 0x258]
mov ecx, dword [ebp - 0x2bc]
add ecx, 1
mov dword [ebp - 0x2bc], ecx
jmp 0x46dc7e
fld dword [ebp - 0x258]
fsub dword [ebp - 0x234]
fstp dword [ebp - 0x258]
fld dword [ebp - 0x234]
fadd dword [ebp - 0x2c8]
fstp dword [ebp - 0x234]
fld dword [ebp - 0x234]
fsub dword [ebp - 0x2c8]
fstp dword [ebp - 0x234]
mov edx, dword [ebp - 0x2b8]
add edx, 1
mov dword [ebp - 0x2b8], edx
mov eax, dword [ebp - 0x2bc]
shl eax, 1
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp - 0x100]
add ecx, dword [ebp - 0x238]
movzx edx, byte [ecx]
mov dword [ebp - 0x2ec], edx
mov dword [ebp - 0x270], 0x45
mov eax, dword [ebp - 0x2bc]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x294], ecx
mov edx, dword [ebp - 0x100]
add edx, dword [ebp - 0x294]
movzx eax, byte [edx]
mov dword [ebp - 0x308], eax
mov dword [ebp - 0x2e8], 0xa5
mov ecx, dword [ebp - 0x2ec]
sub ecx, dword [ebp - 0x270]
mov dword [ebp - 0x300], ecx
mov edx, dword [ebp - 0x308]
sub edx, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], edx
mov eax, dword [ebp - 0x300]
shl eax, 4
mov dword [ebp - 0x2fc], eax
mov ecx, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], ecx
mov edx, dword [ebp - 0x2fc]
or edx, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], edx
mov al, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], al
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + ecx - 0x20c]
mov byte [ebp - 0x2f5], dl
movzx eax, byte [ebp - 0x21f]
movzx ecx, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp - 0x105]
add edx, ecx
mov byte [ebp - 0x105], dl
mov al, byte [ebp - 0x21f]
add al, 1
mov byte [ebp - 0x21f], al
movzx ecx, byte [ebp - 0x105]
movzx edx, byte [ebp - 0xf5]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x215]
movzx edx, byte [ebp - 0x105]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x21f]
movzx edx, byte [ebp - 0x215]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x21f]
mov dl, byte [ebp - 0x2f5]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x2f5]
movzx ecx, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp - 0x20d]
add edx, ecx
mov byte [ebp - 0x20d], dl
movzx eax, byte [ebp - 0x27d]
movzx ecx, byte [ebp - 0x105]
movzx edx, byte [ebp + ecx - 0x20c]
movzx ecx, byte [ebp - 0x21f]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x20c]
xor eax, edx
movzx ecx, byte [ebp - 0x215]
movzx edx, byte [ebp + ecx - 0x20c]
movzx ecx, byte [ebp - 0xf5]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
movzx ecx, byte [ebp - 0x20d]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp + edx - 0x20c]
xor eax, ecx
mov byte [ebp - 0x215], al
mov dl, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], dl
mov al, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], al
cmp dword [ebp - 0x2bc], 0
jle 0x46dec6
movsx cx, byte [ebp - 0x2dd]
mov edx, dword [ebp - 0x2bc]
mov word [ebp + edx*2 - 0x76], cx
mov eax, dword [ebp - 0x2bc]
add eax, 1
mov dword [ebp - 0x2bc], eax
mov ecx, dword [ebp - 0x2b8]
add ecx, 1
mov dword [ebp - 0x2b8], ecx
mov edx, dword [ebp - 0x2bc]
shl edx, 1
mov dword [ebp - 0x238], edx
mov eax, dword [ebp - 0x100]
add eax, dword [ebp - 0x238]
movzx ecx, byte [eax]
mov dword [ebp - 0x2ec], ecx
mov dword [ebp - 0x270], 0x45
mov edx, dword [ebp - 0x2bc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x294], eax
mov ecx, dword [ebp - 0x100]
add ecx, dword [ebp - 0x294]
movzx edx, byte [ecx]
mov dword [ebp - 0x308], edx
mov dword [ebp - 0x2e8], 0xa5
mov eax, dword [ebp - 0x2ec]
sub eax, dword [ebp - 0x270]
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x308]
sub ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], ecx
mov edx, dword [ebp - 0x300]
shl edx, 4
mov dword [ebp - 0x2fc], edx
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], eax
mov ecx, dword [ebp - 0x2fc]
or ecx, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], ecx
mov dl, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], dl
movzx eax, byte [ebp - 0xf5]
mov cl, byte [ebp + eax - 0x20c]
mov byte [ebp - 0x2f5], cl
movzx edx, byte [ebp - 0x21f]
movzx eax, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp - 0x105]
add ecx, eax
mov byte [ebp - 0x105], cl
mov dl, byte [ebp - 0x21f]
add dl, 1
mov byte [ebp - 0x21f], dl
movzx eax, byte [ebp - 0x105]
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x215]
movzx ecx, byte [ebp - 0x105]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x21f]
movzx ecx, byte [ebp - 0x215]
mov dl, byte [ebp + eax - 0x20c]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x21f]
mov cl, byte [ebp - 0x2f5]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x2f5]
movzx eax, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp - 0x20d]
add ecx, eax
mov byte [ebp - 0x20d], cl
movzx edx, byte [ebp - 0x27d]
movzx eax, byte [ebp - 0x105]
movzx ecx, byte [ebp + eax - 0x20c]
movzx eax, byte [ebp - 0x21f]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x20c]
xor edx, ecx
movzx eax, byte [ebp - 0x215]
movzx ecx, byte [ebp + eax - 0x20c]
movzx eax, byte [ebp - 0xf5]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
movzx eax, byte [ebp - 0x20d]
movzx eax, byte [ebp + eax - 0x20c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp + ecx - 0x20c]
xor edx, eax
mov byte [ebp - 0x215], dl
mov cl, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], cl
mov dl, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], dl
cmp dword [ebp - 0x2bc], 0
jle 0x46e11e
movsx ax, byte [ebp - 0x2dd]
mov ecx, dword [ebp - 0x2bc]
mov word [ebp + ecx*2 - 0x76], ax
mov edx, dword [ebp - 0x2bc]
add edx, 1
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp - 0x2b8]
add eax, 1
mov dword [ebp - 0x2b8], eax
mov ecx, dword [ebp - 0x2bc]
shl ecx, 1
mov dword [ebp - 0x238], ecx
mov edx, dword [ebp - 0x100]
add edx, dword [ebp - 0x238]
movzx eax, byte [edx]
mov dword [ebp - 0x2ec], eax
mov dword [ebp - 0x270], 0x45
mov ecx, dword [ebp - 0x2bc]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x294], edx
mov eax, dword [ebp - 0x100]
add eax, dword [ebp - 0x294]
movzx ecx, byte [eax]
mov dword [ebp - 0x308], ecx
mov dword [ebp - 0x2e8], 0xa5
mov edx, dword [ebp - 0x2ec]
sub edx, dword [ebp - 0x270]
mov dword [ebp - 0x300], edx
mov eax, dword [ebp - 0x308]
sub eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], eax
mov ecx, dword [ebp - 0x300]
shl ecx, 4
mov dword [ebp - 0x2fc], ecx
mov edx, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], edx
mov eax, dword [ebp - 0x2fc]
or eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], eax
mov cl, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], cl
movzx edx, byte [ebp - 0xf5]
mov al, byte [ebp + edx - 0x20c]
mov byte [ebp - 0x2f5], al
movzx ecx, byte [ebp - 0x21f]
movzx edx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp - 0x105]
add eax, edx
mov byte [ebp - 0x105], al
mov cl, byte [ebp - 0x21f]
add cl, 1
mov byte [ebp - 0x21f], cl
movzx edx, byte [ebp - 0x105]
movzx eax, byte [ebp - 0xf5]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x215]
movzx eax, byte [ebp - 0x105]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x21f]
movzx eax, byte [ebp - 0x215]
mov cl, byte [ebp + edx - 0x20c]
mov byte [ebp + eax - 0x20c], cl
movzx edx, byte [ebp - 0x21f]
mov al, byte [ebp - 0x2f5]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x2f5]
movzx edx, byte [ebp + ecx - 0x20c]
movzx eax, byte [ebp - 0x20d]
add eax, edx
mov byte [ebp - 0x20d], al
movzx ecx, byte [ebp - 0x27d]
movzx edx, byte [ebp - 0x105]
movzx eax, byte [ebp + edx - 0x20c]
movzx edx, byte [ebp - 0x21f]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x20c]
xor ecx, eax
movzx edx, byte [ebp - 0x215]
movzx eax, byte [ebp + edx - 0x20c]
movzx edx, byte [ebp - 0xf5]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
movzx edx, byte [ebp - 0x20d]
movzx edx, byte [ebp + edx - 0x20c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp + eax - 0x20c]
xor ecx, edx
mov byte [ebp - 0x215], cl
mov al, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], al
mov cl, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], cl
cmp dword [ebp - 0x2bc], 0
jle 0x46e374
movsx dx, byte [ebp - 0x2dd]
mov eax, dword [ebp - 0x2bc]
mov word [ebp + eax*2 - 0x76], dx
mov ecx, dword [ebp - 0x2bc]
add ecx, 1
mov dword [ebp - 0x2bc], ecx
mov edx, dword [ebp - 0x2b8]
add edx, 1
mov dword [ebp - 0x2b8], edx
mov eax, dword [ebp - 0x2bc]
shl eax, 1
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp - 0x100]
add ecx, dword [ebp - 0x238]
movzx edx, byte [ecx]
mov dword [ebp - 0x2ec], edx
mov dword [ebp - 0x270], 0x45
mov eax, dword [ebp - 0x2bc]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x294], ecx
mov edx, dword [ebp - 0x100]
add edx, dword [ebp - 0x294]
movzx eax, byte [edx]
mov dword [ebp - 0x308], eax
mov dword [ebp - 0x2e8], 0xa5
mov ecx, dword [ebp - 0x2ec]
sub ecx, dword [ebp - 0x270]
mov dword [ebp - 0x300], ecx
mov edx, dword [ebp - 0x308]
sub edx, dword [ebp - 0x2e8]
mov dword [ebp - 0x250], edx
mov eax, dword [ebp - 0x300]
shl eax, 4
mov dword [ebp - 0x2fc], eax
mov ecx, dword [ebp - 0x250]
mov dword [ebp - 0x2e4], ecx
mov edx, dword [ebp - 0x2fc]
or edx, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b0], edx
mov al, byte [ebp - 0x2b0]
mov byte [ebp - 0x27d], al
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + ecx - 0x20c]
mov byte [ebp - 0x2f5], dl
movzx eax, byte [ebp - 0x21f]
movzx ecx, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp - 0x105]
add edx, ecx
mov byte [ebp - 0x105], dl
mov al, byte [ebp - 0x21f]
add al, 1
mov byte [ebp - 0x21f], al
movzx ecx, byte [ebp - 0x105]
movzx edx, byte [ebp - 0xf5]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x215]
movzx edx, byte [ebp - 0x105]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x21f]
movzx edx, byte [ebp - 0x215]
mov al, byte [ebp + ecx - 0x20c]
mov byte [ebp + edx - 0x20c], al
movzx ecx, byte [ebp - 0x21f]
mov dl, byte [ebp - 0x2f5]
mov byte [ebp + ecx - 0x20c], dl
movzx eax, byte [ebp - 0x2f5]
movzx ecx, byte [ebp + eax - 0x20c]
movzx edx, byte [ebp - 0x20d]
add edx, ecx
mov byte [ebp - 0x20d], dl
fld dword [0x9cb630]
fstp dword [ebp - 0x290]
fld dword [0x9cb62c]
fstp dword [ebp - 0x2c4]
fld dword [0x9cb628]
fstp dword [ebp - 0x230]
fld dword [ebp - 0x290]
fadd dword [ebp - 0x230]
fstp dword [ebp - 0x290]
fld dword [ebp - 0x2c4]
fadd dword [ebp - 0x230]
fstp dword [ebp - 0x2c4]
fld dword [ebp - 0x2c4]
fmul dword [ebp - 0x230]
fstp dword [ebp - 0x2c4]
fld dword [ebp - 0x230]
fld dword [ebp - 0x2c4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x46e642
fld dword [ebp - 0x290]
fadd dword [ebp - 0x2c4]
fstp dword [ebp - 0x290]
fld dword [ebp - 0x2c4]
fadd dword [ebp - 0x230]
fstp dword [ebp - 0x2c4]
fld dword [ebp - 0x230]
fadd dword [ebp - 0x290]
fstp dword [ebp - 0x230]
movzx eax, byte [ebp - 0x27d]
movzx ecx, byte [ebp - 0x105]
movzx edx, byte [ebp + ecx - 0x20c]
movzx ecx, byte [ebp - 0x21f]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x20c]
xor eax, edx
movzx ecx, byte [ebp - 0x215]
movzx edx, byte [ebp + ecx - 0x20c]
movzx ecx, byte [ebp - 0xf5]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
movzx ecx, byte [ebp - 0x20d]
movzx ecx, byte [ebp + ecx - 0x20c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x20c]
movzx ecx, byte [ebp + edx - 0x20c]
xor eax, ecx
mov byte [ebp - 0x215], al
jmp 0x46e678
fld dword [ebp - 0x290]
fsub dword [ebp - 0x2c4]
fstp dword [ebp - 0x290]
fld dword [ebp - 0x290]
fadd dword [ebp - 0x2c4]
fstp dword [ebp - 0x290]
fld dword [ebp - 0x2c4]
fdiv dword [ebp - 0x230]
fstp dword [ebp - 0x2c4]
mov dl, byte [ebp - 0x27d]
mov byte [ebp - 0xf5], dl
mov al, byte [ebp - 0x215]
mov byte [ebp - 0x2dd], al
cmp dword [ebp - 0x2bc], 0
jle 0x46e6ac
movsx cx, byte [ebp - 0x2dd]
mov edx, dword [ebp - 0x2bc]
mov word [ebp + edx*2 - 0x76], cx
xor eax, eax
mov word [ebp - 0x3e], ax
jmp 0x46e6e7
mov dword [ebp - 0x388], 0
jmp 0x46e6cf
mov ecx, dword [ebp - 0x388]
add ecx, 1
mov dword [ebp - 0x388], ecx
cmp dword [ebp - 0x388], 0x1c
jge 0x46e6e7
xor edx, edx
mov eax, dword [ebp - 0x388]
mov word [ebp + eax*2 - 0x74], dx
jmp 0x46e6c0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0
fldz
fstp qword [ebp - 0x3c]
fldz
fstp qword [ebp - 0xf4]
fldz
fstp qword [ebp - 0xf4]
jmp 0x46e724
fld qword [ebp - 0xf4]
fadd qword [0x9c9c40]
fstp qword [ebp - 0xf4]
fld qword [0x9cb620]
fcomp qword [ebp - 0xf4]
fnstsw ax
test ah, 0x41
jne 0x46e79e
fld qword [0x9cb618]
fmul qword [ebp - 0xf4]
fmul qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
fmul qword [ebp - 0xf4]
fsubp st(1)
fld qword [0x9cb610]
fmul qword [ebp - 0xf4]
fmul qword [ebp - 0xf4]
fadd qword [0x9cb608]
fdivp st(1)
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [0x9ca3d0]
fcomp qword [ebp - 0x3c]
fnstsw ax
test ah, 5
jp 0x46e799
fld qword [0x9cb600]
fmul qword [ebp - 0xf4]
fsubr qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
jmp 0x46e712
fldz
fcomp qword [ebp - 0x3c]
fnstsw ax
test ah, 0x41
jne 0x46e817
pushal
cmpsd dword [esi], dword es:[edi]
pop edi
movsd dword es:[edi], dword [esi]
pop ebp
lahf
push esi
mov al, byte [0xa25aaa58]
push edi
cmpsd dword [esi], dword es:[edi]
push ebx
sahf
push edi
stosb byte es:[edi], al
pop ebx
mov eax, dword [0xa354a25c]
pop esp
popfd
push edx
sahf
pop eax
mov eax, dword [0xa55eaa5c]
pop eax
mov dword [0x9b58a459], eax
pop eax
test eax, 0xa75e9d58
pop eax
stosb byte es:[edi], al
push edi
sahf
push edi
lahf
push esi
cmpsb byte [esi], byte es:[edi]
pop esp
movsd dword es:[edi], dword [esi]
pop edi
cmpsb byte [esi], byte es:[edi]
push edx
mov byte [0xaa55a85f], al
push esi
pushfd
pop eax
movsb byte es:[edi], byte [esi]
pushal
mov eax, dword [0x3c26a25e]
jle 0x46e864
imul edx, dword [esi + 0x72], 0x7b
ja 0x46e852
and al, 0x5a
jb 0x46e832
inc ebp
jge 0x46e877
jl 0x46e833
push esp
inc edx
xor eax, 0x2e5c4729
xor dword [edi + esi*2], esi
dec esi
jmp 0x4702e5
mov dword [ebp - 0x98], 0x46e7aa
mov dword [ebp - 0x94], 0x46e7f2
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0x394], ecx
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x390], edx
mov byte [ebp - 0x4ad], 0x24
mov dword [ebp - 0x4a4], 0
lea ebp, [esp + edi*8 - 1]
dec dword [ebx - 0x936b]
dec dword [ecx - 0x38f6b]
inc esi
test dword [ebx - 5], edx
invalid
insb byte es:[edi], dx
cld
invalid
add byte [eax], al
jmp 0x46e865
mov eax, dword [ebp - 0x4a4]
add eax, 1
mov dword [ebp - 0x4a4], eax
inc dword [ecx - 0x4a343]
inc dword [eax]
add dword [eax], eax
add byte [ebx + 0x15], dh
cmp dword [ebp - 0x4a4], 0x100
jae 0x46e886
mov ecx, dword [ebp - 0x4a4]
mov dl, byte [ebp - 0x4a4]
mov byte [ebp + ecx - 0x49c], dl
jmp 0x46e856
mov dword [ebp - 0x398], 0
mov byte [ebp - 0x4ae], 0
mov dword [ebp - 0x4a4], 0xff
jmp 0x46e8b2
mov eax, dword [ebp - 0x4a4]
sub eax, 1
mov dword [ebp - 0x4a4], eax
cmp dword [ebp - 0x4a4], 0
jbe 0x46ebbe
mov dword [ebp - 0x4b4], 0
mov dword [ebp - 0x4bc], 1
mov ecx, dword [ebp - 0x4bc]
cmp ecx, dword [ebp - 0x4a4]
jae 0x46e8f3
mov edx, dword [ebp - 0x4bc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x4bc], eax
jmp 0x46e8d3
mov ecx, dword [ebp - 0x398]
mov dword [ebp - 0x6c8], ecx
cmp dword [ebp - 0x6c8], 3
ja case.default.0x46e912
mov edx, dword [ebp - 0x6c8]
jmp dword [edx*4 + 0x470414]
movzx eax, byte [ebp - 0x4ae]
movzx ecx, byte [ebp + eax - 0x49c]
fld qword [ebp - 0x3c]
fnstcw word [ebp - 0x6ca]
movzx eax, word [ebp - 0x6ca]
or eax, 0xc00
mov dword [ebp - 0x6d0], eax
fldcw word [ebp - 0x6d0]
fistp qword [ebp - 0x6d8]
fldcw word [ebp - 0x6ca]
mov edx, dword [ebp - 0x6d8]
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x4ae], cl
jmp 0x46ea97
movzx eax, byte [ebp - 0x4ae]
movzx ecx, byte [ebp + eax - 0x49c]
fld qword [ebp - 0x3c]
fnstcw word [ebp - 0x6da]
movzx eax, word [ebp - 0x6da]
or eax, 0xc00
mov dword [ebp - 0x6e0], eax
fldcw word [ebp - 0x6e0]
fistp qword [ebp - 0x6e8]
fldcw word [ebp - 0x6da]
mov edx, dword [ebp - 0x6e8]
shr edx, 8
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x4ae], cl
jmp 0x46ea97
movzx eax, byte [ebp - 0x4ae]
movzx ecx, byte [ebp + eax - 0x49c]
fld qword [ebp - 0x3c]
fnstcw word [ebp - 0x6ea]
movzx eax, word [ebp - 0x6ea]
or eax, 0xc00
mov dword [ebp - 0x6f0], eax
fldcw word [ebp - 0x6f0]
fistp qword [ebp - 0x6f8]
fldcw word [ebp - 0x6ea]
mov edx, dword [ebp - 0x6f8]
shr edx, 0x10
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x4ae], cl
jmp 0x46ea97
movzx eax, byte [ebp - 0x4ae]
movzx ecx, byte [ebp + eax - 0x49c]
fld qword [ebp - 0x3c]
fnstcw word [ebp - 0x6fa]
movzx eax, word [ebp - 0x6fa]
or eax, 0xc00
mov dword [ebp - 0x700], eax
fldcw word [ebp - 0x700]
fistp qword [ebp - 0x708]
fldcw word [ebp - 0x6fa]
mov edx, dword [ebp - 0x708]
shr edx, 0x18
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x4ae], cl
jmp 0x46ea97
movzx eax, byte [ebp - 0x4ae]
movzx ecx, byte [ebp + eax - 0x49c]
mov edx, dword [ebp - 0x390]
add edx, dword [ebp - 0x398]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0x4ae], cl
mov ecx, dword [ebp - 0x398]
add ecx, 1
mov dword [ebp - 0x398], ecx
movzx edx, byte [ebp - 0x4ad]
cmp dword [ebp - 0x398], edx
jb 0x46ead5
mov dword [ebp - 0x398], 0
movzx eax, byte [ebp - 0x4ad]
movzx ecx, byte [ebp - 0x4ae]
add ecx, eax
mov byte [ebp - 0x4ae], cl
movzx edx, byte [ebp - 0x4ae]
and edx, dword [ebp - 0x4bc]
mov dword [ebp - 0x4b8], edx
mov eax, dword [ebp - 0x4b4]
add eax, 1
mov dword [ebp - 0x4b4], eax
cmp dword [ebp - 0x4b4], 0xb
jbe 0x46eb14
mov eax, dword [ebp - 0x4b8]
xor edx, edx
div dword [ebp - 0x4a4]
mov dword [ebp - 0x4b8], edx
mov ecx, dword [ebp - 0x4b8]
cmp ecx, dword [ebp - 0x4a4]
ja 0x46e8f3
mov edx, dword [ebp - 0x4a4]
cmp edx, dword [ebp - 0x4b8]
je 0x46ebb9
mov eax, dword [ebp - 0x4b8]
movzx ecx, byte [ebp + eax - 0x49c]
mov edx, dword [ebp - 0x4a4]
movzx eax, byte [ebp + edx - 0x49c]
xor eax, ecx
mov ecx, dword [ebp - 0x4a4]
mov byte [ebp + ecx - 0x49c], al
mov edx, dword [ebp - 0x4a4]
movzx eax, byte [ebp + edx - 0x49c]
mov ecx, dword [ebp - 0x4b8]
movzx edx, byte [ebp + ecx - 0x49c]
xor edx, eax
mov eax, dword [ebp - 0x4b8]
mov byte [ebp + eax - 0x49c], dl
mov ecx, dword [ebp - 0x4b8]
movzx edx, byte [ebp + ecx - 0x49c]
mov eax, dword [ebp - 0x4a4]
movzx ecx, byte [ebp + eax - 0x49c]
xor ecx, edx
mov edx, dword [ebp - 0x4a4]
mov byte [ebp + edx - 0x49c], cl
jmp 0x46e8a3
mov al, byte [ebp - 0x49b]
mov byte [ebp - 0x4af], al
mov cl, byte [ebp - 0x499]
mov byte [ebp - 0x399], cl
mov dl, byte [ebp - 0x497]
mov byte [ebp - 0x49d], dl
mov al, byte [ebp - 0x495]
mov byte [ebp - 0x4a5], al
movzx ecx, byte [ebp - 0x4ae]
mov dl, byte [ebp + ecx - 0x49c]
mov byte [ebp - 0x389], dl
mov dword [ebp - 0x4ac], 0x48
cmp dword [ebp - 0x4ac], 2
jle 0x4702af
mov eax, dword [ebp - 0x4ac]
and eax, 1
jne 0x4702af
mov dword [ebp - 0x500], 0
mov dword [ebp - 0x4fc], 0
mov ecx, dword [ebp - 0x4fc]
add ecx, 1
mov dword [ebp - 0x4fc], ecx
mov dword [ebp - 0x4c0], 0
mov edx, dword [ebp - 0x500]
shl edx, 1
mov dword [ebp - 0x4c0], edx
mov dword [ebp - 0x518], 0
mov eax, dword [ebp - 0x394]
add eax, dword [ebp - 0x4c0]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x518]
mov dword [ebp - 0x518], ecx
mov dword [ebp - 0x4dc], 0
mov edx, dword [ebp - 0x4dc]
add edx, 0x52
mov dword [ebp - 0x4dc], edx
mov dword [ebp - 0x4ec], 0
mov eax, dword [ebp - 0x500]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x4ec], ecx
mov dword [ebp - 0x52c], 0
mov edx, dword [ebp - 0x394]
add edx, dword [ebp - 0x4ec]
movzx eax, byte [edx]
add eax, dword [ebp - 0x52c]
mov dword [ebp - 0x52c], eax
mov dword [ebp - 0x514], 0
mov ecx, dword [ebp - 0x514]
add ecx, 0x9b
mov dword [ebp - 0x514], ecx
mov dword [ebp - 0x528], 0
mov edx, dword [ebp - 0x518]
sub edx, dword [ebp - 0x4dc]
add edx, dword [ebp - 0x528]
mov dword [ebp - 0x528], edx
mov dword [ebp - 0x4cc], 0
mov eax, dword [ebp - 0x52c]
sub eax, dword [ebp - 0x514]
add eax, dword [ebp - 0x4cc]
mov dword [ebp - 0x4cc], eax
mov dword [ebp - 0x524], 0
mov ecx, dword [ebp - 0x528]
shl ecx, 4
mov dword [ebp - 0x524], ecx
mov dword [ebp - 0x510], 0
mov edx, dword [ebp - 0x4cc]
mov dword [ebp - 0x510], edx
mov dword [ebp - 0x4f8], 0
mov eax, dword [ebp - 0x524]
or eax, dword [ebp - 0x510]
mov dword [ebp - 0x4f8], eax
mov byte [ebp - 0x4e5], 0
mov cl, byte [ebp - 0x4f8]
mov byte [ebp - 0x4e5], cl
mov byte [ebp - 0x51d], 0
movzx edx, byte [ebp - 0x389]
mov al, byte [ebp + edx - 0x49c]
mov byte [ebp - 0x51d], al
movzx ecx, byte [ebp - 0x4af]
movzx edx, byte [ebp + ecx - 0x49c]
movzx eax, byte [ebp - 0x399]
add eax, edx
mov byte [ebp - 0x399], al
mov cl, byte [ebp - 0x4af]
add cl, 1
mov byte [ebp - 0x4af], cl
movzx edx, byte [ebp - 0x399]
movzx eax, byte [ebp - 0x389]
mov cl, byte [ebp + edx - 0x49c]
mov byte [ebp + eax - 0x49c], cl
movzx edx, byte [ebp - 0x4a5]
movzx eax, byte [ebp - 0x399]
mov cl, byte [ebp + edx - 0x49c]
mov byte [ebp + eax - 0x49c], cl
movzx edx, byte [ebp - 0x4af]
movzx eax, byte [ebp - 0x4a5]
mov cl, byte [ebp + edx - 0x49c]
mov byte [ebp + eax - 0x49c], cl
movzx edx, byte [ebp - 0x4af]
mov al, byte [ebp - 0x51d]
mov byte [ebp + edx - 0x49c], al
movzx ecx, byte [ebp - 0x51d]
movzx edx, byte [ebp + ecx - 0x49c]
movzx eax, byte [ebp - 0x49d]
add eax, edx
mov byte [ebp - 0x49d], al
movzx ecx, byte [ebp - 0x4e5]
movzx edx, byte [ebp - 0x399]
movzx eax, byte [ebp + edx - 0x49c]
movzx edx, byte [ebp - 0x4af]
movzx edx, byte [ebp + edx - 0x49c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x49c]
xor ecx, eax
movzx edx, byte [ebp - 0x4a5]
movzx eax, byte [ebp + edx - 0x49c]
movzx edx, byte [ebp - 0x389]
movzx edx, byte [ebp + edx - 0x49c]
add eax, edx
movzx edx, byte [ebp - 0x49d]
movzx edx, byte [ebp + edx - 0x49c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x49c]
movzx edx, byte [ebp + eax - 0x49c]
xor ecx, edx
mov byte [ebp - 0x4a5], cl
mov al, byte [ebp - 0x4e5]
mov byte [ebp - 0x389], al
mov cl, byte [ebp - 0x4a5]
mov byte [ebp - 0x509], cl
cmp dword [ebp - 0x500], 0
jle 0x46ef27
movsx dx, byte [ebp - 0x509]
mov eax, dword [ebp - 0x500]
mov word [ebp + eax*2 - 0xe6], dx
mov ecx, dword [ebp - 0x4fc]
add ecx, 0x10
mov dword [ebp - 0x4fc], ecx
mov edx, dword [ebp - 0x500]
add edx, 1
mov dword [ebp - 0x530], edx
jmp 0x46ef56
mov eax, dword [ebp - 0x530]
add eax, 1
mov dword [ebp - 0x530], eax
mov ecx, dword [ebp - 0x530]
cmp ecx, dword [ebp - 0x4fc]
jge 0x46f1b8
mov edx, dword [ebp - 0x500]
add edx, 1
mov dword [ebp - 0x500], edx
mov eax, dword [ebp - 0x500]
shl eax, 1
mov dword [ebp - 0x4c0], eax
mov ecx, dword [ebp - 0x394]
add ecx, dword [ebp - 0x4c0]
movzx edx, byte [ecx]
mov dword [ebp - 0x518], edx
mov dword [ebp - 0x4dc], 0x52
mov eax, dword [ebp - 0x500]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x4ec], ecx
mov edx, dword [ebp - 0x394]
add edx, dword [ebp - 0x4ec]
movzx eax, byte [edx]
mov dword [ebp - 0x52c], eax
mov dword [ebp - 0x514], 0x9b
mov ecx, dword [ebp - 0x518]
sub ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x528], ecx
mov edx, dword [ebp - 0x52c]
sub edx, dword [ebp - 0x514]
mov dword [ebp - 0x4cc], edx
mov eax, dword [ebp - 0x528]
shl eax, 4
mov dword [ebp - 0x524], eax
mov ecx, dword [ebp - 0x4cc]
mov dword [ebp - 0x510], ecx
mov edx, dword [ebp - 0x524]
or edx, dword [ebp - 0x510]
mov dword [ebp - 0x4f8], edx
mov al, byte [ebp - 0x4f8]
mov byte [ebp - 0x4e5], al
movzx ecx, byte [ebp - 0x389]
mov dl, byte [ebp + ecx - 0x49c]
mov byte [ebp - 0x51d], dl
movzx eax, byte [ebp - 0x4af]
movzx ecx, byte [ebp + eax - 0x49c]
movzx edx, byte [ebp - 0x399]
add edx, ecx
mov byte [ebp - 0x399], dl
mov al, byte [ebp - 0x4af]
add al, 1
mov byte [ebp - 0x4af], al
movzx ecx, byte [ebp - 0x399]
movzx edx, byte [ebp - 0x389]
mov al, byte [ebp + ecx - 0x49c]
mov byte [ebp + edx - 0x49c], al
movzx ecx, byte [ebp - 0x4a5]
movzx edx, byte [ebp - 0x399]
mov al, byte [ebp + ecx - 0x49c]
mov byte [ebp + edx - 0x49c], al
movzx ecx, byte [ebp - 0x4af]
movzx edx, byte [ebp - 0x4a5]
mov al, byte [ebp + ecx - 0x49c]
mov byte [ebp + edx - 0x49c], al
movzx ecx, byte [ebp - 0x4af]
mov dl, byte [ebp - 0x51d]
mov byte [ebp + ecx - 0x49c], dl
movzx eax, byte [ebp - 0x51d]
movzx ecx, byte [ebp + eax - 0x49c]
movzx edx, byte [ebp - 0x49d]
add edx, ecx
mov byte [ebp - 0x49d], dl
movzx eax, byte [ebp - 0x4e5]
movzx ecx, byte [ebp - 0x399]
movzx edx, byte [ebp + ecx - 0x49c]
movzx ecx, byte [ebp - 0x4af]
movzx ecx, byte [ebp + ecx - 0x49c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x49c]
xor eax, edx
movzx ecx, byte [ebp - 0x4a5]
movzx edx, byte [ebp + ecx - 0x49c]
movzx ecx, byte [ebp - 0x389]
movzx ecx, byte [ebp + ecx - 0x49c]
add edx, ecx
movzx ecx, byte [ebp - 0x49d]
movzx ecx, byte [ebp + ecx - 0x49c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x49c]
movzx ecx, byte [ebp + edx - 0x49c]
xor eax, ecx
mov byte [ebp - 0x4a5], al
mov dl, byte [ebp - 0x4e5]
mov byte [ebp - 0x389], dl
mov al, byte [ebp - 0x4a5]
mov byte [ebp - 0x509], al
cmp dword [ebp - 0x500], 0
jle 0x46f1b3
movsx cx, byte [ebp - 0x509]
mov edx, dword [ebp - 0x500]
mov word [ebp + edx*2 - 0xe6], cx
jmp 0x46ef47
mov eax, dword [ebp - 0x4fc]
add eax, 1
mov dword [ebp - 0x4fc], eax
mov ecx, dword [ebp - 0x500]
add ecx, 1
mov dword [ebp - 0x500], ecx
mov edx, dword [ebp - 0x4fc]
add edx, 1
mov dword [ebp - 0x4fc], edx
mov eax, dword [ebp - 0x500]
shl eax, 1
mov dword [ebp - 0x4c0], eax
mov ecx, dword [ebp - 0x394]
add ecx, dword [ebp - 0x4c0]
movzx edx, byte [ecx]
mov dword [ebp - 0x518], edx
mov dword [ebp - 0x4dc], 0x52
mov eax, dword [ebp - 0x500]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x4ec], ecx
mov edx, dword [ebp - 0x394]
add edx, dword [ebp - 0x4ec]
movzx eax, byte [edx]
mov dword [ebp - 0x52c], eax
mov dword [ebp - 0x514], 0x9b
mov ecx, dword [ebp - 0x518]
sub ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x528], ecx
mov edx, dword [ebp - 0x52c]
sub edx, dword [ebp - 0x514]
mov dword [ebp - 0x4cc], edx
mov eax, dword [ebp - 0x528]
shl eax, 4
mov dword [ebp - 0x524], eax
mov ecx, dword [ebp - 0x4cc]
mov dword [ebp - 0x510], ecx
mov edx, dword [ebp - 0x524]
or edx, dword [ebp - 0x510]
mov dword [ebp - 0x4f8], edx
mov al, byte [ebp - 0x4f8]
mov byte [ebp - 0x4e5], al
movzx ecx, byte [ebp - 0x389]
mov dl, byte [ebp + ecx - 0x49c]
mov byte [ebp - 0x51d], dl
fld dword [0x9cb5fc]
fstp dword [ebp - 0x4e4]
fld dword [0x9cb5f8]
fstp dword [ebp - 0x4d0]
fld dword [0x9cb5f4]
fstp dword [ebp - 0x51c]
fld dword [0x9cb5f0]
fstp dword [ebp - 0x4f4]
fld dword [0x9cb5ec]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x4e4]
fadd dword [ebp - 0x4e0]
fstp dword [ebp - 0x4e4]
fld dword [ebp - 0x4f4]
fadd dword [ebp - 0x4e0]
fstp dword [ebp - 0x4f4]
fld dword [ebp - 0x4e4]
fmul dword [ebp - 0x4e0]
fstp dword [ebp - 0x4e4]
fld dword [ebp - 0x51c]
fadd dword [ebp - 0x4e0]
fstp dword [ebp - 0x51c]
fld dword [ebp - 0x4d0]
fsub dword [ebp - 0x4e0]
fstp dword [ebp - 0x4d0]
fld dword [ebp - 0x4e0]
fld dword [ebp - 0x4e4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x46f3ec
fld dword [ebp - 0x4f4]
fadd dword [ebp - 0x4e4]
fstp dword [ebp - 0x4f4]
fld dword [ebp - 0x4f4]
fsub dword [ebp - 0x4e4]
fstp dword [ebp - 0x4f4]
fld dword [ebp - 0x4e0]
fmul dword [ebp - 0x4d0]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x4e0]
fmul dword [ebp - 0x4d0]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x4e4]
fadd dword [ebp - 0x51c]
fstp dword [ebp - 0x4e4]
movzx eax, byte [ebp - 0x4af]
movzx ecx, byte [ebp + eax - 0x49c]
movzx edx, byte [ebp - 0x399]
add edx, ecx
mov byte [ebp - 0x399], dl
mov al, byte [ebp - 0x4af]
add al, 1
mov byte [ebp - 0x4af], al
jmp 0x46f56b
fld dword [ebp - 0x4d0]
fadd dword [ebp - 0x51c]
fstp dword [ebp - 0x4d0]
fld dword [ebp - 0x4d0]
fmul dword [ebp - 0x51c]
fstp dword [ebp - 0x4d0]
fld dword [ebp - 0x51c]
fmul dword [ebp - 0x4f4]
fstp dword [ebp - 0x51c]
fld dword [ebp - 0x4e0]
fdiv dword [ebp - 0x4e4]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x51c]
fdiv dword [ebp - 0x4f4]
fstp dword [ebp - 0x51c]
fld dword [ebp - 0x51c]
fsub dword [ebp - 0x4e0]
fstp dword [ebp - 0x51c]
fld dword [ebp - 0x4e0]
fmul dword [ebp - 0x4d0]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x4e4]
fsub dword [ebp - 0x51c]
fstp dword [ebp - 0x4e4]
fld dword [ebp - 0x51c]
fsub dword [ebp - 0x4e0]
fstp dword [ebp - 0x51c]
fld dword [ebp - 0x4e4]
fdiv dword [ebp - 0x51c]
fstp dword [ebp - 0x4e4]
fld dword [ebp - 0x4d0]
fld dword [ebp - 0x4f4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x46f511
fld dword [ebp - 0x4e0]
fadd dword [ebp - 0x4d0]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x51c]
fadd dword [ebp - 0x4e0]
fstp dword [ebp - 0x51c]
fld dword [ebp - 0x51c]
fadd dword [ebp - 0x4e0]
fstp dword [ebp - 0x51c]
fld dword [ebp - 0x4d0]
fmul dword [ebp - 0x4f4]
fstp dword [ebp - 0x4d0]
fld dword [ebp - 0x4e0]
fadd dword [ebp - 0x4d0]
fstp dword [ebp - 0x4e0]
jmp 0x46f56b
fld dword [ebp - 0x4e0]
fmul dword [ebp - 0x4e4]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x4e0]
fdiv dword [ebp - 0x4e4]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x4e0]
fmul dword [ebp - 0x4e4]
fstp dword [ebp - 0x4e0]
fld dword [ebp - 0x4d0]
fdiv dword [ebp - 0x51c]
fstp dword [ebp - 0x4d0]
fld dword [ebp - 0x4d0]
fmul dword [ebp - 0x51c]
fstp dword [ebp - 0x4d0]
movzx ecx, byte [ebp - 0x399]
movzx edx, byte [ebp - 0x389]
mov al, byte [ebp + ecx - 0x49c]
mov byte [ebp + edx - 0x49c], al
movzx ecx, byte [ebp - 0x4a5]
movzx edx, byte [ebp - 0x399]
mov al, byte [ebp + ecx - 0x49c]
mov byte [ebp + edx - 0x49c], al
movzx ecx, byte [ebp - 0x4af]
movzx edx, byte [ebp - 0x4a5]
mov al, byte [ebp + ecx - 0x49c]
mov byte [ebp + edx - 0x49c], al
fld dword [0x9cb5e8]
fstp dword [ebp - 0x508]
fld dword [0x9cb5e4]
fstp dword [ebp - 0x4c8]
fld dword [0x9cb5e0]
fstp dword [ebp - 0x4d8]
fld dword [0x9cb5dc]
fstp dword [ebp - 0x4f0]
fld dword [0x9cb5d8]
fstp dword [ebp - 0x504]
fld dword [0x9cb5d4]
fstp dword [ebp - 0x4c4]
fld dword [0x9cb5d0]
fstp dword [ebp - 0x4d4]
fld dword [ebp - 0x4c4]
fmul dword [ebp - 0x4d4]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x504]
fmul dword [ebp - 0x4d4]
fstp dword [ebp - 0x504]
fld dword [ebp - 0x4f0]
fadd dword [ebp - 0x4d4]
fstp dword [ebp - 0x4f0]
fld dword [ebp - 0x4c4]
fsub dword [ebp - 0x4d4]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x504]
fadd dword [ebp - 0x4d4]
fstp dword [ebp - 0x504]
fld dword [ebp - 0x4c8]
fsub dword [ebp - 0x4d4]
fstp dword [ebp - 0x4c8]
fld dword [ebp - 0x4f0]
fmul dword [ebp - 0x4d4]
fstp dword [ebp - 0x4f0]
fld dword [ebp - 0x4d4]
fld dword [ebp - 0x4f0]
fcompp
fnstsw ax
test ah, 5
jp 0x46f8c2
fld dword [ebp - 0x4f0]
fdiv dword [ebp - 0x504]
fstp dword [ebp - 0x4f0]
fld dword [ebp - 0x4d4]
fdiv dword [ebp - 0x508]
fstp dword [ebp - 0x4d4]
fld dword [ebp - 0x4d4]
fmul dword [ebp - 0x508]
fstp dword [ebp - 0x4d4]
fld dword [ebp - 0x4c4]
fdiv dword [ebp - 0x4d4]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x4c8]
fdiv dword [ebp - 0x4d8]
fstp dword [ebp - 0x4c8]
fld dword [ebp - 0x4d8]
fsub dword [ebp - 0x4f0]
fstp dword [ebp - 0x4d8]
fld dword [ebp - 0x4d8]
fadd dword [ebp - 0x4f0]
fstp dword [ebp - 0x4d8]
fld dword [ebp - 0x504]
fmul dword [ebp - 0x4c4]
fstp dword [ebp - 0x504]
fld dword [ebp - 0x4c4]
fsub dword [ebp - 0x4d4]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x4d8]
fdiv dword [ebp - 0x4f0]
fstp dword [ebp - 0x4d8]
fld dword [ebp - 0x4c8]
fadd dword [ebp - 0x4d8]
fstp dword [ebp - 0x4c8]
fld dword [ebp - 0x504]
fsub dword [ebp - 0x4c4]
fstp dword [ebp - 0x504]
fld dword [ebp - 0x4c8]
fsub dword [ebp - 0x4d8]
fstp dword [ebp - 0x4c8]
fld dword [ebp - 0x4c4]
fmul dword [ebp - 0x4d4]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x508]
fld dword [ebp - 0x4d8]
fcompp
fnstsw ax
test ah, 0x41
jne 0x46f83f
fld dword [ebp - 0x4d4]
fadd dword [ebp - 0x508]
fstp dword [ebp - 0x4d4]
fld dword [ebp - 0x4c4]
fmul dword [ebp - 0x4d4]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x4d8]
fmul dword [ebp - 0x4f0]
fstp dword [ebp - 0x4d8]
fld dword [ebp - 0x4d8]
fdiv dword [ebp - 0x4f0]
fstp dword [ebp - 0x4d8]
fld dword [ebp - 0x4d8]
fsub dword [ebp - 0x4f0]
fstp dword [ebp - 0x4d8]
fld dword [ebp - 0x508]
fdiv dword [ebp - 0x4c8]
fstp dword [ebp - 0x508]
fld dword [ebp - 0x508]
fmul dword [ebp - 0x4c8]
fstp dword [ebp - 0x508]
jmp 0x46f8bd
fld dword [ebp - 0x508]
fadd dword [ebp - 0x4d8]
fstp dword [ebp - 0x508]
fld dword [ebp - 0x4f0]
fadd dword [ebp - 0x4c4]
fstp dword [ebp - 0x4f0]
fld dword [ebp - 0x4d8]
fsub dword [ebp - 0x504]
fstp dword [ebp - 0x4d8]
fld dword [ebp - 0x4f0]
fmul dword [ebp - 0x4c4]
fstp dword [ebp - 0x4f0]
fld dword [ebp - 0x4c4]
fmul dword [ebp - 0x508]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x4f0]
fmul dword [ebp - 0x4c4]
fstp dword [ebp - 0x4f0]
fld dword [ebp - 0x4c8]
fadd dword [ebp - 0x4f0]
fstp dword [ebp - 0x4c8]
jmp 0x46f954
fld dword [ebp - 0x4f0]
fadd dword [ebp - 0x504]
fstp dword [ebp - 0x4f0]
fld dword [ebp - 0x508]
fadd dword [ebp - 0x4c8]
fstp dword [ebp - 0x508]
fld dword [ebp - 0x504]
fsub dword [ebp - 0x4c4]
fstp dword [ebp - 0x504]
fld dword [ebp - 0x4c4]
fadd dword [ebp - 0x4d4]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x504]
fadd dword [ebp - 0x4c4]
fstp dword [ebp - 0x504]
fld dword [ebp - 0x508]
fmul dword [ebp - 0x4c8]
fstp dword [ebp - 0x508]
fld dword [ebp - 0x504]
fadd dword [ebp - 0x4c4]
fstp dword [ebp - 0x504]
movzx ecx, byte [ebp - 0x4af]
mov dl, byte [ebp - 0x51d]
mov byte [ebp + ecx - 0x49c], dl
movzx eax, byte [ebp - 0x51d]
movzx ecx, byte [ebp + eax - 0x49c]
movzx edx, byte [ebp - 0x49d]
add edx, ecx
mov byte [ebp - 0x49d], dl
movzx eax, byte [ebp - 0x4e5]
movzx ecx, byte [ebp - 0x399]
movzx edx, byte [ebp + ecx - 0x49c]
movzx ecx, byte [ebp - 0x4af]
movzx ecx, byte [ebp + ecx - 0x49c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x49c]
xor eax, edx
movzx ecx, byte [ebp - 0x4a5]
movzx edx, byte [ebp + ecx - 0x49c]
movzx ecx, byte [ebp - 0x389]
movzx ecx, byte [ebp + ecx - 0x49c]
add edx, ecx
movzx ecx, byte [ebp - 0x49d]
movzx ecx, byte [ebp + ecx - 0x49c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x49c]
movzx ecx, byte [ebp + edx - 0x49c]
xor eax, ecx
mov byte [ebp - 0x4a5], al
mov dl, byte [ebp - 0x4e5]
mov byte [ebp - 0x389], dl
mov al, byte [ebp - 0x4a5]
mov byte [ebp - 0x509], al
cmp dword [ebp - 0x500], 0
jle 0x46fa2f
movsx cx, byte [ebp - 0x509]
mov edx, dword [ebp - 0x500]
mov word [ebp + edx*2 - 0xe6], cx
mov eax, dword [ebp - 0x4fc]
add eax, 0x10
mov dword [ebp - 0x4fc], eax
mov ecx, dword [ebp - 0x500]
add ecx, 1
mov dword [ebp - 0x534], ecx
jmp 0x46fa5e
mov edx, dword [ebp - 0x534]
add edx, 1
mov dword [ebp - 0x534], edx
mov eax, dword [ebp - 0x534]
cmp eax, dword [ebp - 0x4fc]
jge 0x46fde1
mov ecx, dword [ebp - 0x500]
add ecx, 1
mov dword [ebp - 0x500], ecx
mov edx, dword [ebp - 0x500]
shl edx, 1
mov dword [ebp - 0x4c0], edx
mov eax, dword [ebp - 0x394]
add eax, dword [ebp - 0x4c0]
movzx ecx, byte [eax]
mov dword [ebp - 0x518], ecx
mov dword [ebp - 0x4dc], 0x52
mov edx, dword [ebp - 0x500]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x4ec], eax
mov ecx, dword [ebp - 0x394]
add ecx, dword [ebp - 0x4ec]
movzx edx, byte [ecx]
mov dword [ebp - 0x52c], edx
mov dword [ebp - 0x514], 0x9b
mov eax, dword [ebp - 0x518]
sub eax, dword [ebp - 0x4dc]
mov dword [ebp - 0x528], eax
mov ecx, dword [ebp - 0x52c]
sub ecx, dword [ebp - 0x514]
mov dword [ebp - 0x4cc], ecx
mov edx, dword [ebp - 0x528]
shl edx, 4
mov dword [ebp - 0x524], edx
mov eax, dword [ebp - 0x4cc]
mov dword [ebp - 0x510], eax
mov ecx, dword [ebp - 0x524]
or ecx, dword [ebp - 0x510]
mov dword [ebp - 0x4f8], ecx
mov dl, byte [ebp - 0x4f8]
mov byte [ebp - 0x4e5], dl
movzx eax, byte [ebp - 0x389]
mov cl, byte [ebp + eax - 0x49c]
mov byte [ebp - 0x51d], cl
movzx edx, byte [ebp - 0x4af]
movzx eax, byte [ebp + edx - 0x49c]
movzx ecx, byte [ebp - 0x399]
add ecx, eax
mov byte [ebp - 0x399], cl
mov dl, byte [ebp - 0x4af]
add dl, 1
mov byte [ebp - 0x4af], dl
movzx eax, byte [ebp - 0x399]
movzx ecx, byte [ebp - 0x389]
mov dl, byte [ebp + eax - 0x49c]
mov byte [ebp + ecx - 0x49c], dl
movzx eax, byte [ebp - 0x4a5]
movzx ecx, byte [ebp - 0x399]
mov dl, byte [ebp + eax - 0x49c]
mov byte [ebp + ecx - 0x49c], dl
movzx eax, byte [ebp - 0x4af]
movzx ecx, byte [ebp - 0x4a5]
mov dl, byte [ebp + eax - 0x49c]
mov byte [ebp + ecx - 0x49c], dl
movzx eax, byte [ebp - 0x4af]
mov cl, byte [ebp - 0x51d]
mov byte [ebp + eax - 0x49c], cl
movzx edx, byte [ebp - 0x51d]
movzx eax, byte [ebp + edx - 0x49c]
movzx ecx, byte [ebp - 0x49d]
add ecx, eax
mov byte [ebp - 0x49d], cl
fld qword [0x9cb5c8]
fstp qword [ebp - 0x54c]
fld qword [0x9cb5c0]
fstp qword [ebp - 0x554]
fld qword [0x9cb5b8]
fstp qword [ebp - 0x53c]
fld qword [0x9cb5b0]
fstp qword [ebp - 0x544]
fld qword [ebp - 0x554]
fsub qword [ebp - 0x544]
fstp qword [ebp - 0x554]
fld qword [ebp - 0x554]
fadd qword [ebp - 0x544]
fstp qword [ebp - 0x554]
fld qword [ebp - 0x54c]
fmul qword [ebp - 0x544]
fstp qword [ebp - 0x54c]
fld qword [ebp - 0x54c]
fadd qword [ebp - 0x544]
fstp qword [ebp - 0x54c]
fld qword [ebp - 0x544]
fcomp qword [ebp - 0x54c]
fnstsw ax
test ah, 0x41
jne 0x46fcd7
fld qword [ebp - 0x554]
fsub qword [ebp - 0x544]
fstp qword [ebp - 0x554]
fld qword [ebp - 0x544]
fadd qword [ebp - 0x554]
fstp qword [ebp - 0x544]
fld qword [ebp - 0x544]
fsub qword [ebp - 0x554]
fstp qword [ebp - 0x544]
fld qword [ebp - 0x554]
fmul qword [ebp - 0x544]
fstp qword [ebp - 0x554]
jmp 0x46fda5
fld qword [ebp - 0x54c]
fadd qword [ebp - 0x53c]
fstp qword [ebp - 0x54c]
fld qword [ebp - 0x54c]
fadd qword [ebp - 0x53c]
fstp qword [ebp - 0x54c]
fld qword [ebp - 0x53c]
fmul qword [ebp - 0x54c]
fstp qword [ebp - 0x53c]
fld qword [ebp - 0x54c]
fadd qword [ebp - 0x53c]
fstp qword [ebp - 0x54c]
movzx edx, byte [ebp - 0x4e5]
movzx eax, byte [ebp - 0x399]
movzx ecx, byte [ebp + eax - 0x49c]
movzx eax, byte [ebp - 0x4af]
movzx eax, byte [ebp + eax - 0x49c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x49c]
xor edx, ecx
movzx eax, byte [ebp - 0x4a5]
movzx ecx, byte [ebp + eax - 0x49c]
movzx eax, byte [ebp - 0x389]
movzx eax, byte [ebp + eax - 0x49c]
add ecx, eax
movzx eax, byte [ebp - 0x49d]
movzx eax, byte [ebp + eax - 0x49c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x49c]
movzx eax, byte [ebp + ecx - 0x49c]
xor edx, eax
mov byte [ebp - 0x4a5], dl
mov cl, byte [ebp - 0x4e5]
mov byte [ebp - 0x389], cl
mov dl, byte [ebp - 0x4a5]
mov byte [ebp - 0x509], dl
cmp dword [ebp - 0x500], 0
jle 0x46fddc
movsx ax, byte [ebp - 0x509]
mov ecx, dword [ebp - 0x500]
mov word [ebp + ecx*2 - 0xe6], ax
jmp 0x46fa4f
mov edx, dword [ebp - 0x4fc]
add edx, 1
mov dword [ebp - 0x4fc], edx
mov eax, dword [ebp - 0x500]
add eax, 1
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x4fc]
add ecx, 1
mov dword [ebp - 0x4fc], ecx
mov edx, dword [ebp - 0x500]
shl edx, 1
mov dword [ebp - 0x4c0], edx
mov eax, dword [ebp - 0x394]
add eax, dword [ebp - 0x4c0]
movzx ecx, byte [eax]
mov dword [ebp - 0x518], ecx
mov dword [ebp - 0x4dc], 0x52
mov edx, dword [ebp - 0x500]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x4ec], eax
mov ecx, dword [ebp - 0x394]
add ecx, dword [ebp - 0x4ec]
movzx edx, byte [ecx]
mov dword [ebp - 0x52c], edx
mov dword [ebp - 0x514], 0x9b
mov eax, dword [ebp - 0x518]
sub eax, dword [ebp - 0x4dc]
mov dword [ebp - 0x528], eax
mov ecx, dword [ebp - 0x52c]
sub ecx, dword [ebp - 0x514]
mov dword [ebp - 0x4cc], ecx
mov edx, dword [ebp - 0x528]
shl edx, 4
mov dword [ebp - 0x524], edx
mov eax, dword [ebp - 0x4cc]
mov dword [ebp - 0x510], eax
mov ecx, dword [ebp - 0x524]
or ecx, dword [ebp - 0x510]
mov dword [ebp - 0x4f8], ecx
mov dl, byte [ebp - 0x4f8]
mov byte [ebp - 0x4e5], dl
movzx eax, byte [ebp - 0x389]
mov cl, byte [ebp + eax - 0x49c]
mov byte [ebp - 0x51d], cl
movzx edx, byte [ebp - 0x4af]
movzx eax, byte [ebp + edx - 0x49c]
movzx ecx, byte [ebp - 0x399]
add ecx, eax
mov byte [ebp - 0x399], cl
mov dl, byte [ebp - 0x4af]
add dl, 1
mov byte [ebp - 0x4af], dl
movzx eax, byte [ebp - 0x399]
movzx ecx, byte [ebp - 0x389]
mov dl, byte [ebp + eax - 0x49c]
mov byte [ebp + ecx - 0x49c], dl
movzx eax, byte [ebp - 0x4a5]
movzx ecx, byte [ebp - 0x399]
mov dl, byte [ebp + eax - 0x49c]
mov byte [ebp + ecx - 0x49c], dl
movzx eax, byte [ebp - 0x4af]
movzx ecx, byte [ebp - 0x4a5]
mov dl, byte [ebp + eax - 0x49c]
mov byte [ebp + ecx - 0x49c], dl
movzx eax, byte [ebp - 0x4af]
mov cl, byte [ebp - 0x51d]
mov byte [ebp + eax - 0x49c], cl
movzx edx, byte [ebp - 0x51d]
movzx eax, byte [ebp + edx - 0x49c]
movzx ecx, byte [ebp - 0x49d]
add ecx, eax
mov byte [ebp - 0x49d], cl
movzx edx, byte [ebp - 0x4e5]
movzx eax, byte [ebp - 0x399]
movzx ecx, byte [ebp + eax - 0x49c]
movzx eax, byte [ebp - 0x4af]
movzx eax, byte [ebp + eax - 0x49c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x49c]
xor edx, ecx
movzx eax, byte [ebp - 0x4a5]
movzx ecx, byte [ebp + eax - 0x49c]
movzx eax, byte [ebp - 0x389]
movzx eax, byte [ebp + eax - 0x49c]
add ecx, eax
movzx eax, byte [ebp - 0x49d]
movzx eax, byte [ebp + eax - 0x49c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x49c]
movzx eax, byte [ebp + ecx - 0x49c]
xor edx, eax
mov byte [ebp - 0x4a5], dl
mov cl, byte [ebp - 0x4e5]
mov byte [ebp - 0x389], cl
mov dl, byte [ebp - 0x4a5]
mov byte [ebp - 0x509], dl
cmp dword [ebp - 0x500], 0
jle 0x47004b
movsx ax, byte [ebp - 0x509]
mov ecx, dword [ebp - 0x500]
mov word [ebp + ecx*2 - 0xe6], ax
mov edx, dword [ebp - 0x500]
add edx, 1
mov dword [ebp - 0x500], edx
mov eax, dword [ebp - 0x4fc]
add eax, 1
mov dword [ebp - 0x4fc], eax
mov ecx, dword [ebp - 0x500]
shl ecx, 1
mov dword [ebp - 0x4c0], ecx
mov edx, dword [ebp - 0x394]
add edx, dword [ebp - 0x4c0]
movzx eax, byte [edx]
mov dword [ebp - 0x518], eax
mov dword [ebp - 0x4dc], 0x52
mov ecx, dword [ebp - 0x500]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x4ec], edx
mov eax, dword [ebp - 0x394]
add eax, dword [ebp - 0x4ec]
movzx ecx, byte [eax]
mov dword [ebp - 0x52c], ecx
mov dword [ebp - 0x514], 0x9b
mov edx, dword [ebp - 0x518]
sub edx, dword [ebp - 0x4dc]
mov dword [ebp - 0x528], edx
mov eax, dword [ebp - 0x52c]
sub eax, dword [ebp - 0x514]
mov dword [ebp - 0x4cc], eax
mov ecx, dword [ebp - 0x528]
shl ecx, 4
mov dword [ebp - 0x524], ecx
mov edx, dword [ebp - 0x4cc]
mov dword [ebp - 0x510], edx
mov eax, dword [ebp - 0x524]
or eax, dword [ebp - 0x510]
mov dword [ebp - 0x4f8], eax
mov cl, byte [ebp - 0x4f8]
mov byte [ebp - 0x4e5], cl
movzx edx, byte [ebp - 0x389]
mov al, byte [ebp + edx - 0x49c]
mov byte [ebp - 0x51d], al
movzx ecx, byte [ebp - 0x4af]
movzx edx, byte [ebp + ecx - 0x49c]
movzx eax, byte [ebp - 0x399]
add eax, edx
mov byte [ebp - 0x399], al
mov cl, byte [ebp - 0x4af]
add cl, 1
mov byte [ebp - 0x4af], cl
movzx edx, byte [ebp - 0x399]
movzx eax, byte [ebp - 0x389]
mov cl, byte [ebp + edx - 0x49c]
mov byte [ebp + eax - 0x49c], cl
movzx edx, byte [ebp - 0x4a5]
movzx eax, byte [ebp - 0x399]
mov cl, byte [ebp + edx - 0x49c]
mov byte [ebp + eax - 0x49c], cl
movzx edx, byte [ebp - 0x4af]
movzx eax, byte [ebp - 0x4a5]
mov cl, byte [ebp + edx - 0x49c]
mov byte [ebp + eax - 0x49c], cl
movzx edx, byte [ebp - 0x4af]
mov al, byte [ebp - 0x51d]
mov byte [ebp + edx - 0x49c], al
movzx ecx, byte [ebp - 0x51d]
movzx edx, byte [ebp + ecx - 0x49c]
movzx eax, byte [ebp - 0x49d]
add eax, edx
mov byte [ebp - 0x49d], al
movzx ecx, byte [ebp - 0x4e5]
movzx edx, byte [ebp - 0x399]
movzx eax, byte [ebp + edx - 0x49c]
movzx edx, byte [ebp - 0x4af]
movzx edx, byte [ebp + edx - 0x49c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x49c]
xor ecx, eax
movzx edx, byte [ebp - 0x4a5]
movzx eax, byte [ebp + edx - 0x49c]
movzx edx, byte [ebp - 0x389]
movzx edx, byte [ebp + edx - 0x49c]
add eax, edx
movzx edx, byte [ebp - 0x49d]
movzx edx, byte [ebp + edx - 0x49c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x49c]
movzx edx, byte [ebp + eax - 0x49c]
xor ecx, edx
mov byte [ebp - 0x4a5], cl
mov al, byte [ebp - 0x4e5]
mov byte [ebp - 0x389], al
mov cl, byte [ebp - 0x4a5]
mov byte [ebp - 0x509], cl
cmp dword [ebp - 0x500], 0
jle 0x4702a4
movsx dx, byte [ebp - 0x509]
mov eax, dword [ebp - 0x500]
mov word [ebp + eax*2 - 0xe6], dx
xor ecx, ecx
mov word [ebp - 0x9e], cx
jmp 0x4702e5
mov dword [ebp - 0x558], 0
jmp 0x4702ca
mov edx, dword [ebp - 0x558]
add edx, 1
mov dword [ebp - 0x558], edx
cmp dword [ebp - 0x558], 0x24
jge 0x4702e5
xor eax, eax
mov ecx, dword [ebp - 0x558]
mov word [ebp + ecx*2 - 0xe4], ax
jmp 0x4702bb
lea edx, [ebp - 0x30]
push edx
push 2
push 0
lea eax, [ebp - 0x84]
push eax
push 0x100
lea ecx, [ebp - 0x74]
push ecx
push reloc.OLEAUT32.dll_SysReAllocString
mov ecx, dword [ebp - 0x670]
call fcn.004660e0
lea edx, [ebp - 0x30]
push edx
push 1
push 0
lea eax, [ebp - 0x84]
push eax
push 0x100
lea ecx, [ebp - 0xe4]
push ecx
push reloc.OLEAUT32.dll_SysReAllocString
mov ecx, dword [ebp - 0x670]
call fcn.004660e0
mov byte [ebp - 0x99], 0
mov dword [ebp - 0x55c], 0
jmp 0x47035a
mov edx, dword [ebp - 0x55c]
add edx, 1
mov dword [ebp - 0x55c], edx
lea ecx, [ebp - 0x84]
call fcn.00491fe0
cmp dword [ebp - 0x55c], eax
jae 0x4703b9
mov eax, dword [ebp - 0x55c]
push eax
lea ecx, [ebp - 0x84]
call fcn.0045b8b0
mov ecx, dword [eax]
cmp dword [ecx + 0x2c], 0
je 0x47038e
mov byte [ebp - 0x99], 1
mov edx, dword [ebp - 0x55c]
push edx
lea ecx, [ebp - 0x84]
call fcn.0045b8b0
mov eax, dword [eax]
mov dword [ebp - 0x590], eax
mov ecx, dword [ebp - 0x590]
push ecx
call fcn.0095f96c
add esp, 4
jmp 0x47034b
lea ecx, [ebp - 0x84]
call fcn.0045ba10
mov dl, byte [ebp - 0x99]
mov byte [ebp - 0x591], dl
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x30]
call fcn.0042f920
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.0045b9e0
mov al, byte [ebp - 0x591]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret