408edb:	74 11                	je     0x408eee
408edd:	83 e8 01             	sub    $0x1,%eax
408ee0:	0f 85 fc 00 00 00    	jne    0x408fe2
408ee6:	c7 02 0f 00 00 00    	movl   $0xf,(%edx)
408eec:	eb 06                	jmp    0x408ef4
408eee:	c7 02 0e 00 00 00    	movl   $0xe,(%edx)
408ef4:	33 f6                	xor    %esi,%esi
408ef6:	46                   	inc    %esi
408ef7:	e9 9b 04 00 00       	jmp    0x409397
408efc:	46                   	inc    %esi
408efd:	33 ff                	xor    %edi,%edi
408eff:	0f b7 04 71          	movzwl (%ecx,%esi,2),%eax
408f03:	66 3b f8             	cmp    %ax,%di
408f06:	74 42                	je     0x408f4a
408f08:	6a 22                	push   $0x22
408f0a:	5f                   	pop    %edi
408f0b:	66 3b f8             	cmp    %ax,%di
408f0e:	75 ec                	jne    0x408efc
408f10:	46                   	inc    %esi
408f11:	c7 02 12 00 00 00    	movl   $0x12,(%edx)
408f17:	8d 46 fe             	lea    -0x2(%esi),%eax
408f1a:	50                   	push   %eax
408f1b:	8d 41 02             	lea    0x2(%ecx),%eax
408f1e:	50                   	push   %eax
408f1f:	8d 43 18             	lea    0x18(%ebx),%eax
408f22:	50                   	push   %eax
408f23:	e8 cc 73 01 00       	call   0x4202f4
408f28:	8b c8                	mov    %eax,%ecx
408f2a:	89 4d 08             	mov    %ecx,0x8(%ebp)
408f2d:	85 c9                	test   %ecx,%ecx
408f2f:	0f 89 5f 04 00 00    	jns    0x409394
408f35:	68 38 de 44 00       	push   $0x44de38
408f3a:	51                   	push   %ecx
408f3b:	e8 ef 71 03 00       	call   0x44012f
408f40:	8b 7d 08             	mov    0x8(%ebp),%edi
408f43:	59                   	pop    %ecx
408f44:	59                   	pop    %ecx
408f45:	e9 59 04 00 00       	jmp    0x4093a3
408f4a:	be 0d 00 07 80       	mov    $0x8007000d,%esi
408f4f:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
408f56:	56                   	push   %esi
408f57:	68 7f 02 00 00       	push   $0x27f
408f5c:	68 44 dd 44 00       	push   $0x44dd44
408f61:	8b fe                	mov    %esi,%edi
408f63:	e8 6b a8 ff ff       	call   0x4037d3
408f68:	8b 45 f8             	mov    -0x8(%ebp),%eax
408f6b:	50                   	push   %eax
408f6c:	ff 73 04             	push   0x4(%ebx)
408f6f:	68 f0 dd 44 00       	push   $0x44ddf0
408f74:	e9 54 03 00 00       	jmp    0x4092cd
408f79:	c7 02 01 00 00 00    	movl   $0x1,(%edx)
408f7f:	e9 13 04 00 00       	jmp    0x409397
408f84:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
408f88:	83 e8 3c             	sub    $0x3c,%eax
408f8b:	74 2d                	je     0x408fba
408f8d:	83 e8 01             	sub    $0x1,%eax
408f90:	74 1d                	je     0x408faf
408f92:	83 e8 01             	sub    $0x1,%eax
408f95:	74 0d                	je     0x408fa4
408f97:	c7 02 05 00 01 00    	movl   $0x10005,(%edx)
408f9d:	8b f7                	mov    %edi,%esi
408f9f:	e9 a9 03 00 00       	jmp    0x40934d
408fa4:	c7 02 0a 00 01 00    	movl   $0x1000a,(%edx)
408faa:	e9 d6 03 00 00       	jmp    0x409385
408faf:	c7 02 07 00 01 00    	movl   $0x10007,(%edx)
408fb5:	e9 cb 03 00 00       	jmp    0x409385
408fba:	c7 02 0c 00 01 00    	movl   $0x1000c,(%edx)
408fc0:	e9 c0 03 00 00       	jmp    0x409385
408fc5:	83 e8 3d             	sub    $0x3d,%eax
408fc8:	0f 84 bb 03 00 00    	je     0x409389
408fce:	83 e8 01             	sub    $0x1,%eax
408fd1:	0f 84 7a 03 00 00    	je     0x409351
408fd7:	83 e8 40             	sub    $0x40,%eax
408fda:	0f 84 b4 02 00 00    	je     0x409294
408fe0:	33 ff                	xor    %edi,%edi
408fe2:	8b 55 fc             	mov    -0x4(%ebp),%edx
408fe5:	f6 c2 04             	test   $0x4,%dl
408fe8:	0f 85 ee 01 00 00    	jne    0x4091dc
408fee:	0f b7 01             	movzwl (%ecx),%eax
408ff1:	c7 45 08 2d 00 00 00 	movl   $0x2d,0x8(%ebp)
408ff8:	66 39 45 08          	cmp    %ax,0x8(%ebp)
408ffc:	0f 84 da 01 00 00    	je     0x4091dc
409002:	6a 5f                	push   $0x5f
409004:	58                   	pop    %eax
409005:	f7 c2 00 01 00 00    	test   $0x100,%edx
40900b:	75 37                	jne    0x409044
40900d:	0f b7 11             	movzwl (%ecx),%edx
409010:	66 3b c2             	cmp    %dx,%ax
409013:	74 2f                	je     0x409044
409015:	be 0d 00 07 80       	mov    $0x8007000d,%esi
40901a:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
409021:	56                   	push   %esi
409022:	68 f7 02 00 00       	push   $0x2f7
409027:	68 44 dd 44 00       	push   $0x44dd44
40902c:	8b fe                	mov    %esi,%edi
40902e:	e8 a0 a7 ff ff       	call   0x4037d3
409033:	8b 45 f8             	mov    -0x8(%ebp),%eax
409036:	50                   	push   %eax
409037:	ff 73 04             	push   0x4(%ebx)
40903a:	68 b8 df 44 00       	push   $0x44dfb8
40903f:	e9 89 02 00 00       	jmp    0x4092cd
409044:	8d 45 fc             	lea    -0x4(%ebp),%eax
409047:	50                   	push   %eax
409048:	6a 01                	push   $0x1
40904a:	8d 41 02             	lea    0x2(%ecx),%eax
40904d:	50                   	push   %eax
40904e:	6a 01                	push   $0x1
409050:	ff 15 e8 b1 44 00    	call   *0x44b1e8
409056:	8b 43 08             	mov    0x8(%ebx),%eax
409059:	6a 76                	push   $0x76
40905b:	59                   	pop    %ecx
40905c:	66 3b 08             	cmp    (%eax),%cx
40905f:	0f 85 c4 00 00 00    	jne    0x409129
409065:	f6 45 fc 04          	testb  $0x4,-0x4(%ebp)
409069:	0f 84 ba 00 00 00    	je     0x409129
40906f:	33 ff                	xor    %edi,%edi
409071:	47                   	inc    %edi
409072:	8b 43 08             	mov    0x8(%ebx),%eax
409075:	89 75 08             	mov    %esi,0x8(%ebp)
409078:	46                   	inc    %esi
409079:	6a 2e                	push   $0x2e
40907b:	59                   	pop    %ecx
40907c:	8d 04 70             	lea    (%eax,%esi,2),%eax
40907f:	66 3b 08             	cmp    (%eax),%cx
409082:	75 35                	jne    0x4090b9
409084:	47                   	inc    %edi
409085:	83 ff 04             	cmp    $0x4,%edi
409088:	76 e8                	jbe    0x409072
40908a:	be 0d 00 07 80       	mov    $0x8007000d,%esi
40908f:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
409096:	56                   	push   %esi
409097:	68 b9 02 00 00       	push   $0x2b9
40909c:	68 44 dd 44 00       	push   $0x44dd44
4090a1:	8b fe                	mov    %esi,%edi
4090a3:	e8 2b a7 ff ff       	call   0x4037d3
4090a8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4090ab:	50                   	push   %eax
4090ac:	ff 73 04             	push   0x4(%ebx)
4090af:	68 f8 de 44 00       	push   $0x44def8
4090b4:	e9 14 02 00 00       	jmp    0x4092cd
4090b9:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4090bc:	51                   	push   %ecx
4090bd:	6a 01                	push   $0x1
4090bf:	50                   	push   %eax
4090c0:	6a 01                	push   $0x1
4090c2:	ff 15 e8 b1 44 00    	call   *0x44b1e8
4090c8:	f6 45 fc 04          	testb  $0x4,-0x4(%ebp)
4090cc:	75 a4                	jne    0x409072
4090ce:	8d 43 18             	lea    0x18(%ebx),%eax
4090d1:	50                   	push   %eax
4090d2:	8b 43 08             	mov    0x8(%ebx),%eax
4090d5:	ff 75 08             	push   0x8(%ebp)
4090d8:	83 c0 02             	add    $0x2,%eax
4090db:	50                   	push   %eax
4090dc:	e8 79 ba 03 00       	call   0x444b5a
4090e1:	8b f8                	mov    %eax,%edi
4090e3:	85 ff                	test   %edi,%edi
4090e5:	79 2f                	jns    0x409116
4090e7:	be 0d 00 07 80       	mov    $0x8007000d,%esi
4090ec:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
4090f3:	56                   	push   %esi
4090f4:	68 cc 02 00 00       	push   $0x2cc
4090f9:	68 44 dd 44 00       	push   $0x44dd44
4090fe:	8b fe                	mov    %esi,%edi
409100:	e8 ce a6 ff ff       	call   0x4037d3
409105:	8b 45 f8             	mov    -0x8(%ebp),%eax
409108:	50                   	push   %eax
409109:	ff 73 04             	push   0x4(%ebx)
40910c:	68 50 df 44 00       	push   $0x44df50
409111:	e9 b7 01 00 00       	jmp    0x4092cd
409116:	c7 43 28 03 00 00 00 	movl   $0x3,0x28(%ebx)
40911d:	c7 43 10 13 00 00 00 	movl   $0x13,0x10(%ebx)
409124:	e9 6e 02 00 00       	jmp    0x409397
409129:	6a 5f                	push   $0x5f
40912b:	5f                   	pop    %edi
40912c:	46                   	inc    %esi
40912d:	8d 45 fc             	lea    -0x4(%ebp),%eax
409130:	50                   	push   %eax
409131:	8b 43 08             	mov    0x8(%ebx),%eax
409134:	6a 01                	push   $0x1
409136:	8d 0c 36             	lea    (%esi,%esi,1),%ecx
409139:	03 c1                	add    %ecx,%eax
40913b:	50                   	push   %eax
40913c:	6a 01                	push   $0x1
40913e:	ff 15 e8 b1 44 00    	call   *0x44b1e8
409144:	f7 45 fc 04 01 00 00 	testl  $0x104,-0x4(%ebp)
40914b:	75 df                	jne    0x40912c
40914d:	8b 43 08             	mov    0x8(%ebx),%eax
409150:	66 3b 3c 70          	cmp    (%eax,%esi,2),%di
409154:	74 d6                	je     0x40912c
409156:	6a 00                	push   $0x0
409158:	5f                   	pop    %edi
409159:	83 fe 02             	cmp    $0x2,%esi
40915c:	75 23                	jne    0x409181
40915e:	6a 02                	push   $0x2
409160:	68 9c df 44 00       	push   $0x44df9c
409165:	6a 02                	push   $0x2
409167:	50                   	push   %eax
409168:	6a 01                	push   $0x1
40916a:	6a 7f                	push   $0x7f
40916c:	ff 15 28 b1 44 00    	call   *0x44b128
409172:	8b 4d f4             	mov    -0xc(%ebp),%ecx
409175:	3b c1                	cmp    %ecx,%eax
409177:	75 53                	jne    0x4091cc
409179:	89 4b 10             	mov    %ecx,0x10(%ebx)
40917c:	e9 16 02 00 00       	jmp    0x409397
409181:	83 fe 03             	cmp    $0x3,%esi
409184:	75 46                	jne    0x4091cc
409186:	56                   	push   %esi
409187:	68 a4 df 44 00       	push   $0x44dfa4
40918c:	56                   	push   %esi
40918d:	50                   	push   %eax
40918e:	6a 01                	push   $0x1
409190:	6a 7f                	push   $0x7f
409192:	ff 15 28 b1 44 00    	call   *0x44b128
409198:	83 f8 02             	cmp    $0x2,%eax
40919b:	75 08                	jne    0x4091a5
40919d:	89 73 10             	mov    %esi,0x10(%ebx)
4091a0:	e9 f2 01 00 00       	jmp    0x409397
4091a5:	6a 03                	push   $0x3
4091a7:	68 ac df 44 00       	push   $0x44dfac
4091ac:	6a 03                	push   $0x3
4091ae:	ff 73 08             	push   0x8(%ebx)
4091b1:	6a 01                	push   $0x1
4091b3:	6a 7f                	push   $0x7f
4091b5:	ff 15 28 b1 44 00    	call   *0x44b128
4091bb:	83 f8 02             	cmp    $0x2,%eax
4091be:	75 0c                	jne    0x4091cc
4091c0:	c7 43 10 04 00 00 00 	movl   $0x4,0x10(%ebx)
4091c7:	e9 cb 01 00 00       	jmp    0x409397
4091cc:	56                   	push   %esi
4091cd:	ff 73 08             	push   0x8(%ebx)
4091d0:	c7 43 10 11 00 00 00 	movl   $0x11,0x10(%ebx)
4091d7:	e9 43 fd ff ff       	jmp    0x408f1f
4091dc:	6a 5f                	push   $0x5f
4091de:	5f                   	pop    %edi
4091df:	46                   	inc    %esi
4091e0:	8d 45 fc             	lea    -0x4(%ebp),%eax
4091e3:	50                   	push   %eax
4091e4:	6a 01                	push   $0x1
4091e6:	8d 04 71             	lea    (%ecx,%esi,2),%eax
4091e9:	50                   	push   %eax
4091ea:	6a 01                	push   $0x1
4091ec:	ff 15 e8 b1 44 00    	call   *0x44b1e8
4091f2:	f7 45 fc 00 01 00 00 	testl  $0x100,-0x4(%ebp)
4091f9:	75 6d                	jne    0x409268
4091fb:	8b 4b 08             	mov    0x8(%ebx),%ecx
4091fe:	66 3b 3c 71          	cmp    (%ecx,%esi,2),%di
409202:	74 64                	je     0x409268
409204:	f6 45 fc 04          	testb  $0x4,-0x4(%ebp)
409208:	75 d5                	jne    0x4091df
40920a:	8d 45 f0             	lea    -0x10(%ebp),%eax
40920d:	c7 43 10 10 00 00 00 	movl   $0x10,0x10(%ebx)
409214:	50                   	push   %eax
409215:	56                   	push   %esi
409216:	0f 57 c0             	xorps  %xmm0,%xmm0
409219:	51                   	push   %ecx
40921a:	66 0f 13 45 f0       	movlpd %xmm0,-0x10(%ebp)
40921f:	e8 a9 96 ff ff       	call   0x4028cd
409224:	85 c0                	test   %eax,%eax
409226:	79 2c                	jns    0x409254
409228:	be 0d 00 07 80       	mov    $0x8007000d,%esi
40922d:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
409234:	56                   	push   %esi
409235:	68 a1 02 00 00       	push   $0x2a1
40923a:	68 44 dd 44 00       	push   $0x44dd44
40923f:	8b fe                	mov    %esi,%edi
409241:	e8 8d a5 ff ff       	call   0x4037d3
409246:	8b 45 f8             	mov    -0x8(%ebp),%eax
409249:	50                   	push   %eax
40924a:	ff 73 04             	push   0x4(%ebx)
40924d:	68 b0 de 44 00       	push   $0x44deb0
409252:	eb 79                	jmp    0x4092cd
409254:	ff 75 f4             	push   -0xc(%ebp)
409257:	8d 43 18             	lea    0x18(%ebx),%eax
40925a:	ff 75 f0             	push   -0x10(%ebp)
40925d:	50                   	push   %eax
40925e:	e8 4d 70 01 00       	call   0x4202b0
409263:	e9 c0 fc ff ff       	jmp    0x408f28
409268:	be 0d 00 07 80       	mov    $0x8007000d,%esi
40926d:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
409274:	56                   	push   %esi
409275:	68 94 02 00 00       	push   $0x294
40927a:	68 44 dd 44 00       	push   $0x44dd44
40927f:	8b fe                	mov    %esi,%edi
409281:	e8 4d a5 ff ff       	call   0x4037d3
409286:	8b 45 f8             	mov    -0x8(%ebp),%eax
409289:	50                   	push   %eax
40928a:	ff 73 04             	push   0x4(%ebx)
40928d:	68 58 de 44 00       	push   $0x44de58
409292:	eb 39                	jmp    0x4092cd
409294:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
409298:	83 e8 3c             	sub    $0x3c,%eax
40929b:	74 7c                	je     0x409319
40929d:	83 e8 01             	sub    $0x1,%eax
4092a0:	74 6f                	je     0x409311
4092a2:	83 e8 01             	sub    $0x1,%eax
4092a5:	74 34                	je     0x4092db
4092a7:	be 0d 00 07 80       	mov    $0x8007000d,%esi
4092ac:	89 7b 30             	mov    %edi,0x30(%ebx)
4092af:	56                   	push   %esi
4092b0:	68 3f 02 00 00       	push   $0x23f
4092b5:	68 44 dd 44 00       	push   $0x44dd44
4092ba:	8b fe                	mov    %esi,%edi
4092bc:	e8 12 a5 ff ff       	call   0x4037d3
4092c1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4092c4:	50                   	push   %eax
4092c5:	ff 73 04             	push   0x4(%ebx)
4092c8:	68 a0 dd 44 00       	push   $0x44dda0
4092cd:	56                   	push   %esi
4092ce:	e8 5c 6e 03 00       	call   0x44012f
4092d3:	83 c4 10             	add    $0x10,%esp
4092d6:	e9 c8 00 00 00       	jmp    0x4093a3
4092db:	0f b7 41 04          	movzwl 0x4(%ecx),%eax
4092df:	83 e8 3c             	sub    $0x3c,%eax
4092e2:	74 25                	je     0x409309
4092e4:	83 e8 01             	sub    $0x1,%eax
4092e7:	74 18                	je     0x409301
4092e9:	83 e8 01             	sub    $0x1,%eax
4092ec:	74 0b                	je     0x4092f9
4092ee:	c7 02 06 00 03 00    	movl   $0x30006,(%edx)
4092f4:	e9 8c 00 00 00       	jmp    0x409385
4092f9:	c7 02 0d 00 03 00    	movl   $0x3000d,(%edx)
4092ff:	eb 49                	jmp    0x40934a
409301:	c7 02 08 00 03 00    	movl   $0x30008,(%edx)
409307:	eb 41                	jmp    0x40934a
409309:	c7 02 0b 00 03 00    	movl   $0x3000b,(%edx)
40930f:	eb 39                	jmp    0x40934a
409311:	c7 02 09 00 03 00    	movl   $0x30009,(%edx)
409317:	eb 6c                	jmp    0x409385
409319:	0f b7 41 04          	movzwl 0x4(%ecx),%eax
40931d:	83 e8 3c             	sub    $0x3c,%eax
409320:	74 22                	je     0x409344
409322:	83 e8 01             	sub    $0x1,%eax
409325:	74 15                	je     0x40933c
409327:	83 e8 01             	sub    $0x1,%eax
40932a:	74 08                	je     0x409334
40932c:	c7 02 05 00 03 00    	movl   $0x30005,(%edx)
409332:	eb 51                	jmp    0x409385
409334:	c7 02 0a 00 03 00    	movl   $0x3000a,(%edx)
40933a:	eb 0e                	jmp    0x40934a
40933c:	c7 02 07 00 03 00    	movl   $0x30007,(%edx)
409342:	eb 06                	jmp    0x40934a
409344:	c7 02 0c 00 03 00    	movl   $0x3000c,(%edx)
40934a:	6a 03                	push   $0x3
40934c:	5e                   	pop    %esi
40934d:	33 ff                	xor    %edi,%edi
40934f:	eb 46                	jmp    0x409397
409351:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
409355:	83 e8 3c             	sub    $0x3c,%eax