41108c:	8d 45 f8             	lea    -0x8(%ebp),%eax
41108f:	50                   	push   %eax
411090:	57                   	push   %edi
411091:	e8 5d fe ff ff       	call   0x410ef3
411096:	8b f0                	mov    %eax,%esi
411098:	85 f6                	test   %esi,%esi
41109a:	79 0a                	jns    0x4110a6
41109c:	68 a0 36 45 00       	push   $0x4536a0
4110a1:	e9 ca fe ff ff       	jmp    0x410f70
4110a6:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4110a9:	8b 45 18             	mov    0x18(%ebp),%eax
4110ac:	6a 00                	push   $0x0
4110ae:	c7 03 0a 00 00 00    	movl   $0xa,(%ebx)
4110b4:	89 43 04             	mov    %eax,0x4(%ebx)
4110b7:	8b 45 0c             	mov    0xc(%ebp),%eax
4110ba:	89 43 08             	mov    %eax,0x8(%ebx)
4110bd:	8b 45 14             	mov    0x14(%ebp),%eax
4110c0:	89 43 0c             	mov    %eax,0xc(%ebx)
4110c3:	8d 43 10             	lea    0x10(%ebx),%eax
4110c6:	ff 75 fc             	push   -0x4(%ebp)
4110c9:	50                   	push   %eax
4110ca:	e8 d6 10 ff ff       	call   0x4021a5
4110cf:	8b f0                	mov    %eax,%esi
4110d1:	85 f6                	test   %esi,%esi
4110d3:	79 0a                	jns    0x4110df
4110d5:	68 d4 36 45 00       	push   $0x4536d4
4110da:	e9 91 fe ff ff       	jmp    0x410f70
4110df:	2b 5f 4c             	sub    0x4c(%edi),%ebx
4110e2:	8b c3                	mov    %ebx,%eax
4110e4:	8b 5d 14             	mov    0x14(%ebp),%ebx
4110e7:	6a 28                	push   $0x28
4110e9:	99                   	cltd
4110ea:	59                   	pop    %ecx
4110eb:	f7 f9                	idiv   %ecx
4110ed:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4110f1:	89 45 18             	mov    %eax,0x18(%ebp)
4110f4:	8d 45 f8             	lea    -0x8(%ebp),%eax
4110f7:	50                   	push   %eax
4110f8:	57                   	push   %edi
4110f9:	e8 f5 fd ff ff       	call   0x410ef3
4110fe:	8b f0                	mov    %eax,%esi
411100:	85 f6                	test   %esi,%esi
411102:	79 0a                	jns    0x41110e
411104:	68 34 35 45 00       	push   $0x453534
411109:	e9 62 fe ff ff       	jmp    0x410f70
41110e:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
411112:	75 26                	jne    0x41113a
411114:	8b 4d f8             	mov    -0x8(%ebp),%ecx
411117:	8b 45 0c             	mov    0xc(%ebp),%eax
41111a:	c7 01 0b 00 00 00    	movl   $0xb,(%ecx)
411120:	89 41 08             	mov    %eax,0x8(%ecx)
411123:	33 c0                	xor    %eax,%eax
411125:	89 59 0c             	mov    %ebx,0xc(%ecx)
411128:	40                   	inc    %eax
411129:	89 41 1c             	mov    %eax,0x1c(%ecx)
41112c:	8b 45 18             	mov    0x18(%ebp),%eax
41112f:	89 41 10             	mov    %eax,0x10(%ecx)
411132:	8b 45 fc             	mov    -0x4(%ebp),%eax
411135:	89 41 18             	mov    %eax,0x18(%ecx)
411138:	eb 45                	jmp    0x41117f
41113a:	8b 45 f8             	mov    -0x8(%ebp),%eax
41113d:	6a 00                	push   $0x0
41113f:	ff 75 1c             	push   0x1c(%ebp)
411142:	83 c0 18             	add    $0x18,%eax
411145:	50                   	push   %eax
411146:	e8 5a 10 ff ff       	call   0x4021a5
41114b:	8b f0                	mov    %eax,%esi
41114d:	85 f6                	test   %esi,%esi
41114f:	79 0a                	jns    0x41115b
411151:	68 64 35 45 00       	push   $0x453564
411156:	e9 15 fe ff ff       	jmp    0x410f70
41115b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41115e:	8b 45 0c             	mov    0xc(%ebp),%eax
411161:	c7 01 0c 00 00 00    	movl   $0xc,(%ecx)
411167:	89 41 08             	mov    %eax,0x8(%ecx)
41116a:	33 c0                	xor    %eax,%eax
41116c:	89 59 0c             	mov    %ebx,0xc(%ecx)
41116f:	40                   	inc    %eax
411170:	89 41 20             	mov    %eax,0x20(%ecx)
411173:	8b 45 18             	mov    0x18(%ebp),%eax
411176:	89 41 10             	mov    %eax,0x10(%ecx)
411179:	8b 45 fc             	mov    -0x4(%ebp),%eax
41117c:	89 41 1c             	mov    %eax,0x1c(%ecx)
41117f:	8b 43 10             	mov    0x10(%ebx),%eax
411182:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
411186:	01 47 20             	add    %eax,0x20(%edi)
411189:	8b 43 14             	mov    0x14(%ebx),%eax
41118c:	11 47 24             	adc    %eax,0x24(%edi)
41118f:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
411193:	74 08                	je     0x41119d
411195:	ff 75 fc             	push   -0x4(%ebp)
411198:	e8 52 43 03 00       	call   0x4454ef
41119d:	5f                   	pop    %edi
41119e:	8b c6                	mov    %esi,%eax
4111a0:	5e                   	pop    %esi
4111a1:	5b                   	pop    %ebx
4111a2:	8b e5                	mov    %ebp,%esp
4111a4:	5d                   	pop    %ebp
4111a5:	c2 18 00             	ret    $0x18
4111a8:	55                   	push   %ebp
4111a9:	8b ec                	mov    %esp,%ebp
4111ab:	83 ec 10             	sub    $0x10,%esp
4111ae:	33 c0                	xor    %eax,%eax
4111b0:	c7 45 f0 00 00 00 80 	movl   $0x80000000,-0x10(%ebp)
4111b7:	56                   	push   %esi
4111b8:	8b f0                	mov    %eax,%esi
4111ba:	89 45 f4             	mov    %eax,-0xc(%ebp)
4111bd:	89 45 fc             	mov    %eax,-0x4(%ebp)
4111c0:	89 45 f8             	mov    %eax,-0x8(%ebp)
4111c3:	39 45 18             	cmp    %eax,0x18(%ebp)
4111c6:	0f 85 e7 00 00 00    	jne    0x4112b3
4111cc:	57                   	push   %edi
4111cd:	8b 7d 14             	mov    0x14(%ebp),%edi
4111d0:	39 47 0c             	cmp    %eax,0xc(%edi)
4111d3:	0f 85 d9 00 00 00    	jne    0x4112b2
4111d9:	53                   	push   %ebx
4111da:	8b 5d 08             	mov    0x8(%ebp),%ebx
4111dd:	50                   	push   %eax
4111de:	50                   	push   %eax
4111df:	ff 75 10             	push   0x10(%ebp)
4111e2:	50                   	push   %eax
4111e3:	57                   	push   %edi
4111e4:	53                   	push   %ebx
4111e5:	6a 07                	push   $0x7
4111e7:	e8 11 04 00 00       	call   0x4115fd
4111ec:	85 c0                	test   %eax,%eax
4111ee:	0f 85 af 00 00 00    	jne    0x4112a3
4111f4:	8d 45 f0             	lea    -0x10(%ebp),%eax
4111f7:	50                   	push   %eax
4111f8:	8d 45 f4             	lea    -0xc(%ebp),%eax
4111fb:	50                   	push   %eax
4111fc:	57                   	push   %edi
4111fd:	53                   	push   %ebx
4111fe:	e8 c0 f7 ff ff       	call   0x4109c3
411203:	8b f0                	mov    %eax,%esi
411205:	85 f6                	test   %esi,%esi
411207:	79 12                	jns    0x41121b
411209:	68 c0 34 45 00       	push   $0x4534c0
41120e:	56                   	push   %esi
41120f:	e8 1b ef 02 00       	call   0x44012f
411214:	59                   	pop    %ecx
411215:	59                   	pop    %ecx
411216:	e9 88 00 00 00       	jmp    0x4112a3
41121b:	8b 45 f4             	mov    -0xc(%ebp),%eax
41121e:	6a 00                	push   $0x0
411220:	ff 70 0c             	push   0xc(%eax)
411223:	8d 45 fc             	lea    -0x4(%ebp),%eax
411226:	50                   	push   %eax
411227:	e8 79 0f ff ff       	call   0x4021a5
41122c:	8b f0                	mov    %eax,%esi
41122e:	85 f6                	test   %esi,%esi
411230:	79 07                	jns    0x411239
411232:	68 00 35 45 00       	push   $0x453500
411237:	eb d5                	jmp    0x41120e
411239:	8d 45 f8             	lea    -0x8(%ebp),%eax
41123c:	50                   	push   %eax
41123d:	53                   	push   %ebx
41123e:	e8 b0 fc ff ff       	call   0x410ef3
411243:	8b f0                	mov    %eax,%esi
411245:	85 f6                	test   %esi,%esi
411247:	79 07                	jns    0x411250
411249:	68 34 35 45 00       	push   $0x453534
41124e:	eb be                	jmp    0x41120e
411250:	8b 45 f8             	mov    -0x8(%ebp),%eax
411253:	6a 00                	push   $0x0
411255:	ff 75 1c             	push   0x1c(%ebp)
411258:	83 c0 18             	add    $0x18,%eax
41125b:	50                   	push   %eax
41125c:	e8 44 0f ff ff       	call   0x4021a5
411261:	8b f0                	mov    %eax,%esi
411263:	85 f6                	test   %esi,%esi
411265:	79 07                	jns    0x41126e
411267:	68 64 35 45 00       	push   $0x453564
41126c:	eb a0                	jmp    0x41120e
41126e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
411271:	8b 45 0c             	mov    0xc(%ebp),%eax
411274:	c7 01 09 00 00 00    	movl   $0x9,(%ecx)
41127a:	89 41 08             	mov    %eax,0x8(%ecx)
41127d:	8b 45 f0             	mov    -0x10(%ebp),%eax
411280:	89 79 0c             	mov    %edi,0xc(%ecx)
411283:	c7 41 20 01 00 00 00 	movl   $0x1,0x20(%ecx)
41128a:	89 41 10             	mov    %eax,0x10(%ecx)
41128d:	8b 45 fc             	mov    -0x4(%ebp),%eax
411290:	89 41 1c             	mov    %eax,0x1c(%ecx)
411293:	8b 47 18             	mov    0x18(%edi),%eax
411296:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41129a:	01 43 20             	add    %eax,0x20(%ebx)
41129d:	8b 47 1c             	mov    0x1c(%edi),%eax
4112a0:	11 43 24             	adc    %eax,0x24(%ebx)
4112a3:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4112a7:	5b                   	pop    %ebx
4112a8:	74 08                	je     0x4112b2
4112aa:	ff 75 fc             	push   -0x4(%ebp)
4112ad:	e8 3d 42 03 00       	call   0x4454ef
4112b2:	5f                   	pop    %edi
4112b3:	8b c6                	mov    %esi,%eax
4112b5:	5e                   	pop    %esi
4112b6:	8b e5                	mov    %ebp,%esp
4112b8:	5d                   	pop    %ebp
4112b9:	c2 18 00             	ret    $0x18
4112bc:	55                   	push   %ebp
4112bd:	8b ec                	mov    %esp,%ebp
4112bf:	53                   	push   %ebx
4112c0:	56                   	push   %esi
4112c1:	8b 75 08             	mov    0x8(%ebp),%esi
4112c4:	57                   	push   %edi
4112c5:	6a 05                	push   $0x5
4112c7:	6a 28                	push   $0x28
4112c9:	8b 46 58             	mov    0x58(%esi),%eax
4112cc:	8d 5e 54             	lea    0x54(%esi),%ebx
4112cf:	40                   	inc    %eax
4112d0:	50                   	push   %eax
4112d1:	53                   	push   %ebx
4112d2:	e8 1f 26 ff ff       	call   0x4038f6
4112d7:	8b f8                	mov    %eax,%edi
4112d9:	85 ff                	test   %edi,%edi
4112db:	79 0f                	jns    0x4112ec
4112dd:	68 88 34 45 00       	push   $0x453488
4112e2:	57                   	push   %edi
4112e3:	e8 47 ee 02 00       	call   0x44012f
4112e8:	59                   	pop    %ecx
4112e9:	59                   	pop    %ecx
4112ea:	eb 0e                	jmp    0x4112fa
4112ec:	6b 4e 58 28          	imul   $0x28,0x58(%esi),%ecx
4112f0:	8b 45 0c             	mov    0xc(%ebp),%eax
4112f3:	03 0b                	add    (%ebx),%ecx
4112f5:	89 08                	mov    %ecx,(%eax)
4112f7:	ff 46 58             	incl   0x58(%esi)
4112fa:	8b c7                	mov    %edi,%eax
4112fc:	5f                   	pop    %edi
4112fd:	5e                   	pop    %esi
4112fe:	5b                   	pop    %ebx
4112ff:	5d                   	pop    %ebp
411300:	c2 08 00             	ret    $0x8
411303:	55                   	push   %ebp
411304:	8b ec                	mov    %esp,%ebp
411306:	8b 4d 0c             	mov    0xc(%ebp),%ecx
411309:	56                   	push   %esi
41130a:	8b 81 8c 00 00 00    	mov    0x8c(%ecx),%eax
411310:	83 e8 01             	sub    $0x1,%eax
411313:	74 4d                	je     0x411362
411315:	83 e8 01             	sub    $0x1,%eax
411318:	74 37                	je     0x411351
41131a:	83 e8 01             	sub    $0x1,%eax
41131d:	74 24                	je     0x411343
41131f:	83 e8 01             	sub    $0x1,%eax
411322:	74 14                	je     0x411338
411324:	be ff ff 00 80       	mov    $0x8000ffff,%esi
411329:	68 48 2b 45 00       	push   $0x452b48
41132e:	56                   	push   %esi
41132f:	e8 fb ed 02 00       	call   0x44012f
411334:	59                   	pop    %ecx
411335:	59                   	pop    %ecx
411336:	eb 35                	jmp    0x41136d
411338:	ff 75 14             	push   0x14(%ebp)
41133b:	51                   	push   %ecx
41133c:	e8 59 5d 01 00       	call   0x42709a
411341:	eb 28                	jmp    0x41136b
411343:	ff 75 14             	push   0x14(%ebp)
411346:	ff 75 08             	push   0x8(%ebp)
411349:	51                   	push   %ecx
41134a:	e8 8d 52 01 00       	call   0x4265dc
41134f:	eb 1a                	jmp    0x41136b
411351:	ff 75 14             	push   0x14(%ebp)
411354:	ff 75 08             	push   0x8(%ebp)
411357:	ff 75 10             	push   0x10(%ebp)
41135a:	51                   	push   %ecx
41135b:	e8 ad 3e 01 00       	call   0x42520d
411360:	eb 09                	jmp    0x41136b
411362:	ff 75 14             	push   0x14(%ebp)
411365:	51                   	push   %ecx
411366:	e8 b2 15 01 00       	call   0x42291d
41136b:	8b f0                	mov    %eax,%esi
41136d:	8b c6                	mov    %esi,%eax
41136f:	5e                   	pop    %esi
411370:	5d                   	pop    %ebp
411371:	c2 10 00             	ret    $0x10
411374:	55                   	push   %ebp
411375:	8b ec                	mov    %esp,%ebp
411377:	83 ec 10             	sub    $0x10,%esp
41137a:	53                   	push   %ebx
41137b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41137e:	33 c0                	xor    %eax,%eax
411380:	ba 00 00 00 80       	mov    $0x80000000,%edx
411385:	89 45 f4             	mov    %eax,-0xc(%ebp)
411388:	56                   	push   %esi
411389:	8b ca                	mov    %edx,%ecx
41138b:	89 55 f0             	mov    %edx,-0x10(%ebp)
41138e:	8b f0                	mov    %eax,%esi
411390:	89 4d fc             	mov    %ecx,-0x4(%ebp)
411393:	57                   	push   %edi
411394:	8b 7d 08             	mov    0x8(%ebp),%edi
411397:	89 45 f8             	mov    %eax,-0x8(%ebp)
41139a:	39 43 48             	cmp    %eax,0x48(%ebx)
41139d:	75 55                	jne    0x4113f4
41139f:	89 45 0c             	mov    %eax,0xc(%ebp)
4113a2:	8d 45 fc             	lea    -0x4(%ebp),%eax
4113a5:	50                   	push   %eax
4113a6:	8d 45 0c             	lea    0xc(%ebp),%eax
4113a9:	50                   	push   %eax
4113aa:	52                   	push   %edx
4113ab:	ff 75 10             	push   0x10(%ebp)
4113ae:	53                   	push   %ebx
4113af:	57                   	push   %edi
4113b0:	6a 07                	push   $0x7
4113b2:	e8 46 02 00 00       	call   0x4115fd
4113b7:	85 c0                	test   %eax,%eax
4113b9:	75 31                	jne    0x4113ec
4113bb:	8d 45 fc             	lea    -0x4(%ebp),%eax
4113be:	50                   	push   %eax
4113bf:	8d 45 0c             	lea    0xc(%ebp),%eax
4113c2:	50                   	push   %eax
4113c3:	53                   	push   %ebx
4113c4:	57                   	push   %edi
4113c5:	e8 f9 f5 ff ff       	call   0x4109c3
4113ca:	8b f0                	mov    %eax,%esi
4113cc:	85 f6                	test   %esi,%esi
4113ce:	79 12                	jns    0x4113e2
4113d0:	68 0c 37 45 00       	push   $0x45370c
4113d5:	56                   	push   %esi
4113d6:	e8 54 ed 02 00       	call   0x44012f
4113db:	59                   	pop    %ecx
4113dc:	59                   	pop    %ecx
4113dd:	e9 f3 00 00 00       	jmp    0x4114d5
4113e2:	8b 45 0c             	mov    0xc(%ebp),%eax
4113e5:	c7 40 04 01 00 00 00 	movl   $0x1,0x4(%eax)
4113ec:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4113ef:	ba 00 00 00 80       	mov    $0x80000000,%edx
4113f4:	8d 45 f0             	lea    -0x10(%ebp),%eax
4113f7:	3b ca                	cmp    %edx,%ecx
4113f9:	50                   	push   %eax
4113fa:	8d 45 f4             	lea    -0xc(%ebp),%eax
4113fd:	50                   	push   %eax
4113fe:	52                   	push   %edx
4113ff:	8b c1                	mov    %ecx,%eax
411401:	0f 44 45 10          	cmove  0x10(%ebp),%eax
411405:	50                   	push   %eax
411406:	53                   	push   %ebx
411407:	57                   	push   %edi
411408:	6a 08                	push   $0x8
41140a:	e8 ee 01 00 00       	call   0x4115fd
41140f:	85 c0                	test   %eax,%eax
411411:	75 7f                	jne    0x411492
411413:	50                   	push   %eax
411414:	39 43 48             	cmp    %eax,0x48(%ebx)
411417:	74 16                	je     0x41142f
411419:	8d 45 f8             	lea    -0x8(%ebp),%eax
41141c:	50                   	push   %eax
41141d:	e8 b5 1f ff ff       	call   0x4033d7
411422:	8b f0                	mov    %eax,%esi