453fe9:	0f 94 c0             	sete   %al
453fec:	88 46 30             	mov    %al,0x30(%esi)
453fef:	8b 45 10             	mov    0x10(%ebp),%eax
453ff2:	a8 01                	test   $0x1,%al
453ff4:	74 07                	je     0x453ffd
453ff6:	81 4e 54 00 00 00 80 	orl    $0x80000000,0x54(%esi)
453ffd:	a8 02                	test   $0x2,%al
453fff:	74 07                	je     0x454008
454001:	81 4e 54 00 30 00 00 	orl    $0x3000,0x54(%esi)
454008:	8b c8                	mov    %eax,%ecx
45400a:	83 e1 04             	and    $0x4,%ecx
45400d:	74 08                	je     0x454017
45400f:	a8 08                	test   $0x8,%al
454011:	75 08                	jne    0x45401b
454013:	83 4e 54 01          	orl    $0x1,0x54(%esi)
454017:	a8 08                	test   $0x8,%al
454019:	74 08                	je     0x454023
45401b:	85 c9                	test   %ecx,%ecx
45401d:	75 04                	jne    0x454023
45401f:	83 4e 54 02          	orl    $0x2,0x54(%esi)
454023:	a8 10                	test   $0x10,%al
454025:	74 06                	je     0x45402d
454027:	88 9e dc 00 00 00    	mov    %bl,0xdc(%esi)
45402d:	8d 4d 18             	lea    0x18(%ebp),%ecx
454030:	e8 0d f5 fa ff       	call   0x403542
454035:	8b c6                	mov    %esi,%eax
454037:	5e                   	pop    %esi
454038:	5b                   	pop    %ebx
454039:	5d                   	pop    %ebp
45403a:	c2 88 00             	ret    $0x88
45403d:	33 c0                	xor    %eax,%eax
45403f:	89 41 04             	mov    %eax,0x4(%ecx)
454042:	89 41 08             	mov    %eax,0x8(%ecx)
454045:	89 41 0c             	mov    %eax,0xc(%ecx)
454048:	c7 01 34 3d 4b 00    	movl   $0x4b3d34,(%ecx)
45404e:	8b c1                	mov    %ecx,%eax
454050:	c3                   	ret
454051:	55                   	push   %ebp
454052:	8b ec                	mov    %esp,%ebp
454054:	56                   	push   %esi
454055:	8b 75 08             	mov    0x8(%ebp),%esi
454058:	57                   	push   %edi
454059:	56                   	push   %esi
45405a:	8b f9                	mov    %ecx,%edi
45405c:	e8 62 00 00 00       	call   0x4540c3
454061:	8d 46 34             	lea    0x34(%esi),%eax
454064:	50                   	push   %eax
454065:	8d 4f 34             	lea    0x34(%edi),%ecx
454068:	e8 56 00 00 00       	call   0x4540c3
45406d:	8b 46 68             	mov    0x68(%esi),%eax
454070:	89 47 68             	mov    %eax,0x68(%edi)
454073:	8b 46 6c             	mov    0x6c(%esi),%eax
454076:	89 47 6c             	mov    %eax,0x6c(%edi)
454079:	8b 46 70             	mov    0x70(%esi),%eax
45407c:	89 47 70             	mov    %eax,0x70(%edi)
45407f:	8b 46 74             	mov    0x74(%esi),%eax
454082:	89 47 74             	mov    %eax,0x74(%edi)
454085:	ff 00                	incl   (%eax)
454087:	8b c7                	mov    %edi,%eax
454089:	5f                   	pop    %edi
45408a:	5e                   	pop    %esi
45408b:	5d                   	pop    %ebp
45408c:	c2 04 00             	ret    $0x4
45408f:	55                   	push   %ebp
454090:	8b ec                	mov    %esp,%ebp
454092:	56                   	push   %esi
454093:	8b f1                	mov    %ecx,%esi
454095:	57                   	push   %edi
454096:	33 ff                	xor    %edi,%edi
454098:	68 e0 00 00 00       	push   $0xe0
45409d:	89 7e 04             	mov    %edi,0x4(%esi)
4540a0:	89 7e 08             	mov    %edi,0x8(%esi)
4540a3:	e8 42 b4 fc ff       	call   0x41f4ea
4540a8:	59                   	pop    %ecx
4540a9:	85 c0                	test   %eax,%eax
4540ab:	74 0c                	je     0x4540b9
4540ad:	ff 75 08             	push   0x8(%ebp)
4540b0:	8b c8                	mov    %eax,%ecx
4540b2:	e8 f1 fd ff ff       	call   0x453ea8
4540b7:	8b f8                	mov    %eax,%edi
4540b9:	89 3e                	mov    %edi,(%esi)
4540bb:	5f                   	pop    %edi
4540bc:	8b c6                	mov    %esi,%eax
4540be:	5e                   	pop    %esi
4540bf:	5d                   	pop    %ebp
4540c0:	c2 04 00             	ret    $0x4
4540c3:	55                   	push   %ebp
4540c4:	8b ec                	mov    %esp,%ebp
4540c6:	8b 55 08             	mov    0x8(%ebp),%edx
4540c9:	66 8b 02             	mov    (%edx),%ax
4540cc:	66 89 01             	mov    %ax,(%ecx)
4540cf:	8b 42 04             	mov    0x4(%edx),%eax
4540d2:	89 41 04             	mov    %eax,0x4(%ecx)
4540d5:	8b 42 08             	mov    0x8(%edx),%eax
4540d8:	89 41 08             	mov    %eax,0x8(%ecx)
4540db:	8b 42 0c             	mov    0xc(%edx),%eax
4540de:	89 41 0c             	mov    %eax,0xc(%ecx)
4540e1:	8b 42 10             	mov    0x10(%edx),%eax
4540e4:	89 41 10             	mov    %eax,0x10(%ecx)
4540e7:	ff 00                	incl   (%eax)
4540e9:	8b 42 14             	mov    0x14(%edx),%eax
4540ec:	89 41 14             	mov    %eax,0x14(%ecx)
4540ef:	8b 42 18             	mov    0x18(%edx),%eax
4540f2:	89 41 18             	mov    %eax,0x18(%ecx)
4540f5:	8b 42 1c             	mov    0x1c(%edx),%eax
4540f8:	89 41 1c             	mov    %eax,0x1c(%ecx)
4540fb:	8b 42 20             	mov    0x20(%edx),%eax
4540fe:	89 41 20             	mov    %eax,0x20(%ecx)
454101:	ff 00                	incl   (%eax)
454103:	8b 42 24             	mov    0x24(%edx),%eax
454106:	89 41 24             	mov    %eax,0x24(%ecx)
454109:	8b 42 28             	mov    0x28(%edx),%eax
45410c:	89 41 28             	mov    %eax,0x28(%ecx)
45410f:	8b 42 2c             	mov    0x2c(%edx),%eax
454112:	89 41 2c             	mov    %eax,0x2c(%ecx)
454115:	8b 42 30             	mov    0x30(%edx),%eax
454118:	89 41 30             	mov    %eax,0x30(%ecx)
45411b:	ff 00                	incl   (%eax)
45411d:	8b c1                	mov    %ecx,%eax
45411f:	5d                   	pop    %ebp
454120:	c2 04 00             	ret    $0x4
454123:	56                   	push   %esi
454124:	8b f1                	mov    %ecx,%esi
454126:	e8 cc 96 fb ff       	call   0x40d7f7
45412b:	8d 4e 10             	lea    0x10(%esi),%ecx
45412e:	e8 c4 96 fb ff       	call   0x40d7f7
454133:	8d 4e 20             	lea    0x20(%esi),%ecx
454136:	e8 bc 96 fb ff       	call   0x40d7f7
45413b:	8d 4e 30             	lea    0x30(%esi),%ecx
45413e:	e8 b4 96 fb ff       	call   0x40d7f7
454143:	8d 4e 40             	lea    0x40(%esi),%ecx
454146:	e8 ac 96 fb ff       	call   0x40d7f7
45414b:	8d 4e 50             	lea    0x50(%esi),%ecx
45414e:	e8 a4 96 fb ff       	call   0x40d7f7
454153:	8d 4e 60             	lea    0x60(%esi),%ecx
454156:	e8 9c 96 fb ff       	call   0x40d7f7
45415b:	8b c6                	mov    %esi,%eax
45415d:	5e                   	pop    %esi
45415e:	c3                   	ret
45415f:	56                   	push   %esi
454160:	8b f1                	mov    %ecx,%esi
454162:	c7 06 34 3d 4b 00    	movl   $0x4b3d34,(%esi)
454168:	e8 1c 12 00 00       	call   0x455389
45416d:	ff 76 04             	push   0x4(%esi)
454170:	e8 e9 b3 fc ff       	call   0x41f55e
454175:	59                   	pop    %ecx
454176:	5e                   	pop    %esi
454177:	c3                   	ret
454178:	56                   	push   %esi
454179:	8b f1                	mov    %ecx,%esi
45417b:	e8 56 11 00 00       	call   0x4552d6
454180:	ff b6 d4 00 00 00    	push   0xd4(%esi)
454186:	ff 15 0c d3 48 00    	call   *0x48d30c
45418c:	8d 4e 58             	lea    0x58(%esi),%ecx
45418f:	e8 ae f3 fa ff       	call   0x403542
454194:	8d 4e 44             	lea    0x44(%esi),%ecx
454197:	e8 c3 ff ff ff       	call   0x45415f
45419c:	8d 4e 34             	lea    0x34(%esi),%ecx
45419f:	e8 93 89 fb ff       	call   0x40cb37
4541a4:	8d 4e 20             	lea    0x20(%esi),%ecx
4541a7:	5e                   	pop    %esi
4541a8:	e9 8a 89 fb ff       	jmp    0x40cb37
4541ad:	56                   	push   %esi
4541ae:	8b f1                	mov    %ecx,%esi
4541b0:	8d 4e 60             	lea    0x60(%esi),%ecx
4541b3:	e8 7f 89 fb ff       	call   0x40cb37
4541b8:	8d 4e 50             	lea    0x50(%esi),%ecx
4541bb:	e8 77 89 fb ff       	call   0x40cb37
4541c0:	8d 4e 40             	lea    0x40(%esi),%ecx
4541c3:	e8 6f 89 fb ff       	call   0x40cb37
4541c8:	8d 4e 30             	lea    0x30(%esi),%ecx
4541cb:	e8 67 89 fb ff       	call   0x40cb37
4541d0:	8d 4e 20             	lea    0x20(%esi),%ecx
4541d3:	e8 5f 89 fb ff       	call   0x40cb37
4541d8:	8d 4e 10             	lea    0x10(%esi),%ecx
4541db:	e8 57 89 fb ff       	call   0x40cb37
4541e0:	8b ce                	mov    %esi,%ecx
4541e2:	5e                   	pop    %esi
4541e3:	e9 4f 89 fb ff       	jmp    0x40cb37
4541e8:	56                   	push   %esi
4541e9:	8d b1 88 00 00 00    	lea    0x88(%ecx),%esi
4541ef:	8b ce                	mov    %esi,%ecx
4541f1:	e8 f5 f2 fa ff       	call   0x4034eb
4541f6:	c7 06 2c dc 49 00    	movl   $0x49dc2c,(%esi)
4541fc:	8d 4e 04             	lea    0x4(%esi),%ecx
4541ff:	5e                   	pop    %esi
454200:	e9 eb f3 fa ff       	jmp    0x4035f0
454205:	55                   	push   %ebp
454206:	8b ec                	mov    %esp,%ebp
454208:	56                   	push   %esi
454209:	8b f1                	mov    %ecx,%esi
45420b:	e8 4f ff ff ff       	call   0x45415f
454210:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
454214:	74 07                	je     0x45421d
454216:	56                   	push   %esi
454217:	e8 42 b3 fc ff       	call   0x41f55e
45421c:	59                   	pop    %ecx
45421d:	8b c6                	mov    %esi,%eax
45421f:	5e                   	pop    %esi
454220:	5d                   	pop    %ebp
454221:	c2 04 00             	ret    $0x4
454224:	56                   	push   %esi
454225:	8b f1                	mov    %ecx,%esi
454227:	e8 4c ff ff ff       	call   0x454178
45422c:	56                   	push   %esi
45422d:	e8 2c b3 fc ff       	call   0x41f55e
454232:	59                   	pop    %ecx
454233:	8b c6                	mov    %esi,%eax
454235:	5e                   	pop    %esi
454236:	c2 04 00             	ret    $0x4
454239:	55                   	push   %ebp
45423a:	8b ec                	mov    %esp,%ebp
45423c:	56                   	push   %esi
45423d:	8d b1 78 ff ff ff    	lea    -0x88(%ecx),%esi
454243:	8b ce                	mov    %esi,%ecx
454245:	e8 9e ff ff ff       	call   0x4541e8
45424a:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
45424e:	74 07                	je     0x454257
454250:	56                   	push   %esi
454251:	e8 08 b3 fc ff       	call   0x41f55e
454256:	59                   	pop    %ecx
454257:	8b c6                	mov    %esi,%eax
454259:	5e                   	pop    %esi
45425a:	5d                   	pop    %ebp
45425b:	c2 04 00             	ret    $0x4
45425e:	56                   	push   %esi
45425f:	8b f1                	mov    %ecx,%esi
454261:	8b 0e                	mov    (%esi),%ecx
454263:	85 c9                	test   %ecx,%ecx
454265:	74 06                	je     0x45426d
454267:	51                   	push   %ecx
454268:	e8 b7 ff ff ff       	call   0x454224
45426d:	56                   	push   %esi
45426e:	e8 eb b2 fc ff       	call   0x41f55e
454273:	59                   	pop    %ecx
454274:	8b c6                	mov    %esi,%eax
454276:	5e                   	pop    %esi
454277:	c2 04 00             	ret    $0x4
45427a:	85 c9                	test   %ecx,%ecx
45427c:	75 03                	jne    0x454281
45427e:	33 c0                	xor    %eax,%eax
454280:	c3                   	ret
454281:	51                   	push   %ecx
454282:	e8 63 b2 fc ff       	call   0x41f4ea
454287:	59                   	pop    %ecx
454288:	c3                   	ret
454289:	55                   	push   %ebp
45428a:	8b ec                	mov    %esp,%ebp
45428c:	53                   	push   %ebx
45428d:	56                   	push   %esi
45428e:	8b f1                	mov    %ecx,%esi
454290:	57                   	push   %edi
454291:	8b 4e 08             	mov    0x8(%esi),%ecx
454294:	33 ff                	xor    %edi,%edi
454296:	8b df                	mov    %edi,%ebx
454298:	85 c9                	test   %ecx,%ecx
45429a:	74 0e                	je     0x4542aa
45429c:	8b 56 04             	mov    0x4(%esi),%edx
45429f:	8b 02                	mov    (%edx),%eax
4542a1:	8d 52 04             	lea    0x4(%edx),%edx
4542a4:	03 58 04             	add    0x4(%eax),%ebx
4542a7:	49                   	dec    %ecx
4542a8:	75 f5                	jne    0x45429f
4542aa:	8b 4d 08             	mov    0x8(%ebp),%ecx
4542ad:	53                   	push   %ebx
4542ae:	e8 30 61 ff ff       	call   0x44a3e3
4542b3:	8b c8                	mov    %eax,%ecx
4542b5:	89 4d 08             	mov    %ecx,0x8(%ebp)
4542b8:	8b df                	mov    %edi,%ebx
4542ba:	39 7e 08             	cmp    %edi,0x8(%esi)
4542bd:	76 29                	jbe    0x4542e8
4542bf:	8b 46 04             	mov    0x4(%esi),%eax
4542c2:	8b 04 98             	mov    (%eax,%ebx,4),%eax
4542c5:	ff 70 04             	push   0x4(%eax)
4542c8:	ff 30                	push   (%eax)
4542ca:	8d 04 0f             	lea    (%edi,%ecx,1),%eax
4542cd:	50                   	push   %eax
4542ce:	e8 ad ab fc ff       	call   0x41ee80
4542d3:	8b 46 04             	mov    0x4(%esi),%eax
4542d6:	8b 4d 08             	mov    0x8(%ebp),%ecx
4542d9:	8b 04 98             	mov    (%eax,%ebx,4),%eax
4542dc:	83 c4 0c             	add    $0xc,%esp
4542df:	03 78 04             	add    0x4(%eax),%edi
4542e2:	43                   	inc    %ebx
4542e3:	3b 5e 08             	cmp    0x8(%esi),%ebx
4542e6:	72 d7                	jb     0x4542bf
4542e8:	5f                   	pop    %edi
4542e9:	5e                   	pop    %esi
4542ea:	5b                   	pop    %ebx
4542eb:	5d                   	pop    %ebp
4542ec:	c2 04 00             	ret    $0x4
4542ef:	56                   	push   %esi
4542f0:	57                   	push   %edi
4542f1:	8b f1                	mov    %ecx,%esi
4542f3:	33 ff                	xor    %edi,%edi
4542f5:	39 3e                	cmp    %edi,(%esi)
4542f7:	74 0a                	je     0x454303
4542f9:	ff 36                	push   (%esi)
4542fb:	ff 15 0c d3 48 00    	call   *0x48d30c
454301:	89 3e                	mov    %edi,(%esi)
454303:	57                   	push   %edi
454304:	57                   	push   %edi
454305:	6a 01                	push   $0x1
454307:	57                   	push   %edi
454308:	ff 15 bc d2 48 00    	call   *0x48d2bc
45430e:	33 c9                	xor    %ecx,%ecx
454310:	89 06                	mov    %eax,(%esi)
454312:	85 c0                	test   %eax,%eax
454314:	5f                   	pop    %edi
454315:	0f 95 c0             	setne  %al
454318:	5e                   	pop    %esi
454319:	c2 10 00             	ret    $0x10
45431c:	55                   	push   %ebp
45431d:	8b ec                	mov    %esp,%ebp
45431f:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
454323:	56                   	push   %esi
454324:	8b f1                	mov    %ecx,%esi
454326:	74 10                	je     0x454338
454328:	ff 75 10             	push   0x10(%ebp)
45432b:	ff 75 08             	push   0x8(%ebp)
45432e:	e8 af 00 00 00       	call   0x4543e2
454333:	e9 a5 00 00 00       	jmp    0x4543dd
454338:	53                   	push   %ebx
454339:	8b 5e 54             	mov    0x54(%esi),%ebx
45433c:	57                   	push   %edi
45433d:	8b 7d 08             	mov    0x8(%ebp),%edi
454340:	6a 00                	push   $0x0
454342:	0f b7 47 78          	movzwl 0x78(%edi),%eax
454346:	6a 00                	push   $0x0
454348:	ff 77 70             	push   0x70(%edi)
45434b:	ff 77 30             	push   0x30(%edi)
45434e:	ff 77 20             	push   0x20(%edi)
454351:	50                   	push   %eax
454352:	ff 77 10             	push   0x10(%edi)
454355:	ff 76 04             	push   0x4(%esi)
454358:	ff 15 94 d7 48 00    	call   *0x48d794
45435e:	89 06                	mov    %eax,(%esi)
454360:	6a 00                	push   $0x0
454362:	85 c0                	test   %eax,%eax
454364:	75 10                	jne    0x454376
454366:	68 ef be ad de       	push   $0xdeadbeef
45436b:	6a 15                	push   $0x15
45436d:	8b ce                	mov    %esi,%ecx
45436f:	e8 de 0c 00 00       	call   0x455052
454374:	eb 65                	jmp    0x4543db
454376:	53                   	push   %ebx
454377:	68 00 00 00 80       	push   $0x80000000
45437c:	ff 77 60             	push   0x60(%edi)
45437f:	50                   	push   %eax
454380:	ff 15 88 d7 48 00    	call   *0x48d788