478ee0:	83 c4 04             	add    $0x4,%esp
478ee3:	e9 20 66 f9 ff       	jmp    0x40f508
478ee8:	8b 0e                	mov    (%esi),%ecx
478eea:	85 c9                	test   %ecx,%ecx
478eec:	0f 84 16 66 f9 ff    	je     0x40f508
478ef2:	51                   	push   %ecx
478ef3:	e8 73 12 fd ff       	call   0x44a16b
478ef8:	e9 0b 66 f9 ff       	jmp    0x40f508
478efd:	8b 06                	mov    (%esi),%eax
478eff:	ff 70 04             	push   0x4(%eax)
478f02:	e8 57 66 fa ff       	call   0x41f55e
478f07:	83 c4 04             	add    $0x4,%esp
478f0a:	ff 36                	push   (%esi)
478f0c:	e8 4d 66 fa ff       	call   0x41f55e
478f11:	83 c4 04             	add    $0x4,%esp
478f14:	e9 ef 65 f9 ff       	jmp    0x40f508
478f19:	8b 0e                	mov    (%esi),%ecx
478f1b:	85 c9                	test   %ecx,%ecx
478f1d:	0f 84 e5 65 f9 ff    	je     0x40f508
478f23:	51                   	push   %ecx
478f24:	e8 9a 08 fc ff       	call   0x4397c3
478f29:	e9 da 65 f9 ff       	jmp    0x40f508
478f2e:	8b 0e                	mov    (%esi),%ecx
478f30:	85 c9                	test   %ecx,%ecx
478f32:	0f 84 d0 65 f9 ff    	je     0x40f508
478f38:	51                   	push   %ecx
478f39:	e8 af 08 fc ff       	call   0x4397ed
478f3e:	e9 c5 65 f9 ff       	jmp    0x40f508
478f43:	8b 0e                	mov    (%esi),%ecx
478f45:	85 c9                	test   %ecx,%ecx
478f47:	0f 84 bb 65 f9 ff    	je     0x40f508
478f4d:	51                   	push   %ecx
478f4e:	e8 46 9b f8 ff       	call   0x402a99
478f53:	e9 b0 65 f9 ff       	jmp    0x40f508
478f58:	8b 45 9c             	mov    -0x64(%ebp),%eax
478f5b:	85 c0                	test   %eax,%eax
478f5d:	0f 84 d4 65 f9 ff    	je     0x40f537
478f63:	50                   	push   %eax
478f64:	ff 15 4c d4 48 00    	call   *0x48d44c
478f6a:	ff 75 9c             	push   -0x64(%ebp)
478f6d:	e8 ec 65 fa ff       	call   0x41f55e
478f72:	83 c4 04             	add    $0x4,%esp
478f75:	e9 bd 65 f9 ff       	jmp    0x40f537
478f7a:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
478f7d:	85 c9                	test   %ecx,%ecx
478f7f:	0f 84 b2 65 f9 ff    	je     0x40f537
478f85:	51                   	push   %ecx
478f86:	e8 e0 11 fd ff       	call   0x44a16b
478f8b:	e9 a7 65 f9 ff       	jmp    0x40f537
478f90:	8b 45 9c             	mov    -0x64(%ebp),%eax
478f93:	ff 70 04             	push   0x4(%eax)
478f96:	e8 c3 65 fa ff       	call   0x41f55e
478f9b:	83 c4 04             	add    $0x4,%esp
478f9e:	ff 75 9c             	push   -0x64(%ebp)
478fa1:	e8 b8 65 fa ff       	call   0x41f55e
478fa6:	83 c4 04             	add    $0x4,%esp
478fa9:	e9 89 65 f9 ff       	jmp    0x40f537
478fae:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
478fb1:	85 c9                	test   %ecx,%ecx
478fb3:	0f 84 7e 65 f9 ff    	je     0x40f537
478fb9:	51                   	push   %ecx
478fba:	e8 04 08 fc ff       	call   0x4397c3
478fbf:	e9 73 65 f9 ff       	jmp    0x40f537
478fc4:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
478fc7:	85 c9                	test   %ecx,%ecx
478fc9:	0f 84 68 65 f9 ff    	je     0x40f537
478fcf:	51                   	push   %ecx
478fd0:	e8 18 08 fc ff       	call   0x4397ed
478fd5:	e9 5d 65 f9 ff       	jmp    0x40f537
478fda:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
478fdd:	85 c9                	test   %ecx,%ecx
478fdf:	0f 84 52 65 f9 ff    	je     0x40f537
478fe5:	51                   	push   %ecx
478fe6:	e8 ae 9a f8 ff       	call   0x402a99
478feb:	e9 47 65 f9 ff       	jmp    0x40f537
478ff0:	ff 75 c0             	push   -0x40(%ebp)
478ff3:	e8 66 65 fa ff       	call   0x41f55e
478ff8:	83 c4 04             	add    $0x4,%esp
478ffb:	56                   	push   %esi
478ffc:	e8 5d 65 fa ff       	call   0x41f55e
479001:	83 c4 04             	add    $0x4,%esp
479004:	e9 4a 65 f9 ff       	jmp    0x40f553
479009:	90                   	nop
47900a:	ae                   	scas   %es:(%edi),%al
47900b:	8a 47 00             	mov    0x0(%edi),%al
47900e:	ef                   	out    %eax,(%dx)
47900f:	f7 40 00 ef f7 40 00 	testl  $0x40f7ef,0x0(%eax)
479016:	76 8a                	jbe    0x478fa2
479018:	47                   	inc    %edi
479019:	00 ef                	add    %ch,%bh
47901b:	f7 40 00 98 8a 47 00 	testl  $0x478a98,0x0(%eax)
479022:	bb 8a 47 00 d9       	mov    $0xd900478a,%ebx
479027:	8a 47 00             	mov    0x0(%edi),%al
47902a:	05 8b 47 00 05       	add    $0x500478b,%eax
47902f:	8b 47 00             	mov    0x0(%edi),%eax
479032:	ef                   	out    %eax,(%dx)
479033:	8a 47 00             	mov    0x0(%edi),%al
479036:	f2 8d 47 00          	repnz lea 0x0(%edi),%eax
47903a:	72 f9                	jb     0x479035
47903c:	40                   	inc    %eax
47903d:	00 72 f9             	add    %dh,-0x7(%edx)
479040:	40                   	inc    %eax
479041:	00 ba 8d 47 00 72    	add    %bh,0x7200478d(%edx)
479047:	f9                   	stc
479048:	40                   	inc    %eax
479049:	00 dc                	add    %bl,%ah
47904b:	8d 47 00             	lea    0x0(%edi),%eax
47904e:	ff 8d 47 00 1d 8e    	decl   -0x71e2ffb9(%ebp)
479054:	47                   	inc    %edi
479055:	00 49 8e             	add    %cl,-0x72(%ecx)
479058:	47                   	inc    %edi
479059:	00 49 8e             	add    %cl,-0x72(%ecx)
47905c:	47                   	inc    %edi
47905d:	00 33                	add    %dh,(%ebx)
47905f:	8e 47 00             	mov    0x0(%edi),%es
479062:	ff 74 24 34          	push   0x34(%esp)
479066:	8b cf                	mov    %edi,%ecx
479068:	68 85 00 00 00       	push   $0x85
47906d:	e8 ea 3b fd ff       	call   0x44cc5c
479072:	83 c8 ff             	or     $0xffffffff,%eax
479075:	e9 2c a6 f9 ff       	jmp    0x4136a6
47907a:	ff 74 24 34          	push   0x34(%esp)
47907e:	8b cf                	mov    %edi,%ecx
479080:	6a 6f                	push   $0x6f
479082:	e8 d5 3b fd ff       	call   0x44cc5c
479087:	e9 db aa f9 ff       	jmp    0x413b67
47908c:	b9 04 00 00 00       	mov    $0x4,%ecx
479091:	89 4c 24 24          	mov    %ecx,0x24(%esp)
479095:	e9 cc a2 f9 ff       	jmp    0x413366
47909a:	8b 42 04             	mov    0x4(%edx),%eax
47909d:	66 83 78 08 33       	cmpw   $0x33,0x8(%eax)
4790a2:	74 13                	je     0x4790b7
4790a4:	8b 02                	mov    (%edx),%eax
4790a6:	8b 7a 04             	mov    0x4(%edx),%edi
4790a9:	8b 00                	mov    (%eax),%eax
4790ab:	3b 07                	cmp    (%edi),%eax
4790ad:	8b 7c 24 4c          	mov    0x4c(%esp),%edi
4790b1:	0f 84 48 01 00 00    	je     0x4791ff
4790b7:	8b 02                	mov    (%edx),%eax
4790b9:	8b 00                	mov    (%eax),%eax
4790bb:	83 f8 24             	cmp    $0x24,%eax
4790be:	75 08                	jne    0x4790c8
4790c0:	b3 01                	mov    $0x1,%bl
4790c2:	88 5c 24 13          	mov    %bl,0x13(%esp)
4790c6:	eb 11                	jmp    0x4790d9
4790c8:	83 f8 1e             	cmp    $0x1e,%eax
4790cb:	0f 85 2e 01 00 00    	jne    0x4791ff
4790d1:	c7 44 24 3c 00 01 00 	movl   $0x100,0x3c(%esp)
4790d8:	00
4790d9:	8b 42 04             	mov    0x4(%edx),%eax
4790dc:	83 c2 04             	add    $0x4,%edx
4790df:	46                   	inc    %esi
4790e0:	66 83 78 08 00       	cmpw   $0x0,0x8(%eax)
4790e5:	74 b3                	je     0x47909a
4790e7:	e9 fe a7 f9 ff       	jmp    0x4138ea
4790ec:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4790ef:	8b 44 24 14          	mov    0x14(%esp),%eax
4790f3:	8b 4b 04             	mov    0x4(%ebx),%ecx
4790f6:	6a 00                	push   $0x0
4790f8:	8b 04 81             	mov    (%ecx,%eax,4),%eax
4790fb:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
4790ff:	51                   	push   %ecx
479100:	8d 4c 24 30          	lea    0x30(%esp),%ecx
479104:	51                   	push   %ecx
479105:	ff 30                	push   (%eax)
479107:	e8 39 45 f9 ff       	call   0x40d645
47910c:	84 c0                	test   %al,%al
47910e:	0f 84 0c 01 00 00    	je     0x479220
479114:	f7 44 24 38 00 01 00 	testl  $0x100,0x38(%esp)
47911b:	00
47911c:	74 34                	je     0x479152
47911e:	f7 44 24 3c 00 01 00 	testl  $0x100,0x3c(%esp)
479125:	00
479126:	75 2a                	jne    0x479152
479128:	8b 44 24 40          	mov    0x40(%esp),%eax
47912c:	89 87 f4 00 00 00    	mov    %eax,0xf4(%edi)
479132:	8b 4b 04             	mov    0x4(%ebx),%ecx
479135:	8b 44 24 14          	mov    0x14(%esp),%eax
479139:	8b 04 81             	mov    (%ecx,%eax,4),%eax
47913c:	8b cf                	mov    %edi,%ecx
47913e:	0f bf 40 0a          	movswl 0xa(%eax),%eax
479142:	50                   	push   %eax
479143:	68 b0 00 00 00       	push   $0xb0
479148:	e8 0f 3b fd ff       	call   0x44cc5c
47914d:	e9 15 aa f9 ff       	jmp    0x413b67
479152:	8b 4c 24 28          	mov    0x28(%esp),%ecx
479156:	ff 44 24 14          	incl   0x14(%esp)
47915a:	6a 05                	push   $0x5
47915c:	46                   	inc    %esi
47915d:	e8 82 44 f9 ff       	call   0x40d5e4
479162:	84 c0                	test   %al,%al
479164:	74 2f                	je     0x479195
479166:	8b 43 04             	mov    0x4(%ebx),%eax
479169:	8b 4c 24 14          	mov    0x14(%esp),%ecx
47916d:	8b 04 88             	mov    (%eax,%ecx,4),%eax
479170:	66 83 78 08 4e       	cmpw   $0x4e,0x8(%eax)
479175:	75 1e                	jne    0x479195
479177:	6a 00                	push   $0x0
479179:	8d 44 24 2c          	lea    0x2c(%esp),%eax
47917d:	50                   	push   %eax
47917e:	8d 44 24 1c          	lea    0x1c(%esp),%eax
479182:	50                   	push   %eax
479183:	53                   	push   %ebx
479184:	8b cf                	mov    %edi,%ecx
479186:	e8 95 61 fe ff       	call   0x45f320
47918b:	85 c0                	test   %eax,%eax
47918d:	0f 88 d4 a9 f9 ff    	js     0x413b67
479193:	eb 3e                	jmp    0x4791d3
479195:	8b 4c 24 28          	mov    0x28(%esp),%ecx
479199:	6a 0f                	push   $0xf
47919b:	e8 44 44 f9 ff       	call   0x40d5e4
4791a0:	84 c0                	test   %al,%al
4791a2:	74 2f                	je     0x4791d3
4791a4:	8b 43 04             	mov    0x4(%ebx),%eax
4791a7:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4791ab:	8b 04 88             	mov    (%eax,%ecx,4),%eax
4791ae:	66 83 78 08 4e       	cmpw   $0x4e,0x8(%eax)
4791b3:	75 1e                	jne    0x4791d3
4791b5:	6a 00                	push   $0x0
4791b7:	6a 00                	push   $0x0
4791b9:	8d 44 24 30          	lea    0x30(%esp),%eax
4791bd:	50                   	push   %eax
4791be:	8d 44 24 20          	lea    0x20(%esp),%eax
4791c2:	50                   	push   %eax
4791c3:	53                   	push   %ebx
4791c4:	8b cf                	mov    %edi,%ecx
4791c6:	e8 23 64 fe ff       	call   0x45f5ee
4791cb:	85 c0                	test   %eax,%eax
4791cd:	0f 88 94 a9 f9 ff    	js     0x413b67
4791d3:	8d 4c 24 60          	lea    0x60(%esp),%ecx
4791d7:	e8 44 9a f9 ff       	call   0x412c20
4791dc:	8b 44 24 28          	mov    0x28(%esp),%eax
4791e0:	89 44 24 60          	mov    %eax,0x60(%esp)
4791e4:	8d 44 24 60          	lea    0x60(%esp),%eax
4791e8:	50                   	push   %eax
4791e9:	8d 4c 24 54          	lea    0x54(%esp),%ecx
4791ed:	c7 44 24 70 06 00 00 	movl   $0x6,0x70(%esp)
4791f4:	00
4791f5:	e8 dc 30 fa ff       	call   0x41c2d6
4791fa:	e9 93 a7 f9 ff       	jmp    0x413992
4791ff:	8b 44 24 18          	mov    0x18(%esp),%eax
479203:	8b cf                	mov    %edi,%ecx
479205:	8b 40 04             	mov    0x4(%eax),%eax
479208:	8b 44 b0 04          	mov    0x4(%eax,%esi,4),%eax
47920c:	0f bf 40 0a          	movswl 0xa(%eax),%eax
479210:	50                   	push   %eax
479211:	68 91 00 00 00       	push   $0x91
479216:	e8 41 3a fd ff       	call   0x44cc5c
47921b:	e9 47 a9 f9 ff       	jmp    0x413b67
479220:	8b 44 24 40          	mov    0x40(%esp),%eax
479224:	89 87 f4 00 00 00    	mov    %eax,0xf4(%edi)
47922a:	8b 4b 04             	mov    0x4(%ebx),%ecx
47922d:	8b 44 24 14          	mov    0x14(%esp),%eax
479231:	8b 04 81             	mov    (%ecx,%eax,4),%eax
479234:	8b cf                	mov    %edi,%ecx
479236:	ff 30                	push   (%eax)
479238:	e8 6d 8a f8 ff       	call   0x401caa
47923d:	8b 4b 04             	mov    0x4(%ebx),%ecx
479240:	85 c0                	test   %eax,%eax
479242:	8b 44 24 14          	mov    0x14(%esp),%eax
479246:	8b 04 81             	mov    (%ecx,%eax,4),%eax
479249:	8b cf                	mov    %edi,%ecx
47924b:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47924f:	50                   	push   %eax
479250:	75 0c                	jne    0x47925e
479252:	6a 79                	push   $0x79
479254:	e8 03 3a fd ff       	call   0x44cc5c
479259:	e9 09 a9 f9 ff       	jmp    0x413b67
47925e:	68 bc 00 00 00       	push   $0xbc
479263:	e8 f4 39 fd ff       	call   0x44cc5c
479268:	e9 fa a8 f9 ff       	jmp    0x413b67
47926d:	8b 43 04             	mov    0x4(%ebx),%eax
479270:	8b 04 88             	mov    (%eax,%ecx,4),%eax
479273:	8b cf                	mov    %edi,%ecx
479275:	0f bf 40 0a          	movswl 0xa(%eax),%eax
479279:	50                   	push   %eax
47927a:	6a 6f                	push   $0x6f
47927c:	e8 db 39 fd ff       	call   0x44cc5c
479281:	e9 e1 a8 f9 ff       	jmp    0x413b67
479286:	8d 44 24 20          	lea    0x20(%esp),%eax
47928a:	50                   	push   %eax
47928b:	8d 44 24 54          	lea    0x54(%esp),%eax
47928f:	50                   	push   %eax
479290:	e8 0d 3b fe ff       	call   0x45cda2
479295:	85 c0                	test   %eax,%eax
479297:	75 29                	jne    0x4792c2
479299:	8d 4c 24 74          	lea    0x74(%esp),%ecx
47929d:	e8 01 8e f8 ff       	call   0x4020a3
4792a2:	8b 4c 24 20          	mov    0x20(%esp),%ecx
4792a6:	85 c9                	test   %ecx,%ecx
4792a8:	7e 18                	jle    0x4792c2
4792aa:	c6 44 24 13 00       	movb   $0x0,0x13(%esp)
4792af:	8b f1                	mov    %ecx,%esi
4792b1:	8d 44 24 13          	lea    0x13(%esp),%eax
4792b5:	50                   	push   %eax
4792b6:	8d 4c 24 78          	lea    0x78(%esp),%ecx
4792ba:	e8 04 31 fa ff       	call   0x41c3c3
4792bf:	4e                   	dec    %esi
4792c0:	75 ef                	jne    0x4792b1
4792c2:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4792c6:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4792ca:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
4792ce:	e9 b7 a0 f9 ff       	jmp    0x41338a
4792d3:	c7 44 24 48 00 00 00 	movl   $0x0,0x48(%esp)
4792da:	00
4792db:	e9 df a0 f9 ff       	jmp    0x4133bf
4792e0:	8b 02                	mov    (%edx),%eax
4792e2:	8b 00                	mov    (%eax),%eax
4792e4:	83 f8 24             	cmp    $0x24,%eax
4792e7:	74 0a                	je     0x4792f3
4792e9:	83 f8 1e             	cmp    $0x1e,%eax
4792ec:	75 09                	jne    0x4792f7
4792ee:	be 00 01 00 00       	mov    $0x100,%esi
4792f3:	43                   	inc    %ebx
4792f4:	83 c2 04             	add    $0x4,%edx
4792f7:	8b 02                	mov    (%edx),%eax
4792f9:	66 83 78 08 00       	cmpw   $0x0,0x8(%eax)
4792fe:	74 e0                	je     0x4792e0
479300:	89 5c 24 24          	mov    %ebx,0x24(%esp)
479304:	e9 e0 a3 f9 ff       	jmp    0x4136e9
479309:	8b 02                	mov    (%edx),%eax
47930b:	83 78 0c 06          	cmpl   $0x6,0xc(%eax)
47930f:	75 04                	jne    0x479315
479311:	8b 10                	mov    (%eax),%edx
479313:	eb 02                	jmp    0x479317
479315:	33 d2                	xor    %edx,%edx
479317:	8b 01                	mov    (%ecx),%eax
479319:	6a 01                	push   $0x1
47931b:	81 ce 00 02 00 00    	or     $0x200,%esi
479321:	56                   	push   %esi
479322:	52                   	push   %edx
479323:	ff 30                	push   (%eax)
479325:	e8 b9 ed fc ff       	call   0x4480e3
47932a:	84 c0                	test   %al,%al
47932c:	0f 84 0b 01 00 00    	je     0x47943d
479332:	8b 5c 24 18          	mov    0x18(%esp),%ebx
479336:	e9 59 a5 f9 ff       	jmp    0x413894
47933b:	56                   	push   %esi
47933c:	52                   	push   %edx
47933d:	53                   	push   %ebx
47933e:	b9 e0 20 4c 00       	mov    $0x4c20e0,%ecx
479343:	e8 1c 44 f9 ff       	call   0x40d764
479348:	8b 5c 24 18          	mov    0x18(%esp),%ebx
47934c:	e9 43 a5 f9 ff       	jmp    0x413894
479351:	8b 44 24 1c          	mov    0x1c(%esp),%eax
479355:	8b 08                	mov    (%eax),%ecx
479357:	85 c9                	test   %ecx,%ecx
479359:	0f 84 3a a4 f9 ff    	je     0x413799
47935f:	ff 74 24 30          	push   0x30(%esp)
479363:	8b 49 14             	mov    0x14(%ecx),%ecx