5aee14:	85 c0                	test   %eax,%eax
5aee16:	0f 85 06 ff ff ff    	jne    0x5aed22
5aee1c:	8b 8e 38 0f 00 00    	mov    0xf38(%esi),%ecx
5aee22:	0f b7 01             	movzwl (%ecx),%eax
5aee25:	66 89 41 24          	mov    %ax,0x24(%ecx)
5aee29:	8b 8e 38 0f 00 00    	mov    0xf38(%esi),%ecx
5aee2f:	0f b7 01             	movzwl (%ecx),%eax
5aee32:	66 40                	inc    %ax
5aee34:	66 89 41 1c          	mov    %ax,0x1c(%ecx)
5aee38:	5f                   	pop    %edi
5aee39:	b8 01 00 00 00       	mov    $0x1,%eax
5aee3e:	5e                   	pop    %esi
5aee3f:	c3                   	ret
5aee40:	5f                   	pop    %edi
5aee41:	83 c8 ff             	or     $0xffffffff,%eax
5aee44:	5e                   	pop    %esi
5aee45:	c3                   	ret
5aee46:	68 08 01 00 00       	push   $0x108
5aee4b:	68 b8 84 66 00       	push   $0x6684b8
5aee50:	6a 44                	push   $0x44
5aee52:	68 a8 01 00 00       	push   $0x1a8
5aee57:	6a 50                	push   $0x50
5aee59:	56                   	push   %esi
5aee5a:	e8 b1 02 fe ff       	call   0x58f110
5aee5f:	83 c4 18             	add    $0x18,%esp
5aee62:	5f                   	pop    %edi
5aee63:	33 c0                	xor    %eax,%eax
5aee65:	5e                   	pop    %esi
5aee66:	c3                   	ret
5aee67:	cc                   	int3
5aee68:	cc                   	int3
5aee69:	cc                   	int3
5aee6a:	cc                   	int3
5aee6b:	cc                   	int3
5aee6c:	cc                   	int3
5aee6d:	cc                   	int3
5aee6e:	cc                   	int3
5aee6f:	cc                   	int3
5aee70:	b8 50 00 00 00       	mov    $0x50,%eax
5aee75:	e8 36 29 02 00       	call   0x5d17b0
5aee7a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5aee7f:	33 c4                	xor    %esp,%eax
5aee81:	89 44 24 4c          	mov    %eax,0x4c(%esp)
5aee85:	8b 44 24 60          	mov    0x60(%esp),%eax
5aee89:	53                   	push   %ebx
5aee8a:	55                   	push   %ebp
5aee8b:	56                   	push   %esi
5aee8c:	8b 74 24 60          	mov    0x60(%esp),%esi
5aee90:	33 ed                	xor    %ebp,%ebp
5aee92:	57                   	push   %edi
5aee93:	8b 7c 24 6c          	mov    0x6c(%esp),%edi
5aee97:	89 44 24 18          	mov    %eax,0x18(%esp)
5aee9b:	8b 44 24 7c          	mov    0x7c(%esp),%eax
5aee9f:	89 7c 24 10          	mov    %edi,0x10(%esp)
5aeea3:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5aeea7:	39 ae 64 06 00 00    	cmp    %ebp,0x664(%esi)
5aeead:	75 0d                	jne    0x5aeebc
5aeeaf:	56                   	push   %esi
5aeeb0:	e8 0b 43 fe ff       	call   0x5931c0
5aeeb5:	83 c4 04             	add    $0x4,%esp
5aeeb8:	85 c0                	test   %eax,%eax
5aeeba:	74 39                	je     0x5aeef5
5aeebc:	8b 5c 24 68          	mov    0x68(%esp),%ebx
5aeec0:	85 db                	test   %ebx,%ebx
5aeec2:	74 0a                	je     0x5aeece
5aeec4:	83 fb 17             	cmp    $0x17,%ebx
5aeec7:	74 05                	je     0x5aeece
5aeec9:	83 fb 16             	cmp    $0x16,%ebx
5aeecc:	75 0b                	jne    0x5aeed9
5aeece:	39 6c 24 78          	cmp    %ebp,0x78(%esp)
5aeed2:	74 37                	je     0x5aef0b
5aeed4:	83 fb 17             	cmp    $0x17,%ebx
5aeed7:	74 32                	je     0x5aef0b
5aeed9:	68 67 01 00 00       	push   $0x167
5aeede:	68 b8 84 66 00       	push   $0x6684b8
5aeee3:	6a 44                	push   $0x44
5aeee5:	68 02 01 00 00       	push   $0x102
5aeeea:	6a 50                	push   $0x50
5aeeec:	56                   	push   %esi
5aeeed:	e8 1e 02 fe ff       	call   0x58f110
5aeef2:	83 c4 18             	add    $0x18,%esp
5aeef5:	83 c8 ff             	or     $0xffffffff,%eax
5aeef8:	5f                   	pop    %edi
5aeef9:	5e                   	pop    %esi
5aeefa:	5d                   	pop    %ebp
5aeefb:	5b                   	pop    %ebx
5aeefc:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
5aef00:	33 cc                	xor    %esp,%ecx
5aef02:	e8 1f 2b 02 00       	call   0x5d1a26
5aef07:	83 c4 50             	add    $0x50,%esp
5aef0a:	c3                   	ret
5aef0b:	56                   	push   %esi
5aef0c:	e8 2f 12 f4 ff       	call   0x4f0140
5aef11:	83 c4 04             	add    $0x4,%esp
5aef14:	85 c0                	test   %eax,%eax
5aef16:	75 1c                	jne    0x5aef34
5aef18:	56                   	push   %esi
5aef19:	e8 12 01 fe ff       	call   0x58f030
5aef1e:	83 c4 04             	add    $0x4,%esp
5aef21:	85 c0                	test   %eax,%eax
5aef23:	74 0f                	je     0x5aef34
5aef25:	8b 46 18             	mov    0x18(%esi),%eax
5aef28:	56                   	push   %esi
5aef29:	ff d0                	call   *%eax
5aef2b:	83 c4 04             	add    $0x4,%esp
5aef2e:	85 c0                	test   %eax,%eax
5aef30:	78 c6                	js     0x5aeef8
5aef32:	74 c1                	je     0x5aeef5
5aef34:	56                   	push   %esi
5aef35:	89 6c 24 18          	mov    %ebp,0x18(%esp)
5aef39:	c7 46 14 01 00 00 00 	movl   $0x1,0x14(%esi)
5aef40:	e8 fb 00 fe ff       	call   0x58f040
5aef45:	83 c4 04             	add    $0x4,%esp
5aef48:	85 c0                	test   %eax,%eax
5aef4a:	74 46                	je     0x5aef92
5aef4c:	83 be 00 09 00 00 00 	cmpl   $0x0,0x900(%esi)
5aef53:	75 3d                	jne    0x5aef92
5aef55:	8b 86 38 0f 00 00    	mov    0xf38(%esi),%eax
5aef5b:	ff 70 30             	push   0x30(%eax)
5aef5e:	e8 dd 97 00 00       	call   0x5b8740
5aef63:	8b f8                	mov    %eax,%edi
5aef65:	83 c4 04             	add    $0x4,%esp
5aef68:	85 ff                	test   %edi,%edi
5aef6a:	74 22                	je     0x5aef8e
5aef6c:	57                   	push   %edi
5aef6d:	56                   	push   %esi
5aef6e:	e8 7d fc ff ff       	call   0x5aebf0
5aef73:	68 93 01 00 00       	push   $0x193
5aef78:	68 b8 84 66 00       	push   $0x6684b8
5aef7d:	ff 77 08             	push   0x8(%edi)
5aef80:	e8 fb 17 f3 ff       	call   0x4e0780
5aef85:	57                   	push   %edi
5aef86:	e8 a5 95 00 00       	call   0x5b8530
5aef8b:	83 c4 18             	add    $0x18,%esp
5aef8e:	8b 7c 24 10          	mov    0x10(%esp),%edi
5aef92:	56                   	push   %esi
5aef93:	e8 68 91 ff ff       	call   0x5a8100
5aef98:	83 c4 04             	add    $0x4,%esp
5aef9b:	85 c0                	test   %eax,%eax
5aef9d:	7f 95                	jg     0x5aef34
5aef9f:	56                   	push   %esi
5aefa0:	e8 cb 01 fe ff       	call   0x58f170
5aefa5:	83 c4 04             	add    $0x4,%esp
5aefa8:	85 c0                	test   %eax,%eax
5aefaa:	0f 85 45 ff ff ff    	jne    0x5aeef5
5aefb0:	39 86 00 09 00 00    	cmp    %eax,0x900(%esi)
5aefb6:	74 0c                	je     0x5aefc4
5aefb8:	81 be 58 06 00 00 f1 	cmpl   $0xf1,0x658(%esi)
5aefbf:	00 00 00
5aefc2:	75 46                	jne    0x5af00a
5aefc4:	56                   	push   %esi
5aefc5:	c7 86 5c 06 00 00 00 	movl   $0x0,0x65c(%esi)
5aefcc:	00 00 00
5aefcf:	e8 0c 18 ff ff       	call   0x5a07e0
5aefd4:	83 c4 04             	add    $0x4,%esp
5aefd7:	85 c0                	test   %eax,%eax
5aefd9:	7f 25                	jg     0x5af000
5aefdb:	50                   	push   %eax
5aefdc:	56                   	push   %esi
5aefdd:	e8 8e 7c ff ff       	call   0x5a6c70
5aefe2:	83 c4 08             	add    $0x8,%esp
5aefe5:	85 c0                	test   %eax,%eax
5aefe7:	0f 8f 47 ff ff ff    	jg     0x5aef34
5aefed:	5f                   	pop    %edi
5aefee:	5e                   	pop    %esi
5aefef:	5d                   	pop    %ebp
5aeff0:	5b                   	pop    %ebx
5aeff1:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
5aeff5:	33 cc                	xor    %esp,%ecx
5aeff7:	e8 2a 2a 02 00       	call   0x5d1a26
5aeffc:	83 c4 50             	add    $0x50,%esp
5aefff:	c3                   	ret
5af000:	c7 86 5c 06 00 00 01 	movl   $0x1,0x65c(%esi)
5af007:	00 00 00
5af00a:	83 be fc 08 00 00 15 	cmpl   $0x15,0x8fc(%esi)
5af011:	74 13                	je     0x5af026
5af013:	83 be 00 09 00 00 00 	cmpl   $0x0,0x900(%esi)
5af01a:	74 0a                	je     0x5af026
5af01c:	c7 86 34 0f 00 00 00 	movl   $0x0,0xf34(%esi)
5af023:	00 00 00
5af026:	8b 46 7c             	mov    0x7c(%esi),%eax
5af029:	83 b8 dc 00 00 00 00 	cmpl   $0x0,0xdc(%eax)
5af030:	74 44                	je     0x5af076
5af032:	83 be fc 08 00 00 16 	cmpl   $0x16,0x8fc(%esi)
5af039:	74 3b                	je     0x5af076
5af03b:	8d 86 20 09 00 00    	lea    0x920(%esi),%eax
5af041:	50                   	push   %eax
5af042:	8b 86 38 0f 00 00    	mov    0xf38(%esi),%eax
5af048:	83 c0 2c             	add    $0x2c,%eax
5af04b:	50                   	push   %eax
5af04c:	56                   	push   %esi
5af04d:	e8 0e fa ff ff       	call   0x5aea60
5af052:	83 c4 0c             	add    $0xc,%esp
5af055:	85 c0                	test   %eax,%eax
5af057:	0f 88 98 fe ff ff    	js     0x5aeef5
5af05d:	c7 86 00 09 00 00 00 	movl   $0x0,0x900(%esi)
5af064:	00 00 00
5af067:	c7 86 18 09 00 00 01 	movl   $0x1,0x918(%esi)
5af06e:	00 00 00
5af071:	e9 be fe ff ff       	jmp    0x5aef34
5af076:	8b 4e 28             	mov    0x28(%esi),%ecx
5af079:	f6 c1 02             	test   $0x2,%cl
5af07c:	0f 85 ea 04 00 00    	jne    0x5af56c
5af082:	8b 86 fc 08 00 00    	mov    0x8fc(%esi),%eax
5af088:	3b d8                	cmp    %eax,%ebx
5af08a:	0f 84 f0 03 00 00    	je     0x5af480
5af090:	83 f8 14             	cmp    $0x14,%eax
5af093:	75 38                	jne    0x5af0cd
5af095:	83 fb 16             	cmp    $0x16,%ebx
5af098:	75 08                	jne    0x5af0a2
5af09a:	85 ff                	test   %edi,%edi
5af09c:	0f 85 de 03 00 00    	jne    0x5af480
5af0a2:	f6 c1 01             	test   $0x1,%cl
5af0a5:	0f 85 a5 03 00 00    	jne    0x5af450
5af0ab:	83 f8 14             	cmp    $0x14,%eax
5af0ae:	0f 85 f3 00 00 00    	jne    0x5af1a7
5af0b4:	c7 86 00 09 00 00 00 	movl   $0x0,0x900(%esi)
5af0bb:	00 00 00
5af0be:	c7 86 18 09 00 00 01 	movl   $0x1,0x918(%esi)
5af0c5:	00 00 00
5af0c8:	e9 67 fe ff ff       	jmp    0x5aef34
5af0cd:	83 f8 15             	cmp    $0x15,%eax
5af0d0:	75 d0                	jne    0x5af0a2
5af0d2:	8b 86 0c 09 00 00    	mov    0x90c(%esi),%eax
5af0d8:	03 86 08 09 00 00    	add    0x908(%esi),%eax
5af0de:	8b 8e 00 09 00 00    	mov    0x900(%esi),%ecx
5af0e4:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
5af0ea:	0f 87 a4 02 00 00    	ja     0x5af394
5af0f0:	85 c9                	test   %ecx,%ecx
5af0f2:	0f 84 9c 02 00 00    	je     0x5af394
5af0f8:	0f b6 18             	movzbl (%eax),%ebx
5af0fb:	83 c1 ff             	add    $0xffffffff,%ecx
5af0fe:	0f 84 90 02 00 00    	je     0x5af394
5af104:	0f b6 78 01          	movzbl 0x1(%eax),%edi
5af108:	83 e9 01             	sub    $0x1,%ecx
5af10b:	0f 85 83 02 00 00    	jne    0x5af394
5af111:	8b 8e 84 00 00 00    	mov    0x84(%esi),%ecx
5af117:	85 c9                	test   %ecx,%ecx
5af119:	74 15                	je     0x5af130
5af11b:	ff b6 88 00 00 00    	push   0x88(%esi)
5af121:	56                   	push   %esi
5af122:	6a 02                	push   $0x2
5af124:	50                   	push   %eax
5af125:	6a 15                	push   $0x15
5af127:	ff 36                	push   (%esi)
5af129:	6a 00                	push   $0x0
5af12b:	ff d1                	call   *%ecx
5af12d:	83 c4 1c             	add    $0x1c,%esp
5af130:	8b ae b4 04 00 00    	mov    0x4b4(%esi),%ebp
5af136:	85 ed                	test   %ebp,%ebp
5af138:	75 1a                	jne    0x5af154
5af13a:	8b 86 d0 04 00 00    	mov    0x4d0(%esi),%eax
5af140:	8b a8 a0 00 00 00    	mov    0xa0(%eax),%ebp
5af146:	85 ed                	test   %ebp,%ebp
5af148:	75 0a                	jne    0x5af154
5af14a:	8b 44 24 14          	mov    0x14(%esp),%eax
5af14e:	8b e8                	mov    %eax,%ebp
5af150:	85 c0                	test   %eax,%eax
5af152:	74 13                	je     0x5af167
5af154:	8b c3                	mov    %ebx,%eax
5af156:	c1 e0 08             	shl    $0x8,%eax
5af159:	0b c7                	or     %edi,%eax
5af15b:	50                   	push   %eax
5af15c:	68 04 40 00 00       	push   $0x4004
5af161:	56                   	push   %esi
5af162:	ff d5                	call   *%ebp
5af164:	83 c4 0c             	add    $0xc,%esp
5af167:	83 fb 01             	cmp    $0x1,%ebx
5af16a:	0f 85 7a 01 00 00    	jne    0x5af2ea
5af170:	8b 46 7c             	mov    0x7c(%esi),%eax
5af173:	89 b8 e0 00 00 00    	mov    %edi,0xe0(%eax)
5af179:	89 9e 18 09 00 00    	mov    %ebx,0x918(%esi)
5af17f:	ff 86 34 0f 00 00    	incl   0xf34(%esi)
5af185:	83 be 34 0f 00 00 05 	cmpl   $0x5,0xf34(%esi)
5af18c:	0f 84 3d 01 00 00    	je     0x5af2cf
5af192:	85 ff                	test   %edi,%edi
5af194:	0f 84 1c 01 00 00    	je     0x5af2b6
5af19a:	8b 5c 24 68          	mov    0x68(%esp),%ebx
5af19e:	8b 7c 24 10          	mov    0x10(%esp),%edi
5af1a2:	e9 8d fd ff ff       	jmp    0x5aef34
5af1a7:	83 f8 16             	cmp    $0x16,%eax
5af1aa:	0f 85 09 02 00 00    	jne    0x5af3b9
5af1b0:	56                   	push   %esi
5af1b1:	e8 8a 0f f4 ff       	call   0x4f0140
5af1b6:	83 c4 04             	add    $0x4,%esp
5af1b9:	85 c0                	test   %eax,%eax
5af1bb:	0f 85 f8 01 00 00    	jne    0x5af3b9
5af1c1:	8b 86 38 0f 00 00    	mov    0xf38(%esi),%eax
5af1c7:	0f b7 00             	movzwl (%eax),%eax
5af1ca:	39 86 1c 09 00 00    	cmp    %eax,0x91c(%esi)
5af1d0:	0f 85 de fe ff ff    	jne    0x5af0b4
5af1d6:	83 be 00 09 00 00 0c 	cmpl   $0xc,0x900(%esi)
5af1dd:	0f 82 d1 fe ff ff    	jb     0x5af0b4
5af1e3:	8d 44 24 20          	lea    0x20(%esp),%eax
5af1e7:	50                   	push   %eax
5af1e8:	ff b6 0c 09 00 00    	push   0x90c(%esi)
5af1ee:	e8 8d 75 ff ff       	call   0x5a6780
5af1f3:	83 c4 08             	add    $0x8,%esp
5af1f6:	80 7c 24 20 14       	cmpb   $0x14,0x20(%esp)
5af1fb:	56                   	push   %esi
5af1fc:	0f 85 83 00 00 00    	jne    0x5af285
5af202:	e8 59 88 ff ff       	call   0x5a7a60
5af207:	83 c4 04             	add    $0x4,%esp
5af20a:	85 c0                	test   %eax,%eax
5af20c:	0f 88 e3 fc ff ff    	js     0x5aeef5
5af212:	56                   	push   %esi
5af213:	e8 d8 7d ff ff       	call   0x5a6ff0
5af218:	83 c4 04             	add    $0x4,%esp
5af21b:	85 c0                	test   %eax,%eax
5af21d:	7f 11                	jg     0x5af230
5af21f:	56                   	push   %esi
5af220:	e8 4b ff fd ff       	call   0x58f170
5af225:	83 c4 04             	add    $0x4,%esp
5af228:	85 c0                	test   %eax,%eax
5af22a:	0f 85 c5 fc ff ff    	jne    0x5aeef5
5af230:	c7 86 00 09 00 00 00 	movl   $0x0,0x900(%esi)
5af237:	00 00 00
5af23a:	c7 86 18 09 00 00 01 	movl   $0x1,0x918(%esi)
5af241:	00 00 00
5af244:	f6 86 f0 04 00 00 04 	testb  $0x4,0x4f0(%esi)
5af24b:	0f 85 e3 fc ff ff    	jne    0x5aef34
5af251:	83 be 74 06 00 00 00 	cmpl   $0x0,0x674(%esi)
5af258:	0f 85 d6 fc ff ff    	jne    0x5aef34
5af25e:	56                   	push   %esi
5af25f:	c7 46 14 03 00 00 00 	movl   $0x3,0x14(%esi)
5af266:	e8 e5 7f f3 ff       	call   0x4e7250
5af26b:	8b f0                	mov    %eax,%esi
5af26d:	6a 0f                	push   $0xf
5af26f:	56                   	push   %esi
5af270:	e8 8b 98 f4 ff       	call   0x4f8b00
5af275:	6a 09                	push   $0x9
5af277:	56                   	push   %esi
5af278:	e8 03 a2 f4 ff       	call   0x4f9480
5af27d:	83 c4 14             	add    $0x14,%esp
5af280:	e9 70 fc ff ff       	jmp    0x5aeef5
5af285:	e8 b6 fd fd ff       	call   0x58f040
5af28a:	83 c4 04             	add    $0x4,%esp
5af28d:	85 c0                	test   %eax,%eax
5af28f:	0f 84 1a 01 00 00    	je     0x5af3af
5af295:	6a 01                	push   $0x1
5af297:	56                   	push   %esi
5af298:	e8 03 ff fd ff       	call   0x58f1a0
5af29d:	8b 46 18             	mov    0x18(%esi),%eax
5af2a0:	56                   	push   %esi
5af2a1:	ff d0                	call   *%eax
5af2a3:	83 c4 0c             	add    $0xc,%esp
5af2a6:	85 c0                	test   %eax,%eax
5af2a8:	0f 88 4a fc ff ff    	js     0x5aeef8
5af2ae:	0f 84 41 fc ff ff    	je     0x5aeef5
5af2b4:	eb 8e                	jmp    0x5af244