59fcfb:	68 7c 01 00 00       	push   $0x17c
59fd00:	6a 28                	push   $0x28
59fd02:	56                   	push   %esi
59fd03:	e8 08 f4 fe ff       	call   0x58f110
59fd08:	83 c4 18             	add    $0x18,%esp
59fd0b:	33 ed                	xor    %ebp,%ebp
59fd0d:	e9 11 01 00 00       	jmp    0x59fe23
59fd12:	ff b6 74 04 00 00    	push   0x474(%esi)
59fd18:	e8 a3 02 ff ff       	call   0x58ffc0
59fd1d:	83 c4 04             	add    $0x4,%esp
59fd20:	89 be 74 04 00 00    	mov    %edi,0x474(%esi)
59fd26:	8b 86 74 04 00 00    	mov    0x474(%esi),%eax
59fd2c:	ff b0 9c 01 00 00    	push   0x19c(%eax)
59fd32:	e8 a9 74 fb ff       	call   0x5571e0
59fd37:	55                   	push   %ebp
59fd38:	e8 c3 54 f4 ff       	call   0x4e5200
59fd3d:	8b c8                	mov    %eax,%ecx
59fd3f:	8b 86 74 04 00 00    	mov    0x474(%esi),%eax
59fd45:	68 e0 71 55 00       	push   $0x5571e0
59fd4a:	89 88 9c 01 00 00    	mov    %ecx,0x19c(%eax)
59fd50:	8b 8e 74 04 00 00    	mov    0x474(%esi),%ecx
59fd56:	8b 86 d8 04 00 00    	mov    0x4d8(%esi),%eax
59fd5c:	89 81 a8 01 00 00    	mov    %eax,0x1a8(%ecx)
59fd62:	8b 86 74 04 00 00    	mov    0x474(%esi),%eax
59fd68:	ff b0 a4 01 00 00    	push   0x1a4(%eax)
59fd6e:	e8 7d 53 f4 ff       	call   0x4e50f0
59fd73:	8b 86 74 04 00 00    	mov    0x474(%esi),%eax
59fd79:	83 c4 10             	add    $0x10,%esp
59fd7c:	89 a8 a4 01 00 00    	mov    %ebp,0x1a4(%eax)
59fd82:	8b 4e 04             	mov    0x4(%esi),%ecx
59fd85:	8b 41 64             	mov    0x64(%ecx),%eax
59fd88:	f6 40 30 08          	testb  $0x8,0x30(%eax)
59fd8c:	75 21                	jne    0x59fdaf
59fd8e:	8b 01                	mov    (%ecx),%eax
59fd90:	3d 04 03 00 00       	cmp    $0x304,%eax
59fd95:	7c 18                	jl     0x59fdaf
59fd97:	3d 00 00 01 00       	cmp    $0x10000,%eax
59fd9c:	74 11                	je     0x59fdaf
59fd9e:	6a 01                	push   $0x1
59fda0:	56                   	push   %esi
59fda1:	33 ed                	xor    %ebp,%ebp
59fda3:	e8 d8 33 00 00       	call   0x5a3180
59fda8:	83 c4 08             	add    $0x8,%esp
59fdab:	85 c0                	test   %eax,%eax
59fdad:	74 74                	je     0x59fe23
59fdaf:	8b 4e 04             	mov    0x4(%esi),%ecx
59fdb2:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
59fdb9:	00
59fdba:	8b 41 64             	mov    0x64(%ecx),%eax
59fdbd:	f6 40 30 08          	testb  $0x8,0x30(%eax)
59fdc1:	75 35                	jne    0x59fdf8
59fdc3:	8b 01                	mov    (%ecx),%eax
59fdc5:	3d 04 03 00 00       	cmp    $0x304,%eax
59fdca:	7c 2c                	jl     0x59fdf8
59fdcc:	3d 00 00 01 00       	cmp    $0x10000,%eax
59fdd1:	74 25                	je     0x59fdf8
59fdd3:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
59fdd9:	33 ed                	xor    %ebp,%ebp
59fddb:	50                   	push   %eax
59fddc:	6a 40                	push   $0x40
59fdde:	8d 86 08 04 00 00    	lea    0x408(%esi),%eax
59fde4:	50                   	push   %eax
59fde5:	56                   	push   %esi
59fde6:	e8 f5 a4 fe ff       	call   0x58a2e0
59fdeb:	83 c4 10             	add    $0x10,%esp
59fdee:	85 c0                	test   %eax,%eax
59fdf0:	74 31                	je     0x59fe23
59fdf2:	89 ae 70 0f 00 00    	mov    %ebp,0xf70(%esi)
59fdf8:	c7 44 24 24 03 00 00 	movl   $0x3,0x24(%esp)
59fdff:	00
59fe00:	33 ed                	xor    %ebp,%ebp
59fe02:	eb 1f                	jmp    0x59fe23
59fe04:	68 22 0e 00 00       	push   $0xe22
59fe09:	68 e0 7b 66 00       	push   $0x667be0
59fe0e:	68 9f 00 00 00       	push   $0x9f
59fe13:	68 7c 01 00 00       	push   $0x17c
59fe18:	6a 32                	push   $0x32
59fe1a:	56                   	push   %esi
59fe1b:	e8 f0 f2 fe ff       	call   0x58f110
59fe20:	83 c4 18             	add    $0x18,%esp
59fe23:	5f                   	pop    %edi
59fe24:	5b                   	pop    %ebx
59fe25:	55                   	push   %ebp
59fe26:	e8 b5 73 fb ff       	call   0x5571e0
59fe2b:	68 e0 71 55 00       	push   $0x5571e0
59fe30:	ff 74 24 10          	push   0x10(%esp)
59fe34:	e8 b7 52 f4 ff       	call   0x4e50f0
59fe39:	8b 44 24 28          	mov    0x28(%esp),%eax
59fe3d:	83 c4 0c             	add    $0xc,%esp
59fe40:	5e                   	pop    %esi
59fe41:	5d                   	pop    %ebp
59fe42:	83 c4 20             	add    $0x20,%esp
59fe45:	c3                   	ret
59fe46:	cc                   	int3
59fe47:	cc                   	int3
59fe48:	cc                   	int3
59fe49:	cc                   	int3
59fe4a:	cc                   	int3
59fe4b:	cc                   	int3
59fe4c:	cc                   	int3
59fe4d:	cc                   	int3
59fe4e:	cc                   	int3
59fe4f:	cc                   	int3
59fe50:	b8 18 00 00 00       	mov    $0x18,%eax
59fe55:	e8 56 19 03 00       	call   0x5d17b0
59fe5a:	53                   	push   %ebx
59fe5b:	55                   	push   %ebp
59fe5c:	56                   	push   %esi
59fe5d:	8b 74 24 28          	mov    0x28(%esp),%esi
59fe61:	57                   	push   %edi
59fe62:	33 ff                	xor    %edi,%edi
59fe64:	39 be ec 05 00 00    	cmp    %edi,0x5ec(%esi)
59fe6a:	75 7d                	jne    0x59fee9
59fe6c:	8b 4e 7c             	mov    0x7c(%esi),%ecx
59fe6f:	39 b9 80 01 00 00    	cmp    %edi,0x180(%ecx)
59fe75:	74 72                	je     0x59fee9
59fe77:	39 b9 04 02 00 00    	cmp    %edi,0x204(%ecx)
59fe7d:	74 6a                	je     0x59fee9
59fe7f:	8b 56 04             	mov    0x4(%esi),%edx
59fe82:	8b 42 64             	mov    0x64(%edx),%eax
59fe85:	f6 40 30 08          	testb  $0x8,0x30(%eax)
59fe89:	75 31                	jne    0x59febc
59fe8b:	8b 02                	mov    (%edx),%eax
59fe8d:	3d 04 03 00 00       	cmp    $0x304,%eax
59fe92:	7c 28                	jl     0x59febc
59fe94:	3d 00 00 01 00       	cmp    $0x10000,%eax
59fe99:	74 21                	je     0x59febc
59fe9b:	68 72 05 00 00       	push   $0x572
59fea0:	68 e0 7b 66 00       	push   $0x667be0
59fea5:	6a 44                	push   $0x44
59fea7:	68 7d 01 00 00       	push   $0x17d
59feac:	6a 50                	push   $0x50
59feae:	56                   	push   %esi
59feaf:	e8 5c f2 fe ff       	call   0x58f110
59feb4:	83 c4 18             	add    $0x18,%esp
59feb7:	e9 f4 04 00 00       	jmp    0x5a03b0
59febc:	8b 86 ec 04 00 00    	mov    0x4ec(%esi),%eax
59fec2:	a9 00 00 00 40       	test   $0x40000000,%eax
59fec7:	75 5e                	jne    0x59ff27
59fec9:	39 b9 38 03 00 00    	cmp    %edi,0x338(%ecx)
59fecf:	75 07                	jne    0x59fed8
59fed1:	a9 00 00 04 00       	test   $0x40000,%eax
59fed6:	74 4f                	je     0x59ff27
59fed8:	c7 86 ec 05 00 00 01 	movl   $0x1,0x5ec(%esi)
59fedf:	00 00 00
59fee2:	c7 46 20 01 00 00 00 	movl   $0x1,0x20(%esi)
59fee9:	68 80 05 00 00       	push   $0x580
59feee:	68 e0 7b 66 00       	push   $0x667be0
59fef3:	68 6c 02 00 00       	push   $0x26c
59fef8:	e8 43 0b f4 ff       	call   0x4e0a40
59fefd:	8b f8                	mov    %eax,%edi
59feff:	83 c4 0c             	add    $0xc,%esp
59ff02:	85 ff                	test   %edi,%edi
59ff04:	75 3b                	jne    0x59ff41
59ff06:	68 83 05 00 00       	push   $0x583
59ff0b:	68 e0 7b 66 00       	push   $0x667be0
59ff10:	6a 44                	push   $0x44
59ff12:	68 7d 01 00 00       	push   $0x17d
59ff17:	6a 50                	push   $0x50
59ff19:	56                   	push   %esi
59ff1a:	e8 f1 f1 fe ff       	call   0x58f110
59ff1f:	83 c4 18             	add    $0x18,%esp
59ff22:	e9 89 04 00 00       	jmp    0x5a03b0
59ff27:	6a 64                	push   $0x64
59ff29:	6a 01                	push   $0x1
59ff2b:	56                   	push   %esi
59ff2c:	e8 7f 46 00 00       	call   0x5a45b0
59ff31:	83 c4 0c             	add    $0xc,%esp
59ff34:	b8 01 00 00 00       	mov    $0x1,%eax
59ff39:	5f                   	pop    %edi
59ff3a:	5e                   	pop    %esi
59ff3b:	5d                   	pop    %ebp
59ff3c:	5b                   	pop    %ebx
59ff3d:	83 c4 18             	add    $0x18,%esp
59ff40:	c3                   	ret
59ff41:	8d 86 50 06 00 00    	lea    0x650(%esi),%eax
59ff47:	50                   	push   %eax
59ff48:	e8 33 14 ff ff       	call   0x591380
59ff4d:	8b 5c 24 34          	mov    0x34(%esp),%ebx
59ff51:	83 c4 04             	add    $0x4,%esp
59ff54:	89 07                	mov    %eax,(%edi)
59ff56:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
59ff5d:	00
59ff5e:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
59ff65:	00
59ff66:	85 c0                	test   %eax,%eax
59ff68:	74 6a                	je     0x59ffd4
59ff6a:	8b 46 7c             	mov    0x7c(%esi),%eax
59ff6d:	83 b8 80 01 00 00 00 	cmpl   $0x0,0x180(%eax)
59ff74:	74 09                	je     0x59ff7f
59ff76:	83 b8 04 02 00 00 00 	cmpl   $0x0,0x204(%eax)
59ff7d:	75 09                	jne    0x59ff88
59ff7f:	83 be 4c 04 00 00 00 	cmpl   $0x0,0x44c(%esi)
59ff86:	74 1b                	je     0x59ffa3
59ff88:	68 93 05 00 00       	push   $0x593
59ff8d:	68 e0 7b 66 00       	push   $0x667be0
59ff92:	68 f4 00 00 00       	push   $0xf4
59ff97:	68 7d 01 00 00       	push   $0x17d
59ff9c:	6a 0a                	push   $0xa
59ff9e:	e9 ec 03 00 00       	jmp    0x5a038f
59ffa3:	8b 53 04             	mov    0x4(%ebx),%edx
59ffa6:	85 d2                	test   %edx,%edx
59ffa8:	74 12                	je     0x59ffbc
59ffaa:	8b 03                	mov    (%ebx),%eax
59ffac:	8a 08                	mov    (%eax),%cl
59ffae:	40                   	inc    %eax
59ffaf:	89 03                	mov    %eax,(%ebx)
59ffb1:	8d 42 ff             	lea    -0x1(%edx),%eax
59ffb4:	89 43 04             	mov    %eax,0x4(%ebx)
59ffb7:	80 f9 01             	cmp    $0x1,%cl
59ffba:	74 18                	je     0x59ffd4
59ffbc:	68 ae 05 00 00       	push   $0x5ae
59ffc1:	68 e0 7b 66 00       	push   $0x667be0
59ffc6:	6a 44                	push   $0x44
59ffc8:	68 7d 01 00 00       	push   $0x17d
59ffcd:	6a 50                	push   $0x50
59ffcf:	e9 bb 03 00 00       	jmp    0x5a038f
59ffd4:	83 7b 04 02          	cmpl   $0x2,0x4(%ebx)
59ffd8:	0f 82 9b 03 00 00    	jb     0x5a0379
59ffde:	8b 03                	mov    (%ebx),%eax
59ffe0:	0f b6 08             	movzbl (%eax),%ecx
59ffe3:	c1 e1 08             	shl    $0x8,%ecx
59ffe6:	89 4f 04             	mov    %ecx,0x4(%edi)
59ffe9:	8b 03                	mov    (%ebx),%eax
59ffeb:	0f b6 40 01          	movzbl 0x1(%eax),%eax
59ffef:	0b c1                	or     %ecx,%eax
59fff1:	89 47 04             	mov    %eax,0x4(%edi)
59fff4:	83 03 02             	addl   $0x2,(%ebx)
59fff7:	83 43 04 fe          	addl   $0xfffffffe,0x4(%ebx)
59fffb:	83 3f 00             	cmpl   $0x0,(%edi)
59fffe:	0f 84 4d 01 00 00    	je     0x5a0151
5a0004:	8d 44 24 18          	lea    0x18(%esp),%eax
5a0008:	50                   	push   %eax
5a0009:	53                   	push   %ebx
5a000a:	e8 a1 34 ff ff       	call   0x5934b0
5a000f:	83 c4 08             	add    $0x8,%esp
5a0012:	85 c0                	test   %eax,%eax
5a0014:	0f 84 23 01 00 00    	je     0x5a013d
5a001a:	8d 44 24 10          	lea    0x10(%esp),%eax
5a001e:	50                   	push   %eax
5a001f:	53                   	push   %ebx
5a0020:	e8 8b 34 ff ff       	call   0x5934b0
5a0025:	83 c4 08             	add    $0x8,%esp
5a0028:	85 c0                	test   %eax,%eax
5a002a:	0f 84 0d 01 00 00    	je     0x5a013d
5a0030:	8d 44 24 2c          	lea    0x2c(%esp),%eax
5a0034:	50                   	push   %eax
5a0035:	53                   	push   %ebx
5a0036:	e8 75 34 ff ff       	call   0x5934b0
5a003b:	83 c4 08             	add    $0x8,%esp
5a003e:	85 c0                	test   %eax,%eax
5a0040:	0f 84 f7 00 00 00    	je     0x5a013d
5a0046:	8b 6c 24 10          	mov    0x10(%esp),%ebp
5a004a:	83 fd 20             	cmp    $0x20,%ebp
5a004d:	76 1b                	jbe    0x5a006a
5a004f:	68 cd 05 00 00       	push   $0x5cd
5a0054:	68 e0 7b 66 00       	push   $0x667be0
5a0059:	68 9f 00 00 00       	push   $0x9f
5a005e:	68 7d 01 00 00       	push   $0x17d
5a0063:	6a 2f                	push   $0x2f
5a0065:	e9 25 03 00 00       	jmp    0x5a038f
5a006a:	ff 74 24 18          	push   0x18(%esp)
5a006e:	8d 87 50 01 00 00    	lea    0x150(%edi),%eax
5a0074:	50                   	push   %eax
5a0075:	53                   	push   %ebx
5a0076:	e8 f5 b4 ff ff       	call   0x59b570
5a007b:	83 c4 0c             	add    $0xc,%esp
5a007e:	85 c0                	test   %eax,%eax
5a0080:	0f 84 a3 00 00 00    	je     0x5a0129
5a0086:	55                   	push   %ebp
5a0087:	8d 47 2c             	lea    0x2c(%edi),%eax
5a008a:	50                   	push   %eax
5a008b:	53                   	push   %ebx
5a008c:	e8 cf b3 ff ff       	call   0x59b460
5a0091:	83 c4 0c             	add    $0xc,%esp
5a0094:	85 c0                	test   %eax,%eax
5a0096:	0f 84 8d 00 00 00    	je     0x5a0129
5a009c:	ff 74 24 2c          	push   0x2c(%esp)
5a00a0:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5a00a4:	50                   	push   %eax
5a00a5:	53                   	push   %ebx
5a00a6:	e8 c5 b4 ff ff       	call   0x59b570
5a00ab:	83 c4 0c             	add    $0xc,%esp
5a00ae:	85 c0                	test   %eax,%eax
5a00b0:	74 77                	je     0x5a0129
5a00b2:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
5a00b6:	75 71                	jne    0x5a0129
5a00b8:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
5a00bc:	b8 20 00 00 00       	mov    $0x20,%eax
5a00c1:	3b c8                	cmp    %eax,%ecx
5a00c3:	89 6f 28             	mov    %ebp,0x28(%edi)
5a00c6:	0f 57 c0             	xorps  %xmm0,%xmm0
5a00c9:	0f 47 c8             	cmova  %eax,%ecx
5a00cc:	8b c7                	mov    %edi,%eax
5a00ce:	2b c1                	sub    %ecx,%eax
5a00d0:	51                   	push   %ecx
5a00d1:	83 c0 28             	add    $0x28,%eax
5a00d4:	50                   	push   %eax
5a00d5:	8d 44 24 20          	lea    0x20(%esp),%eax
5a00d9:	0f 11 47 08          	movups %xmm0,0x8(%edi)
5a00dd:	50                   	push   %eax
5a00de:	0f 11 47 18          	movups %xmm0,0x18(%edi)
5a00e2:	e8 79 b3 ff ff       	call   0x59b460
5a00e7:	83 c4 0c             	add    $0xc,%esp
5a00ea:	85 c0                	test   %eax,%eax
5a00ec:	74 23                	je     0x5a0111
5a00ee:	8d af 5c 02 00 00    	lea    0x25c(%edi),%ebp
5a00f4:	b9 aa 7b 66 00       	mov    $0x667baa,%ecx
5a00f9:	b8 01 00 00 00       	mov    $0x1,%eax
5a00fe:	c7 45 00 00 00 00 00 	movl   $0x0,0x0(%ebp)
5a0105:	c7 45 04 00 00 00 00 	movl   $0x0,0x4(%ebp)
5a010c:	e9 ea 01 00 00       	jmp    0x5a02fb
5a0111:	68 eb 05 00 00       	push   $0x5eb
5a0116:	68 e0 7b 66 00       	push   $0x667be0
5a011b:	6a 44                	push   $0x44
5a011d:	68 7d 01 00 00       	push   $0x17d
5a0122:	6a 50                	push   $0x50
5a0124:	e9 66 02 00 00       	jmp    0x5a038f
5a0129:	68 d8 05 00 00       	push   $0x5d8
5a012e:	68 e0 7b 66 00       	push   $0x667be0
5a0133:	68 d5 00 00 00       	push   $0xd5
5a0138:	e9 4b 02 00 00       	jmp    0x5a0388
5a013d:	68 c7 05 00 00       	push   $0x5c7
5a0142:	68 e0 7b 66 00       	push   $0x667be0
5a0147:	68 d5 00 00 00       	push   $0xd5
5a014c:	e9 37 02 00 00       	jmp    0x5a0388
5a0151:	6a 20                	push   $0x20
5a0153:	8d 47 08             	lea    0x8(%edi),%eax
5a0156:	50                   	push   %eax
5a0157:	53                   	push   %ebx
5a0158:	e8 03 b3 ff ff       	call   0x59b460
5a015d:	83 c4 0c             	add    $0xc,%esp
5a0160:	85 c0                	test   %eax,%eax
5a0162:	0f 84 00 02 00 00    	je     0x5a0368
5a0168:	8d 44 24 10          	lea    0x10(%esp),%eax
5a016c:	50                   	push   %eax
5a016d:	53                   	push   %ebx
5a016e:	e8 4d b3 ff ff       	call   0x59b4c0
5a0173:	83 c4 08             	add    $0x8,%esp
5a0176:	85 c0                	test   %eax,%eax
5a0178:	0f 84 ea 01 00 00    	je     0x5a0368
5a017e:	8d 47 28             	lea    0x28(%edi),%eax
5a0181:	50                   	push   %eax
5a0182:	6a 20                	push   $0x20
5a0184:	8d 47 2c             	lea    0x2c(%edi),%eax
5a0187:	50                   	push   %eax
5a0188:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5a018c:	50                   	push   %eax
5a018d:	e8 8e b2 ff ff       	call   0x59b420
5a0192:	83 c4 10             	add    $0x10,%esp