41ad10:	6a 0a                	push   $0xa
41ad12:	68 b0 c3 40 00       	push   $0x40c3b0
41ad17:	ff 15 74 23 45 00    	call   *0x452374
41ad1d:	83 c4 1c             	add    $0x1c,%esp
41ad20:	e8 cb 2f 02 00       	call   0x43dcf0
41ad25:	83 c0 10             	add    $0x10,%eax
41ad28:	74 0a                	je     0x41ad34
41ad2a:	e8 c1 2f 02 00       	call   0x43dcf0
41ad2f:	83 c0 14             	add    $0x14,%eax
41ad32:	eb 02                	jmp    0x41ad36
41ad34:	33 c0                	xor    %eax,%eax
41ad36:	81 3d 30 1a 45 00 fc 	cmpl   $0xfffffbfc,0x451a30
41ad3d:	fb ff ff
41ad40:	c7 00 e4 4e 40 00    	movl   $0x404ee4,(%eax)
41ad46:	c7 40 04 f8 04 00 00 	movl   $0x4f8,0x4(%eax)
41ad4d:	c7 40 08 fc fb ff ff 	movl   $0xfffffbfc,0x8(%eax)
41ad54:	75 06                	jne    0x41ad5c
41ad56:	ff 15 58 20 45 00    	call   *0x452058
41ad5c:	5f                   	pop    %edi
41ad5d:	5e                   	pop    %esi
41ad5e:	b8 fc fb ff ff       	mov    $0xfffffbfc,%eax
41ad63:	5b                   	pop    %ebx
41ad64:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41ad67:	33 cd                	xor    %ebp,%ecx
41ad69:	e8 e2 21 03 00       	call   0x44cf50
41ad6e:	8b e5                	mov    %ebp,%esp
41ad70:	5d                   	pop    %ebp
41ad71:	c2 04 00             	ret    $0x4
41ad74:	83 7e 60 00          	cmpl   $0x0,0x60(%esi)
41ad78:	75 05                	jne    0x41ad7f
41ad7a:	e8 51 fb ff ff       	call   0x41a8d0
41ad7f:	33 c0                	xor    %eax,%eax
41ad81:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41ad84:	5f                   	pop    %edi
41ad85:	5e                   	pop    %esi
41ad86:	33 cd                	xor    %ebp,%ecx
41ad88:	5b                   	pop    %ebx
41ad89:	e8 c2 21 03 00       	call   0x44cf50
41ad8e:	8b e5                	mov    %ebp,%esp
41ad90:	5d                   	pop    %ebp
41ad91:	c2 04 00             	ret    $0x4
41ad94:	cc                   	int3
41ad95:	cc                   	int3
41ad96:	cc                   	int3
41ad97:	cc                   	int3
41ad98:	cc                   	int3
41ad99:	cc                   	int3
41ad9a:	cc                   	int3
41ad9b:	cc                   	int3
41ad9c:	cc                   	int3
41ad9d:	cc                   	int3
41ad9e:	cc                   	int3
41ad9f:	cc                   	int3
41ada0:	8b ff                	mov    %edi,%edi
41ada2:	55                   	push   %ebp
41ada3:	8b ec                	mov    %esp,%ebp
41ada5:	56                   	push   %esi
41ada6:	8b f1                	mov    %ecx,%esi
41ada8:	33 c0                	xor    %eax,%eax
41adaa:	57                   	push   %edi
41adab:	8b fa                	mov    %edx,%edi
41adad:	66 3b 06             	cmp    (%esi),%ax
41adb0:	0f 85 8a 00 00 00    	jne    0x41ae40
41adb6:	8b 0d 48 0c 45 00    	mov    0x450c48,%ecx
41adbc:	8b 15 fc 10 45 00    	mov    0x4510fc,%edx
41adc2:	41                   	inc    %ecx
41adc3:	53                   	push   %ebx
41adc4:	8b de                	mov    %esi,%ebx
41adc6:	83 f9 ff             	cmp    $0xffffffff,%ecx
41adc9:	7d 45                	jge    0x41ae10
41adcb:	83 c9 ff             	or     $0xffffffff,%ecx
41adce:	89 0d 48 0c 45 00    	mov    %ecx,0x450c48
41add4:	33 f6                	xor    %esi,%esi
41add6:	85 f6                	test   %esi,%esi
41add8:	74 22                	je     0x41adfc
41adda:	0f b7 06             	movzwl (%esi),%eax
41addd:	50                   	push   %eax
41adde:	68 00 3f 40 00       	push   $0x403f00
41ade3:	ff 15 14 23 45 00    	call   *0x452314
41ade9:	83 c4 08             	add    $0x8,%esp
41adec:	85 c0                	test   %eax,%eax
41adee:	74 4f                	je     0x41ae3f
41adf0:	8b 0d 48 0c 45 00    	mov    0x450c48,%ecx
41adf6:	8b 15 fc 10 45 00    	mov    0x4510fc,%edx
41adfc:	49                   	dec    %ecx
41adfd:	8b f3                	mov    %ebx,%esi
41adff:	83 f9 ff             	cmp    $0xffffffff,%ecx
41ae02:	7d 2b                	jge    0x41ae2f
41ae04:	c7 05 48 0c 45 00 ff 	movl   $0xffffffff,0x450c48
41ae0b:	ff ff ff
41ae0e:	eb 2f                	jmp    0x41ae3f
41ae10:	3b ca                	cmp    %edx,%ecx
41ae12:	7e 02                	jle    0x41ae16
41ae14:	8b ca                	mov    %edx,%ecx
41ae16:	89 0d 48 0c 45 00    	mov    %ecx,0x450c48
41ae1c:	83 f9 ff             	cmp    $0xffffffff,%ecx
41ae1f:	74 b3                	je     0x41add4
41ae21:	3b d1                	cmp    %ecx,%edx
41ae23:	74 af                	je     0x41add4
41ae25:	a1 f8 10 45 00       	mov    0x4510f8,%eax
41ae2a:	8b 34 88             	mov    (%eax,%ecx,4),%esi
41ae2d:	eb a7                	jmp    0x41add6
41ae2f:	89 15 48 0c 45 00    	mov    %edx,0x450c48
41ae35:	3b ca                	cmp    %edx,%ecx
41ae37:	7f 06                	jg     0x41ae3f
41ae39:	89 0d 48 0c 45 00    	mov    %ecx,0x450c48
41ae3f:	5b                   	pop    %ebx
41ae40:	0f b7 06             	movzwl (%esi),%eax
41ae43:	ba 3a 00 00 00       	mov    $0x3a,%edx
41ae48:	8b c8                	mov    %eax,%ecx
41ae4a:	66 3b d0             	cmp    %ax,%dx
41ae4d:	75 0f                	jne    0x41ae5e
41ae4f:	90                   	nop
41ae50:	0f b7 46 02          	movzwl 0x2(%esi),%eax
41ae54:	83 c6 02             	add    $0x2,%esi
41ae57:	66 3b d0             	cmp    %ax,%dx
41ae5a:	74 f4                	je     0x41ae50
41ae5c:	8b c8                	mov    %eax,%ecx
41ae5e:	33 c0                	xor    %eax,%eax
41ae60:	66 3b c1             	cmp    %cx,%ax
41ae63:	75 0f                	jne    0x41ae74
41ae65:	39 45 0c             	cmp    %eax,0xc(%ebp)
41ae68:	75 0a                	jne    0x41ae74
41ae6a:	ff 75 08             	push   0x8(%ebp)
41ae6d:	68 c8 40 40 00       	push   $0x4040c8
41ae72:	eb 19                	jmp    0x41ae8d
41ae74:	39 07                	cmp    %eax,(%edi)
41ae76:	75 0d                	jne    0x41ae85
41ae78:	89 37                	mov    %esi,(%edi)
41ae7a:	b8 01 00 00 00       	mov    $0x1,%eax
41ae7f:	5f                   	pop    %edi
41ae80:	5e                   	pop    %esi
41ae81:	5d                   	pop    %ebp
41ae82:	c2 08 00             	ret    $0x8
41ae85:	ff 75 08             	push   0x8(%ebp)
41ae88:	68 18 41 40 00       	push   $0x404118
41ae8d:	ff 15 74 23 45 00    	call   *0x452374
41ae93:	6a 0a                	push   $0xa
41ae95:	6a 0a                	push   $0xa
41ae97:	68 b0 c3 40 00       	push   $0x40c3b0
41ae9c:	ff 15 74 23 45 00    	call   *0x452374
41aea2:	83 c4 14             	add    $0x14,%esp
41aea5:	33 c0                	xor    %eax,%eax
41aea7:	5f                   	pop    %edi
41aea8:	5e                   	pop    %esi
41aea9:	5d                   	pop    %ebp
41aeaa:	c2 08 00             	ret    $0x8
41aead:	cc                   	int3
41aeae:	cc                   	int3
41aeaf:	cc                   	int3
41aeb0:	8b ff                	mov    %edi,%edi
41aeb2:	56                   	push   %esi
41aeb3:	6a 04                	push   $0x4
41aeb5:	8b f1                	mov    %ecx,%esi
41aeb7:	68 98 cc 40 00       	push   $0x40cc98
41aebc:	56                   	push   %esi
41aebd:	ff 15 a0 22 45 00    	call   *0x4522a0
41aec3:	83 c4 0c             	add    $0xc,%esp
41aec6:	85 c0                	test   %eax,%eax
41aec8:	74 19                	je     0x41aee3
41aeca:	6a 04                	push   $0x4
41aecc:	68 a4 cc 40 00       	push   $0x40cca4
41aed1:	56                   	push   %esi
41aed2:	ff 15 a0 22 45 00    	call   *0x4522a0
41aed8:	83 c4 0c             	add    $0xc,%esp
41aedb:	85 c0                	test   %eax,%eax
41aedd:	74 04                	je     0x41aee3
41aedf:	33 c0                	xor    %eax,%eax
41aee1:	5e                   	pop    %esi
41aee2:	c3                   	ret
41aee3:	b8 01 00 00 00       	mov    $0x1,%eax
41aee8:	5e                   	pop    %esi
41aee9:	c3                   	ret
41aeea:	cc                   	int3
41aeeb:	cc                   	int3
41aeec:	cc                   	int3
41aeed:	cc                   	int3
41aeee:	cc                   	int3
41aeef:	cc                   	int3
41aef0:	8b ff                	mov    %edi,%edi
41aef2:	56                   	push   %esi
41aef3:	57                   	push   %edi
41aef4:	8b f9                	mov    %ecx,%edi
41aef6:	8b f2                	mov    %edx,%esi
41aef8:	68 b0 cc 40 00       	push   $0x40ccb0
41aefd:	57                   	push   %edi
41aefe:	ff 15 68 23 45 00    	call   *0x452368
41af04:	83 c4 08             	add    $0x8,%esp
41af07:	85 c0                	test   %eax,%eax
41af09:	75 09                	jne    0x41af14
41af0b:	5f                   	pop    %edi
41af0c:	c7 06 02 00 00 40    	movl   $0x40000002,(%esi)
41af12:	5e                   	pop    %esi
41af13:	c3                   	ret
41af14:	68 d8 cc 40 00       	push   $0x40ccd8
41af19:	57                   	push   %edi
41af1a:	ff 15 68 23 45 00    	call   *0x452368
41af20:	83 c4 08             	add    $0x8,%esp
41af23:	85 c0                	test   %eax,%eax
41af25:	75 09                	jne    0x41af30
41af27:	5f                   	pop    %edi
41af28:	c7 06 01 00 00 40    	movl   $0x40000001,(%esi)
41af2e:	5e                   	pop    %esi
41af2f:	c3                   	ret
41af30:	56                   	push   %esi
41af31:	68 fc cc 40 00       	push   $0x40ccfc
41af36:	57                   	push   %edi
41af37:	ff 15 f4 22 45 00    	call   *0x4522f4
41af3d:	83 c4 0c             	add    $0xc,%esp
41af40:	83 f8 01             	cmp    $0x1,%eax
41af43:	75 0a                	jne    0x41af4f
41af45:	83 3e 00             	cmpl   $0x0,(%esi)
41af48:	76 05                	jbe    0x41af4f
41af4a:	5f                   	pop    %edi
41af4b:	33 c0                	xor    %eax,%eax
41af4d:	5e                   	pop    %esi
41af4e:	c3                   	ret
41af4f:	e8 9c 2d 02 00       	call   0x43dcf0
41af54:	83 c0 10             	add    $0x10,%eax
41af57:	74 0a                	je     0x41af63
41af59:	e8 92 2d 02 00       	call   0x43dcf0
41af5e:	83 c0 14             	add    $0x14,%eax
41af61:	eb 02                	jmp    0x41af65
41af63:	33 c0                	xor    %eax,%eax
41af65:	81 3d 30 1a 45 00 15 	cmpl   $0xfffffc15,0x451a30
41af6c:	fc ff ff
41af6f:	c7 00 e4 4e 40 00    	movl   $0x404ee4,(%eax)
41af75:	c7 40 04 8c 05 00 00 	movl   $0x58c,0x4(%eax)
41af7c:	c7 40 08 15 fc ff ff 	movl   $0xfffffc15,0x8(%eax)
41af83:	75 06                	jne    0x41af8b
41af85:	ff 15 58 20 45 00    	call   *0x452058
41af8b:	5f                   	pop    %edi
41af8c:	b8 15 fc ff ff       	mov    $0xfffffc15,%eax
41af91:	5e                   	pop    %esi
41af92:	c3                   	ret
41af93:	cc                   	int3
41af94:	cc                   	int3
41af95:	cc                   	int3
41af96:	cc                   	int3
41af97:	cc                   	int3
41af98:	cc                   	int3
41af99:	cc                   	int3
41af9a:	cc                   	int3
41af9b:	cc                   	int3
41af9c:	cc                   	int3
41af9d:	cc                   	int3
41af9e:	cc                   	int3
41af9f:	cc                   	int3
41afa0:	cc                   	int3
41afa1:	cc                   	int3
41afa2:	cc                   	int3
41afa3:	cc                   	int3
41afa4:	cc                   	int3
41afa5:	cc                   	int3
41afa6:	cc                   	int3
41afa7:	cc                   	int3
41afa8:	cc                   	int3
41afa9:	cc                   	int3
41afaa:	cc                   	int3
41afab:	cc                   	int3
41afac:	cc                   	int3
41afad:	cc                   	int3
41afae:	cc                   	int3
41afaf:	cc                   	int3
41afb0:	8b ff                	mov    %edi,%edi
41afb2:	55                   	push   %ebp
41afb3:	8b ec                	mov    %esp,%ebp
41afb5:	83 ec 18             	sub    $0x18,%esp
41afb8:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
41afbd:	33 c5                	xor    %ebp,%eax
41afbf:	89 45 fc             	mov    %eax,-0x4(%ebp)
41afc2:	53                   	push   %ebx
41afc3:	8b 5d 10             	mov    0x10(%ebp),%ebx
41afc6:	56                   	push   %esi
41afc7:	57                   	push   %edi
41afc8:	8b 7d 14             	mov    0x14(%ebp),%edi
41afcb:	89 7d ec             	mov    %edi,-0x14(%ebp)
41afce:	f7 47 18 00 00 00 10 	testl  $0x10000000,0x18(%edi)
41afd5:	8b 57 20             	mov    0x20(%edi),%edx
41afd8:	0f 85 28 03 00 00    	jne    0x41b306
41afde:	8b 7d 08             	mov    0x8(%ebp),%edi
41afe1:	3b fa                	cmp    %edx,%edi
41afe3:	75 5c                	jne    0x41b041
41afe5:	6a 0a                	push   $0xa
41afe7:	68 34 2b 40 00       	push   $0x402b34
41afec:	ff 15 74 23 45 00    	call   *0x452374
41aff2:	6a 0a                	push   $0xa
41aff4:	6a 0a                	push   $0xa
41aff6:	68 6c 3e 40 00       	push   $0x403e6c
41affb:	68 40 3e 40 00       	push   $0x403e40
41b000:	6a 19                	push   $0x19
41b002:	68 bc c3 40 00       	push   $0x40c3bc
41b007:	ff 15 74 23 45 00    	call   *0x452374
41b00d:	68 e8 c3 40 00       	push   $0x40c3e8
41b012:	ff 15 74 23 45 00    	call   *0x452374
41b018:	68 68 c4 40 00       	push   $0x40c468
41b01d:	ff 15 74 23 45 00    	call   *0x452374
41b023:	68 e8 c4 40 00       	push   $0x40c4e8
41b028:	ff 15 74 23 45 00    	call   *0x452374
41b02e:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41b031:	83 c4 2c             	add    $0x2c,%esp
41b034:	33 f6                	xor    %esi,%esi
41b036:	89 35 70 1e 45 00    	mov    %esi,0x451e70
41b03c:	8b 51 20             	mov    0x20(%ecx),%edx
41b03f:	eb 09                	jmp    0x41b04a
41b041:	8b 35 70 1e 45 00    	mov    0x451e70,%esi
41b047:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41b04a:	8b 49 24             	mov    0x24(%ecx),%ecx
41b04d:	8b c7                	mov    %edi,%eax
41b04f:	2b c2                	sub    %edx,%eax
41b051:	89 4d e8             	mov    %ecx,-0x18(%ebp)
41b054:	40                   	inc    %eax
41b055:	c7 45 f0 0c 00 00 00 	movl   $0xc,-0x10(%ebp)
41b05c:	2b ca                	sub    %edx,%ecx
41b05e:	89 45 f4             	mov    %eax,-0xc(%ebp)
41b061:	bf 64 00 00 00       	mov    $0x64,%edi
41b066:	41                   	inc    %ecx
41b067:	f7 e7                	mul    %edi
41b069:	6a 00                	push   $0x0
41b06b:	51                   	push   %ecx
41b06c:	52                   	push   %edx
41b06d:	50                   	push   %eax
41b06e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41b071:	e8 aa 28 03 00       	call   0x44d920
41b076:	2b c6                	sub    %esi,%eax
41b078:	83 f8 02             	cmp    $0x2,%eax
41b07b:	7c 34                	jl     0x41b0b1
41b07d:	d1 e8                	shr    $1,%eax
41b07f:	89 45 e8             	mov    %eax,-0x18(%ebp)
41b082:	8b d8                	mov    %eax,%ebx
41b084:	68 bc 3c 40 00       	push   $0x403cbc
41b089:	ff 15 74 23 45 00    	call   *0x452374
41b08f:	8b 35 70 1e 45 00    	mov    0x451e70,%esi
41b095:	83 c4 04             	add    $0x4,%esp
41b098:	83 c6 02             	add    $0x2,%esi
41b09b:	89 35 70 1e 45 00    	mov    %esi,0x451e70
41b0a1:	83 eb 01             	sub    $0x1,%ebx
41b0a4:	75 de                	jne    0x41b084
41b0a6:	8b 45 ec             	mov    -0x14(%ebp),%eax
41b0a9:	8b 5d 10             	mov    0x10(%ebp),%ebx
41b0ac:	8b 40 24             	mov    0x24(%eax),%eax
41b0af:	eb 03                	jmp    0x41b0b4
41b0b1:	8b 45 e8             	mov    -0x18(%ebp),%eax
41b0b4:	39 45 08             	cmp    %eax,0x8(%ebp)
41b0b7:	75 35                	jne    0x41b0ee
41b0b9:	2b fe                	sub    %esi,%edi
41b0bb:	83 ff 02             	cmp    $0x2,%edi
41b0be:	7c 1c                	jl     0x41b0dc
41b0c0:	d1 ef                	shr    $1,%edi
41b0c2:	68 bc 3c 40 00       	push   $0x403cbc