43accf:	51                   	push   %ecx
43acd0:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
43acd3:	e8 61 fe ff ff       	call   0x43ab39
43acd8:	51                   	push   %ecx
43acd9:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
43acdc:	e8 53 04 00 00       	call   0x43b134
43ace1:	84 c0                	test   %al,%al
43ace3:	75 07                	jne    0x43acec
43ace5:	32 db                	xor    %bl,%bl
43ace7:	e9 67 02 00 00       	jmp    0x43af53
43acec:	33 db                	xor    %ebx,%ebx
43acee:	6a 20                	push   $0x20
43acf0:	8d 45 a4             	lea    -0x5c(%ebp),%eax
43acf3:	53                   	push   %ebx
43acf4:	50                   	push   %eax
43acf5:	89 5d fc             	mov    %ebx,-0x4(%ebp)
43acf8:	8b f3                	mov    %ebx,%esi
43acfa:	8b fb                	mov    %ebx,%edi
43acfc:	89 5d f8             	mov    %ebx,-0x8(%ebp)
43acff:	89 5d ec             	mov    %ebx,-0x14(%ebp)
43ad02:	89 5d f0             	mov    %ebx,-0x10(%ebp)
43ad05:	89 5d f4             	mov    %ebx,-0xc(%ebp)
43ad08:	e8 43 60 fe ff       	call   0x420d50
43ad0d:	8b 45 08             	mov    0x8(%ebp),%eax
43ad10:	83 c4 0c             	add    $0xc,%esp
43ad13:	f6 45 14 01          	testb  $0x1,0x14(%ebp)
43ad17:	c7 45 a4 20 00 00 00 	movl   $0x20,-0x5c(%ebp)
43ad1e:	89 45 ac             	mov    %eax,-0x54(%ebp)
43ad21:	88 5d 0b             	mov    %bl,0xb(%ebp)
43ad24:	74 04                	je     0x43ad2a
43ad26:	c6 45 0b 01          	movb   $0x1,0xb(%ebp)
43ad2a:	8d 4d fc             	lea    -0x4(%ebp),%ecx
43ad2d:	51                   	push   %ecx
43ad2e:	51                   	push   %ecx
43ad2f:	ff 75 14             	push   0x14(%ebp)
43ad32:	ff 75 10             	push   0x10(%ebp)
43ad35:	ff 75 0c             	push   0xc(%ebp)
43ad38:	50                   	push   %eax
43ad39:	e8 c8 03 00 00       	call   0x43b106
43ad3e:	84 c0                	test   %al,%al
43ad40:	0f 84 af 01 00 00    	je     0x43aef5
43ad46:	6a 02                	push   $0x2
43ad48:	59                   	pop    %ecx
43ad49:	84 4d 14             	test   %cl,0x14(%ebp)
43ad4c:	74 29                	je     0x43ad77
43ad4e:	8d 45 10             	lea    0x10(%ebp),%eax
43ad51:	50                   	push   %eax
43ad52:	6a 01                	push   $0x1
43ad54:	51                   	push   %ecx
43ad55:	53                   	push   %ebx
43ad56:	53                   	push   %ebx
43ad57:	ff 75 fc             	push   -0x4(%ebp)
43ad5a:	ff 15 48 d0 48 00    	call   *0x48d048
43ad60:	85 c0                	test   %eax,%eax
43ad62:	0f 84 8d 01 00 00    	je     0x43aef5
43ad68:	ff 75 fc             	push   -0x4(%ebp)
43ad6b:	ff 15 0c d3 48 00    	call   *0x48d30c
43ad71:	8b 45 10             	mov    0x10(%ebp),%eax
43ad74:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ad77:	68 00 00 06 00       	push   $0x60000
43ad7c:	53                   	push   %ebx
43ad7d:	68 28 2a 4b 00       	push   $0x4b2a28
43ad82:	ff 15 98 d6 48 00    	call   *0x48d698
43ad88:	8b f0                	mov    %eax,%esi
43ad8a:	85 f6                	test   %esi,%esi
43ad8c:	0f 84 63 01 00 00    	je     0x43aef5
43ad92:	83 fe ff             	cmp    $0xffffffff,%esi
43ad95:	0f 84 5a 01 00 00    	je     0x43aef5
43ad9b:	ff 15 94 d6 48 00    	call   *0x48d694
43ada1:	56                   	push   %esi
43ada2:	89 45 ec             	mov    %eax,-0x14(%ebp)
43ada5:	ff 15 90 d6 48 00    	call   *0x48d690
43adab:	85 c0                	test   %eax,%eax
43adad:	0f 84 42 01 00 00    	je     0x43aef5
43adb3:	68 81 00 06 00       	push   $0x60081
43adb8:	53                   	push   %ebx
43adb9:	53                   	push   %ebx
43adba:	68 38 2a 4b 00       	push   $0x4b2a38
43adbf:	ff 15 8c d6 48 00    	call   *0x48d68c
43adc5:	8b f8                	mov    %eax,%edi
43adc7:	85 ff                	test   %edi,%edi
43adc9:	0f 84 26 01 00 00    	je     0x43aef5
43adcf:	83 ff ff             	cmp    $0xffffffff,%edi
43add2:	0f 84 1d 01 00 00    	je     0x43aef5
43add8:	8d 45 f8             	lea    -0x8(%ebp),%eax
43addb:	50                   	push   %eax
43addc:	ff 75 fc             	push   -0x4(%ebp)
43addf:	e8 e8 03 00 00       	call   0x43b1cc
43ade4:	84 c0                	test   %al,%al
43ade6:	0f 84 09 01 00 00    	je     0x43aef5
43adec:	51                   	push   %ecx
43aded:	8d 45 d4             	lea    -0x2c(%ebp),%eax
43adf0:	50                   	push   %eax
43adf1:	ff 75 f8             	push   -0x8(%ebp)
43adf4:	66 c7 45 d4 00 0b    	movw   $0xb00,-0x2c(%ebp)
43adfa:	56                   	push   %esi
43adfb:	c7 45 d8 00 00 00 f0 	movl   $0xf0000000,-0x28(%ebp)
43ae02:	66 c7 45 e0 00 04    	movw   $0x400,-0x20(%ebp)
43ae08:	c7 45 e4 7f 03 0f 00 	movl   $0xf037f,-0x1c(%ebp)
43ae0f:	e8 53 fa ff ff       	call   0x43a867
43ae14:	84 c0                	test   %al,%al
43ae16:	0f 84 d9 00 00 00    	je     0x43aef5
43ae1c:	51                   	push   %ecx
43ae1d:	8d 45 e0             	lea    -0x20(%ebp),%eax
43ae20:	50                   	push   %eax
43ae21:	ff 75 f8             	push   -0x8(%ebp)
43ae24:	66 89 5d e0          	mov    %bx,-0x20(%ebp)
43ae28:	57                   	push   %edi
43ae29:	c7 45 e4 ff 01 0f 00 	movl   $0xf01ff,-0x1c(%ebp)
43ae30:	e8 37 f8 ff ff       	call   0x43a66c
43ae35:	84 c0                	test   %al,%al
43ae37:	0f 84 b8 00 00 00    	je     0x43aef5
43ae3d:	8b 45 28             	mov    0x28(%ebp),%eax
43ae40:	c7 40 08 48 2a 4b 00 	movl   $0x4b2a48,0x8(%eax)
43ae47:	8b 40 2c             	mov    0x2c(%eax),%eax
43ae4a:	25 00 01 00 00       	and    $0x100,%eax
43ae4f:	89 45 10             	mov    %eax,0x10(%ebp)
43ae52:	39 5d 1c             	cmp    %ebx,0x1c(%ebp)
43ae55:	74 2c                	je     0x43ae83
43ae57:	ff 75 1c             	push   0x1c(%ebp)
43ae5a:	e8 7c 5e fe ff       	call   0x420cdb
43ae5f:	33 c9                	xor    %ecx,%ecx
43ae61:	6a 02                	push   $0x2
43ae63:	40                   	inc    %eax
43ae64:	5a                   	pop    %edx
43ae65:	f7 e2                	mul    %edx
43ae67:	0f 90 c1             	seto   %cl
43ae6a:	f7 d9                	neg    %ecx
43ae6c:	0b c8                	or     %eax,%ecx
43ae6e:	51                   	push   %ecx
43ae6f:	e8 76 46 fe ff       	call   0x41f4ea
43ae74:	ff 75 1c             	push   0x1c(%ebp)
43ae77:	89 45 f0             	mov    %eax,-0x10(%ebp)
43ae7a:	50                   	push   %eax
43ae7b:	e8 a3 5e fe ff       	call   0x420d23
43ae80:	83 c4 10             	add    $0x10,%esp
43ae83:	38 5d 0b             	cmp    %bl,0xb(%ebp)
43ae86:	74 11                	je     0x43ae99
43ae88:	8d 45 a4             	lea    -0x5c(%ebp),%eax
43ae8b:	50                   	push   %eax
43ae8c:	ff 75 fc             	push   -0x4(%ebp)
43ae8f:	ff 15 44 d7 48 00    	call   *0x48d744
43ae95:	85 c0                	test   %eax,%eax
43ae97:	74 5c                	je     0x43aef5
43ae99:	f6 45 14 04          	testb  $0x4,0x14(%ebp)
43ae9d:	75 12                	jne    0x43aeb1
43ae9f:	53                   	push   %ebx
43aea0:	ff 75 fc             	push   -0x4(%ebp)
43aea3:	8d 45 f4             	lea    -0xc(%ebp),%eax
43aea6:	50                   	push   %eax
43aea7:	ff 15 40 d7 48 00    	call   *0x48d740
43aead:	85 c0                	test   %eax,%eax
43aeaf:	74 44                	je     0x43aef5
43aeb1:	ff 75 2c             	push   0x2c(%ebp)
43aeb4:	8b 45 20             	mov    0x20(%ebp),%eax
43aeb7:	ff 75 28             	push   0x28(%ebp)
43aeba:	0d 00 04 00 00       	or     $0x400,%eax
43aebf:	ff 75 24             	push   0x24(%ebp)
43aec2:	ff 75 f4             	push   -0xc(%ebp)
43aec5:	50                   	push   %eax
43aec6:	ff 75 10             	push   0x10(%ebp)
43aec9:	53                   	push   %ebx
43aeca:	53                   	push   %ebx
43aecb:	ff 75 f0             	push   -0x10(%ebp)
43aece:	53                   	push   %ebx
43aecf:	ff 75 fc             	push   -0x4(%ebp)
43aed2:	ff 15 4c d0 48 00    	call   *0x48d04c
43aed8:	85 c0                	test   %eax,%eax
43aeda:	74 19                	je     0x43aef5
43aedc:	38 5d 0b             	cmp    %bl,0xb(%ebp)
43aedf:	74 10                	je     0x43aef1
43aee1:	8d 45 fc             	lea    -0x4(%ebp),%eax
43aee4:	50                   	push   %eax
43aee5:	8d 45 c0             	lea    -0x40(%ebp),%eax
43aee8:	50                   	push   %eax
43aee9:	ff 75 2c             	push   0x2c(%ebp)
43aeec:	e8 72 03 00 00       	call   0x43b263
43aef1:	b3 01                	mov    $0x1,%bl
43aef3:	eb 11                	jmp    0x43af06
43aef5:	39 5d c0             	cmp    %ebx,-0x40(%ebp)
43aef8:	74 0c                	je     0x43af06
43aefa:	ff 75 c0             	push   -0x40(%ebp)
43aefd:	ff 75 fc             	push   -0x4(%ebp)
43af00:	ff 15 38 d7 48 00    	call   *0x48d738
43af06:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43af09:	e8 16 fc ff ff       	call   0x43ab24
43af0e:	85 f6                	test   %esi,%esi
43af10:	74 07                	je     0x43af19
43af12:	56                   	push   %esi
43af13:	ff 15 88 d6 48 00    	call   *0x48d688
43af19:	85 ff                	test   %edi,%edi
43af1b:	74 07                	je     0x43af24
43af1d:	57                   	push   %edi
43af1e:	ff 15 84 d6 48 00    	call   *0x48d684
43af24:	8b 45 ec             	mov    -0x14(%ebp),%eax
43af27:	85 c0                	test   %eax,%eax
43af29:	74 07                	je     0x43af32
43af2b:	50                   	push   %eax
43af2c:	ff 15 90 d6 48 00    	call   *0x48d690
43af32:	ff 75 fc             	push   -0x4(%ebp)
43af35:	ff 15 0c d3 48 00    	call   *0x48d30c
43af3b:	ff 75 f0             	push   -0x10(%ebp)
43af3e:	e8 1b 46 fe ff       	call   0x41f55e
43af43:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
43af47:	59                   	pop    %ecx
43af48:	74 09                	je     0x43af53
43af4a:	ff 75 f4             	push   -0xc(%ebp)
43af4d:	ff 15 3c d7 48 00    	call   *0x48d73c
43af53:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
43af56:	e8 29 fc ff ff       	call   0x43ab84
43af5b:	5f                   	pop    %edi
43af5c:	5e                   	pop    %esi
43af5d:	8a c3                	mov    %bl,%al
43af5f:	5b                   	pop    %ebx
43af60:	c9                   	leave
43af61:	c2 28 00             	ret    $0x28
43af64:	55                   	push   %ebp
43af65:	8b ec                	mov    %esp,%ebp
43af67:	e8 20 fd ff ff       	call   0x43ac8c
43af6c:	84 c0                	test   %al,%al
43af6e:	74 06                	je     0x43af76
43af70:	5d                   	pop    %ebp
43af71:	e9 4f fd ff ff       	jmp    0x43acc5
43af76:	5d                   	pop    %ebp
43af77:	e9 01 00 00 00       	jmp    0x43af7d
43af7c:	cc                   	int3
43af7d:	55                   	push   %ebp
43af7e:	8b ec                	mov    %esp,%ebp
43af80:	51                   	push   %ecx
43af81:	53                   	push   %ebx
43af82:	33 db                	xor    %ebx,%ebx
43af84:	f6 45 14 01          	testb  $0x1,0x14(%ebp)
43af88:	8b c3                	mov    %ebx,%eax
43af8a:	57                   	push   %edi
43af8b:	89 45 fc             	mov    %eax,-0x4(%ebp)
43af8e:	8b fb                	mov    %ebx,%edi
43af90:	74 03                	je     0x43af95
43af92:	47                   	inc    %edi
43af93:	eb 09                	jmp    0x43af9e
43af95:	f6 45 14 02          	testb  $0x2,0x14(%ebp)
43af99:	74 03                	je     0x43af9e
43af9b:	6a 02                	push   $0x2
43af9d:	5f                   	pop    %edi
43af9e:	f6 45 14 04          	testb  $0x4,0x14(%ebp)
43afa2:	74 39                	je     0x43afdd
43afa4:	56                   	push   %esi
43afa5:	8d 45 14             	lea    0x14(%ebp),%eax
43afa8:	50                   	push   %eax
43afa9:	6a 0a                	push   $0xa
43afab:	89 5d 14             	mov    %ebx,0x14(%ebp)
43afae:	ff 15 44 d3 48 00    	call   *0x48d344
43afb4:	50                   	push   %eax
43afb5:	ff 15 40 d0 48 00    	call   *0x48d040
43afbb:	6a 01                	push   $0x1
43afbd:	ff 75 14             	push   0x14(%ebp)
43afc0:	8d 45 fc             	lea    -0x4(%ebp),%eax
43afc3:	50                   	push   %eax
43afc4:	ff 15 40 d7 48 00    	call   *0x48d740
43afca:	ff 75 14             	push   0x14(%ebp)
43afcd:	8b f0                	mov    %eax,%esi
43afcf:	ff 15 0c d3 48 00    	call   *0x48d30c
43afd5:	85 f6                	test   %esi,%esi
43afd7:	5e                   	pop    %esi
43afd8:	74 2f                	je     0x43b009
43afda:	8b 45 fc             	mov    -0x4(%ebp),%eax
43afdd:	ff 75 2c             	push   0x2c(%ebp)
43afe0:	ff 75 28             	push   0x28(%ebp)
43afe3:	ff 75 24             	push   0x24(%ebp)
43afe6:	50                   	push   %eax
43afe7:	8b 45 20             	mov    0x20(%ebp),%eax
43afea:	0d 00 04 00 00       	or     $0x400,%eax
43afef:	50                   	push   %eax
43aff0:	ff 75 1c             	push   0x1c(%ebp)
43aff3:	53                   	push   %ebx
43aff4:	57                   	push   %edi
43aff5:	ff 75 10             	push   0x10(%ebp)
43aff8:	ff 75 0c             	push   0xc(%ebp)
43affb:	ff 75 08             	push   0x8(%ebp)
43affe:	ff 15 50 d0 48 00    	call   *0x48d050
43b004:	85 c0                	test   %eax,%eax
43b006:	0f 95 c3             	setne  %bl
43b009:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
43b00d:	74 09                	je     0x43b018
43b00f:	ff 75 fc             	push   -0x4(%ebp)
43b012:	ff 15 3c d7 48 00    	call   *0x48d73c
43b018:	5f                   	pop    %edi
43b019:	8a c3                	mov    %bl,%al
43b01b:	5b                   	pop    %ebx
43b01c:	c9                   	leave
43b01d:	c2 28 00             	ret    $0x28
43b020:	55                   	push   %ebp
43b021:	8b ec                	mov    %esp,%ebp
43b023:	83 ec 1c             	sub    $0x1c,%esp
43b026:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
43b02a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43b02e:	53                   	push   %ebx
43b02f:	56                   	push   %esi
43b030:	8b c1                	mov    %ecx,%eax
43b032:	57                   	push   %edi
43b033:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43b036:	51                   	push   %ecx
43b037:	51                   	push   %ecx
43b038:	8d 4d fc             	lea    -0x4(%ebp),%ecx
43b03b:	51                   	push   %ecx
43b03c:	8b 48 0c             	mov    0xc(%eax),%ecx
43b03f:	89 45 f4             	mov    %eax,-0xc(%ebp)
43b042:	32 db                	xor    %bl,%bl
43b044:	e8 7a fa ff ff       	call   0x43aac3
43b049:	8b 7d fc             	mov    -0x4(%ebp),%edi
43b04c:	83 c4 0c             	add    $0xc,%esp
43b04f:	84 c0                	test   %al,%al
43b051:	74 6c                	je     0x43b0bf
43b053:	8b 45 f4             	mov    -0xc(%ebp),%eax
43b056:	33 f6                	xor    %esi,%esi
43b058:	89 75 f8             	mov    %esi,-0x8(%ebp)
43b05b:	39 70 04             	cmp    %esi,0x4(%eax)
43b05e:	76 5f                	jbe    0x43b0bf
43b060:	8b 00                	mov    (%eax),%eax
43b062:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43b065:	51                   	push   %ecx
43b066:	ff 34 b0             	push   (%eax,%esi,4)
43b069:	32 db                	xor    %bl,%bl
43b06b:	6a 00                	push   $0x0
43b06d:	ff 15 44 d0 48 00    	call   *0x48d044
43b073:	85 c0                	test   %eax,%eax
43b075:	74 48                	je     0x43b0bf
43b077:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
43b07b:	83 3f 00             	cmpl   $0x0,(%edi)
43b07e:	76 3f                	jbe    0x43b0bf
43b080:	8b 75 ec             	mov    -0x14(%ebp),%esi
43b083:	8d 47 04             	lea    0x4(%edi),%eax
43b086:	89 45 fc             	mov    %eax,-0x4(%ebp)
43b089:	6a 08                	push   $0x8
43b08b:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43b08e:	51                   	push   %ecx
43b08f:	50                   	push   %eax
43b090:	e8 ce 44 fe ff       	call   0x41f563
43b095:	83 c4 0c             	add    $0xc,%esp
43b098:	85 c0                	test   %eax,%eax
43b09a:	75 02                	jne    0x43b09e
43b09c:	b3 01                	mov    $0x1,%bl
43b09e:	8b 45 fc             	mov    -0x4(%ebp),%eax
43b0a1:	46                   	inc    %esi
43b0a2:	83 c0 0c             	add    $0xc,%eax
43b0a5:	89 45 fc             	mov    %eax,-0x4(%ebp)
43b0a8:	3b 37                	cmp    (%edi),%esi
43b0aa:	72 dd                	jb     0x43b089
43b0ac:	8b 75 f8             	mov    -0x8(%ebp),%esi
43b0af:	84 db                	test   %bl,%bl
43b0b1:	74 0c                	je     0x43b0bf