41ef63:	55                   	push   %ebp
41ef64:	8b ec                	mov    %esp,%ebp
41ef66:	8b 45 0c             	mov    0xc(%ebp),%eax
41ef69:	56                   	push   %esi
41ef6a:	83 e8 01             	sub    $0x1,%eax
41ef6d:	74 22                	je     0x41ef91
41ef6f:	83 e8 01             	sub    $0x1,%eax
41ef72:	74 19                	je     0x41ef8d
41ef74:	83 e8 01             	sub    $0x1,%eax
41ef77:	74 10                	je     0x41ef89
41ef79:	83 e8 01             	sub    $0x1,%eax
41ef7c:	74 07                	je     0x41ef85
41ef7e:	be 57 00 07 80       	mov    $0x80070057,%esi
41ef83:	eb 33                	jmp    0x41efb8
41ef85:	6a 05                	push   $0x5
41ef87:	eb 0a                	jmp    0x41ef93
41ef89:	6a 04                	push   $0x4
41ef8b:	eb 06                	jmp    0x41ef93
41ef8d:	6a 03                	push   $0x3
41ef8f:	eb 02                	jmp    0x41ef93
41ef91:	6a 02                	push   $0x2
41ef93:	58                   	pop    %eax
41ef94:	ff 75 10             	push   0x10(%ebp)
41ef97:	68 cc 9d 45 00       	push   $0x459dcc
41ef9c:	50                   	push   %eax
41ef9d:	e8 78 16 02 00       	call   0x44061a
41efa2:	8b f0                	mov    %eax,%esi
41efa4:	83 c4 0c             	add    $0xc,%esp
41efa7:	85 f6                	test   %esi,%esi
41efa9:	79 0d                	jns    0x41efb8
41efab:	68 d0 9d 45 00       	push   $0x459dd0
41efb0:	56                   	push   %esi
41efb1:	e8 79 11 02 00       	call   0x44012f
41efb6:	59                   	pop    %ecx
41efb7:	59                   	pop    %ecx
41efb8:	8b c6                	mov    %esi,%eax
41efba:	5e                   	pop    %esi
41efbb:	5d                   	pop    %ebp
41efbc:	c2 0c 00             	ret    $0xc
41efbf:	55                   	push   %ebp
41efc0:	8b ec                	mov    %esp,%ebp
41efc2:	51                   	push   %ecx
41efc3:	8b 55 10             	mov    0x10(%ebp),%edx
41efc6:	33 c9                	xor    %ecx,%ecx
41efc8:	56                   	push   %esi
41efc9:	57                   	push   %edi
41efca:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41efcd:	be 84 9d 45 00       	mov    $0x459d84,%esi
41efd2:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
41efd5:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
41efd8:	0f 85 99 00 00 00    	jne    0x41f077
41efde:	41                   	inc    %ecx
41efdf:	83 f9 04             	cmp    $0x4,%ecx
41efe2:	75 ee                	jne    0x41efd2
41efe4:	f7 45 18 03 00 00 00 	testl  $0x3,0x18(%ebp)
41efeb:	75 26                	jne    0x41f013
41efed:	be 05 40 00 80       	mov    $0x80004005,%esi
41eff2:	56                   	push   %esi
41eff3:	68 4c 03 00 00       	push   $0x34c
41eff8:	68 94 9d 45 00       	push   $0x459d94
41effd:	8b fe                	mov    %esi,%edi
41efff:	e8 cf 47 fe ff       	call   0x4037d3
41f004:	68 ac a3 45 00       	push   $0x45a3ac
41f009:	56                   	push   %esi
41f00a:	e8 20 11 02 00       	call   0x44012f
41f00f:	59                   	pop    %ecx
41f010:	59                   	pop    %ecx
41f011:	eb 69                	jmp    0x41f07c
41f013:	8b 4d 14             	mov    0x14(%ebp),%ecx
41f016:	85 c9                	test   %ecx,%ecx
41f018:	75 06                	jne    0x41f020
41f01a:	8b 4d 08             	mov    0x8(%ebp),%ecx
41f01d:	83 c1 fc             	add    $0xfffffffc,%ecx
41f020:	8b 55 0c             	mov    0xc(%ebp),%edx
41f023:	85 d2                	test   %edx,%edx
41f025:	75 1e                	jne    0x41f045
41f027:	be 05 40 00 80       	mov    $0x80004005,%esi
41f02c:	56                   	push   %esi
41f02d:	68 5a 03 00 00       	push   $0x35a
41f032:	68 94 9d 45 00       	push   $0x459d94
41f037:	8b fe                	mov    %esi,%edi
41f039:	e8 95 47 fe ff       	call   0x4037d3
41f03e:	68 10 a4 45 00       	push   $0x45a410
41f043:	eb c4                	jmp    0x41f009
41f045:	8b 02                	mov    (%edx),%eax
41f047:	8d 75 fc             	lea    -0x4(%ebp),%esi
41f04a:	56                   	push   %esi
41f04b:	6a 04                	push   $0x4
41f04d:	51                   	push   %ecx
41f04e:	52                   	push   %edx
41f04f:	ff 50 10             	call   *0x10(%eax)
41f052:	8b f8                	mov    %eax,%edi
41f054:	b8 70 00 03 80       	mov    $0x80030070,%eax
41f059:	3b f8                	cmp    %eax,%edi
41f05b:	75 08                	jne    0x41f065
41f05d:	68 3c a4 45 00       	push   $0x45a43c
41f062:	50                   	push   %eax
41f063:	eb a5                	jmp    0x41f00a
41f065:	85 ff                	test   %edi,%edi
41f067:	79 13                	jns    0x41f07c
41f069:	be 05 40 00 80       	mov    $0x80004005,%esi
41f06e:	8b fe                	mov    %esi,%edi
41f070:	68 78 a4 45 00       	push   $0x45a478
41f075:	eb 92                	jmp    0x41f009
41f077:	bf 02 40 00 80       	mov    $0x80004002,%edi
41f07c:	8b c7                	mov    %edi,%eax
41f07e:	5f                   	pop    %edi
41f07f:	5e                   	pop    %esi
41f080:	8b e5                	mov    %ebp,%esp
41f082:	5d                   	pop    %ebp
41f083:	c2 1c 00             	ret    $0x1c
41f086:	55                   	push   %ebp
41f087:	8b ec                	mov    %esp,%ebp
41f089:	8b 45 08             	mov    0x8(%ebp),%eax
41f08c:	56                   	push   %esi
41f08d:	ff 75 0c             	push   0xc(%ebp)
41f090:	33 f6                	xor    %esi,%esi
41f092:	56                   	push   %esi
41f093:	68 01 90 00 00       	push   $0x9001
41f098:	ff 70 10             	push   0x10(%eax)
41f09b:	ff 15 68 b3 44 00    	call   *0x44b368
41f0a1:	85 c0                	test   %eax,%eax
41f0a3:	75 3b                	jne    0x41f0e0
41f0a5:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41f0ab:	0f b7 f0             	movzwl %ax,%esi
41f0ae:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41f0b4:	85 c0                	test   %eax,%eax
41f0b6:	0f 4e f0             	cmovle %eax,%esi
41f0b9:	b8 05 40 00 80       	mov    $0x80004005,%eax
41f0be:	85 f6                	test   %esi,%esi
41f0c0:	0f 49 f0             	cmovns %eax,%esi
41f0c3:	56                   	push   %esi
41f0c4:	68 92 02 00 00       	push   $0x292
41f0c9:	68 94 9d 45 00       	push   $0x459d94
41f0ce:	e8 00 47 fe ff       	call   0x4037d3
41f0d3:	68 94 a2 45 00       	push   $0x45a294
41f0d8:	56                   	push   %esi
41f0d9:	e8 51 10 02 00       	call   0x44012f
41f0de:	59                   	pop    %ecx
41f0df:	59                   	pop    %ecx
41f0e0:	8b c6                	mov    %esi,%eax
41f0e2:	5e                   	pop    %esi
41f0e3:	5d                   	pop    %ebp
41f0e4:	c2 08 00             	ret    $0x8
41f0e7:	55                   	push   %ebp
41f0e8:	8b ec                	mov    %esp,%ebp
41f0ea:	56                   	push   %esi
41f0eb:	57                   	push   %edi
41f0ec:	8b 7d 10             	mov    0x10(%ebp),%edi
41f0ef:	33 f6                	xor    %esi,%esi
41f0f1:	85 ff                	test   %edi,%edi
41f0f3:	75 21                	jne    0x41f116
41f0f5:	be 57 00 07 80       	mov    $0x80070057,%esi
41f0fa:	56                   	push   %esi
41f0fb:	6a 10                	push   $0x10
41f0fd:	68 94 9d 45 00       	push   $0x459d94
41f102:	e8 cc 46 fe ff       	call   0x4037d3
41f107:	68 b0 9d 45 00       	push   $0x459db0
41f10c:	56                   	push   %esi
41f10d:	e8 1d 10 02 00       	call   0x44012f
41f112:	59                   	pop    %ecx
41f113:	59                   	pop    %ecx
41f114:	eb 6c                	jmp    0x41f182
41f116:	8b 55 0c             	mov    0xc(%ebp),%edx
41f119:	8b ce                	mov    %esi,%ecx
41f11b:	53                   	push   %ebx
41f11c:	89 37                	mov    %esi,(%edi)
41f11e:	bb 84 9d 45 00       	mov    $0x459d84,%ebx
41f123:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
41f126:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
41f129:	75 08                	jne    0x41f133
41f12b:	41                   	inc    %ecx
41f12c:	83 f9 04             	cmp    $0x4,%ecx
41f12f:	75 f2                	jne    0x41f123
41f131:	eb 3c                	jmp    0x41f16f
41f133:	bb dc 0b 46 00       	mov    $0x460bdc,%ebx
41f138:	8b ce                	mov    %esi,%ecx
41f13a:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
41f13d:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
41f140:	75 18                	jne    0x41f15a
41f142:	41                   	inc    %ecx
41f143:	83 f9 04             	cmp    $0x4,%ecx
41f146:	75 f2                	jne    0x41f13a
41f148:	8b 55 08             	mov    0x8(%ebp),%edx
41f14b:	8b ca                	mov    %edx,%ecx
41f14d:	f7 d9                	neg    %ecx
41f14f:	1b c9                	sbb    %ecx,%ecx
41f151:	8d 42 04             	lea    0x4(%edx),%eax
41f154:	23 c8                	and    %eax,%ecx
41f156:	89 0f                	mov    %ecx,(%edi)
41f158:	eb 1a                	jmp    0x41f174
41f15a:	bb cc 0b 46 00       	mov    $0x460bcc,%ebx
41f15f:	8b ce                	mov    %esi,%ecx
41f161:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
41f164:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
41f167:	75 13                	jne    0x41f17c
41f169:	41                   	inc    %ecx
41f16a:	83 f9 04             	cmp    $0x4,%ecx
41f16d:	75 f2                	jne    0x41f161
41f16f:	8b 55 08             	mov    0x8(%ebp),%edx
41f172:	89 17                	mov    %edx,(%edi)
41f174:	8b 02                	mov    (%edx),%eax
41f176:	52                   	push   %edx
41f177:	ff 50 04             	call   *0x4(%eax)
41f17a:	eb 05                	jmp    0x41f181
41f17c:	be 02 40 00 80       	mov    $0x80004002,%esi
41f181:	5b                   	pop    %ebx
41f182:	5f                   	pop    %edi
41f183:	8b c6                	mov    %esi,%eax
41f185:	5e                   	pop    %esi
41f186:	5d                   	pop    %ebp
41f187:	c2 0c 00             	ret    $0xc
41f18a:	83 6c 24 04 04       	subl   $0x4,0x4(%esp)
41f18f:	e9 53 ff ff ff       	jmp    0x41f0e7
41f194:	55                   	push   %ebp
41f195:	8b ec                	mov    %esp,%ebp
41f197:	8b 45 08             	mov    0x8(%ebp),%eax
41f19a:	56                   	push   %esi
41f19b:	33 f6                	xor    %esi,%esi
41f19d:	56                   	push   %esi
41f19e:	ff 75 0c             	push   0xc(%ebp)
41f1a1:	68 05 90 00 00       	push   $0x9005
41f1a6:	ff 70 10             	push   0x10(%eax)
41f1a9:	ff 15 68 b3 44 00    	call   *0x44b368
41f1af:	85 c0                	test   %eax,%eax
41f1b1:	75 3b                	jne    0x41f1ee
41f1b3:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41f1b9:	0f b7 f0             	movzwl %ax,%esi
41f1bc:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41f1c2:	85 c0                	test   %eax,%eax
41f1c4:	0f 4e f0             	cmovle %eax,%esi
41f1c7:	b8 05 40 00 80       	mov    $0x80004005,%eax
41f1cc:	85 f6                	test   %esi,%esi
41f1ce:	0f 49 f0             	cmovns %eax,%esi
41f1d1:	56                   	push   %esi
41f1d2:	68 c3 02 00 00       	push   $0x2c3
41f1d7:	68 94 9d 45 00       	push   $0x459d94
41f1dc:	e8 f2 45 fe ff       	call   0x4037d3
41f1e1:	68 f4 a2 45 00       	push   $0x45a2f4
41f1e6:	56                   	push   %esi
41f1e7:	e8 43 0f 02 00       	call   0x44012f
41f1ec:	59                   	pop    %ecx
41f1ed:	59                   	pop    %ecx
41f1ee:	8b c6                	mov    %esi,%eax
41f1f0:	5e                   	pop    %esi
41f1f1:	5d                   	pop    %ebp
41f1f2:	c2 08 00             	ret    $0x8
41f1f5:	55                   	push   %ebp
41f1f6:	8b ec                	mov    %esp,%ebp
41f1f8:	56                   	push   %esi
41f1f9:	8b 75 08             	mov    0x8(%ebp),%esi
41f1fc:	8d 46 08             	lea    0x8(%esi),%eax
41f1ff:	50                   	push   %eax
41f200:	ff 15 34 b2 44 00    	call   *0x44b234
41f206:	85 c0                	test   %eax,%eax
41f208:	7f 0c                	jg     0x41f216
41f20a:	6a 14                	push   $0x14
41f20c:	56                   	push   %esi
41f20d:	e8 d5 ee 00 00       	call   0x42e0e7
41f212:	59                   	pop    %ecx
41f213:	59                   	pop    %ecx
41f214:	33 c0                	xor    %eax,%eax
41f216:	5e                   	pop    %esi
41f217:	5d                   	pop    %ebp
41f218:	c2 04 00             	ret    $0x4
41f21b:	83 6c 24 04 04       	subl   $0x4,0x4(%esp)
41f220:	e9 d0 ff ff ff       	jmp    0x41f1f5
41f225:	55                   	push   %ebp
41f226:	8b ec                	mov    %esp,%ebp
41f228:	83 ec 0c             	sub    $0xc,%esp
41f22b:	53                   	push   %ebx
41f22c:	56                   	push   %esi
41f22d:	57                   	push   %edi
41f22e:	8b 7d 08             	mov    0x8(%ebp),%edi
41f231:	33 db                	xor    %ebx,%ebx
41f233:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41f236:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41f239:	89 5d f4             	mov    %ebx,-0xc(%ebp)
41f23c:	8b 47 0c             	mov    0xc(%edi),%eax
41f23f:	83 b8 90 04 00 00 03 	cmpl   $0x3,0x490(%eax)
41f246:	74 27                	je     0x41f26f
41f248:	be 9f 13 07 80       	mov    $0x8007139f,%esi
41f24d:	56                   	push   %esi
41f24e:	68 3e 01 00 00       	push   $0x13e
41f253:	68 94 9d 45 00       	push   $0x459d94
41f258:	e8 76 45 fe ff       	call   0x4037d3
41f25d:	68 f0 9d 45 00       	push   $0x459df0
41f262:	56                   	push   %esi
41f263:	e8 c7 0e 02 00       	call   0x44012f
41f268:	59                   	pop    %ecx
41f269:	59                   	pop    %ecx
41f26a:	e9 95 00 00 00       	jmp    0x41f304
41f26f:	ff 75 0c             	push   0xc(%ebp)
41f272:	8d 45 f8             	lea    -0x8(%ebp),%eax
41f275:	50                   	push   %eax
41f276:	8d 45 fc             	lea    -0x4(%ebp),%eax
41f279:	50                   	push   %eax
41f27a:	e8 33 05 02 00       	call   0x43f7b2
41f27f:	8b f0                	mov    %eax,%esi
41f281:	85 f6                	test   %esi,%esi
41f283:	79 07                	jns    0x41f28c
41f285:	68 f8 96 45 00       	push   $0x4596f8
41f28a:	eb d6                	jmp    0x41f262
41f28c:	39 5d 10             	cmp    %ebx,0x10(%ebp)
41f28f:	b8 24 b5 44 00       	mov    $0x44b524,%eax
41f294:	0f 45 45 10          	cmovne 0x10(%ebp),%eax
41f298:	50                   	push   %eax
41f299:	8d 45 f8             	lea    -0x8(%ebp),%eax
41f29c:	50                   	push   %eax
41f29d:	8d 45 fc             	lea    -0x4(%ebp),%eax
41f2a0:	50                   	push   %eax
41f2a1:	e8 3a 05 02 00       	call   0x43f7e0
41f2a6:	8b f0                	mov    %eax,%esi
41f2a8:	85 f6                	test   %esi,%esi
41f2aa:	79 07                	jns    0x41f2b3
41f2ac:	68 3c 9e 45 00       	push   $0x459e3c
41f2b1:	eb af                	jmp    0x41f262
41f2b3:	ff 75 14             	push   0x14(%ebp)
41f2b6:	8d 45 f8             	lea    -0x8(%ebp),%eax
41f2b9:	50                   	push   %eax
41f2ba:	8d 45 fc             	lea    -0x4(%ebp),%eax
41f2bd:	50                   	push   %eax
41f2be:	e8 ef 04 02 00       	call   0x43f7b2
41f2c3:	8b f0                	mov    %eax,%esi
41f2c5:	85 f6                	test   %esi,%esi
41f2c7:	79 07                	jns    0x41f2d0
41f2c9:	68 70 9e 45 00       	push   $0x459e70
41f2ce:	eb 92                	jmp    0x41f262
41f2d0:	8d 45 f4             	lea    -0xc(%ebp),%eax
41f2d3:	50                   	push   %eax
41f2d4:	8b 47 0c             	mov    0xc(%edi),%eax
41f2d7:	53                   	push   %ebx
41f2d8:	53                   	push   %ebx
41f2d9:	ff 75 f8             	push   -0x8(%ebp)
41f2dc:	ff 75 fc             	push   -0x4(%ebp)
41f2df:	6a 01                	push   $0x1
41f2e1:	ff b0 c8 04 00 00    	push   0x4c8(%eax)
41f2e7:	e8 99 5e ff ff       	call   0x415185
41f2ec:	8b f0                	mov    %eax,%esi
41f2ee:	85 f6                	test   %esi,%esi
41f2f0:	79 0a                	jns    0x41f2fc
41f2f2:	68 9c 9e 45 00       	push   $0x459e9c
41f2f7:	e9 66 ff ff ff       	jmp    0x41f262
41f2fc:	8b 4d 18             	mov    0x18(%ebp),%ecx
41f2ff:	8b 45 f4             	mov    -0xc(%ebp),%eax
41f302:	89 01                	mov    %eax,(%ecx)
41f304:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
41f307:	74 08                	je     0x41f311
41f309:	ff 75 fc             	push   -0x4(%ebp)
41f30c:	e8 88 46 fe ff       	call   0x403999