43a830:	8b d0                	mov    %eax,%edx
43a832:	2b d6                	sub    %esi,%edx
43a834:	4a                   	dec    %edx
43a835:	8b 45 f0             	mov    -0x10(%ebp),%eax
43a838:	e8 97 fa ff ff       	call   0x43a2d4
43a83d:	50                   	push   %eax
43a83e:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a841:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
43a847:	8b d6                	mov    %esi,%edx
43a849:	e8 86 fa ff ff       	call   0x43a2d4
43a84e:	5a                   	pop    %edx
43a84f:	8b 08                	mov    (%eax),%ecx
43a851:	ff 51 08             	call   *0x8(%ecx)
43a854:	46                   	inc    %esi
43a855:	4b                   	dec    %ebx
43a856:	75 ca                	jne    0x43a822
43a858:	33 c0                	xor    %eax,%eax
43a85a:	5a                   	pop    %edx
43a85b:	59                   	pop    %ecx
43a85c:	59                   	pop    %ecx
43a85d:	64 89 10             	mov    %edx,%fs:(%eax)
43a860:	68 75 a8 43 00       	push   $0x43a875
43a865:	8b 45 f0             	mov    -0x10(%ebp),%eax
43a868:	e8 53 8a fc ff       	call   0x4032c0
43a86d:	c3                   	ret
43a86e:	e9 e1 91 fc ff       	jmp    0x403a54
43a873:	eb f0                	jmp    0x43a865
43a875:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a878:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
43a87e:	e8 89 ec fd ff       	call   0x41950c
43a883:	48                   	dec    %eax
43a884:	7e 3a                	jle    0x43a8c0
43a886:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a889:	8b 98 08 02 00 00    	mov    0x208(%eax),%ebx
43a88f:	8b c3                	mov    %ebx,%eax
43a891:	e8 76 ec fd ff       	call   0x41950c
43a896:	8b d0                	mov    %eax,%edx
43a898:	4a                   	dec    %edx
43a899:	8b c3                	mov    %ebx,%eax
43a89b:	e8 34 fa ff ff       	call   0x43a2d4
43a8a0:	8b 55 f8             	mov    -0x8(%ebp),%edx
43a8a3:	e8 84 f9 ff ff       	call   0x43a22c
43a8a8:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a8ab:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
43a8b1:	33 d2                	xor    %edx,%edx
43a8b3:	e8 1c fa ff ff       	call   0x43a2d4
43a8b8:	8b 55 f4             	mov    -0xc(%ebp),%edx
43a8bb:	e8 6c f9 ff ff       	call   0x43a22c
43a8c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a8c3:	e8 30 02 00 00       	call   0x43aaf8
43a8c8:	5f                   	pop    %edi
43a8c9:	5e                   	pop    %esi
43a8ca:	5b                   	pop    %ebx
43a8cb:	8b e5                	mov    %ebp,%esp
43a8cd:	5d                   	pop    %ebp
43a8ce:	c3                   	ret
43a8cf:	90                   	nop
43a8d0:	55                   	push   %ebp
43a8d1:	8b ec                	mov    %esp,%ebp
43a8d3:	53                   	push   %ebx
43a8d4:	66 83 b8 42 02 00 00 	cmpw   $0x0,0x242(%eax)
43a8db:	00
43a8dc:	74 19                	je     0x43a8f7
43a8de:	51                   	push   %ecx
43a8df:	8a 4d 08             	mov    0x8(%ebp),%cl
43a8e2:	51                   	push   %ecx
43a8e3:	8b d8                	mov    %eax,%ebx
43a8e5:	8b ca                	mov    %edx,%ecx
43a8e7:	8b d0                	mov    %eax,%edx
43a8e9:	8b 83 44 02 00 00    	mov    0x244(%ebx),%eax
43a8ef:	ff 93 40 02 00 00    	call   *0x240(%ebx)
43a8f5:	eb 0d                	jmp    0x43a904
43a8f7:	8b d1                	mov    %ecx,%edx
43a8f9:	8b 80 14 02 00 00    	mov    0x214(%eax),%eax
43a8ff:	e8 b0 a0 fe ff       	call   0x4249b4
43a904:	5b                   	pop    %ebx
43a905:	5d                   	pop    %ebp
43a906:	c2 04 00             	ret    $0x4
43a909:	8d 40 00             	lea    0x0(%eax),%eax
43a90c:	53                   	push   %ebx
43a90d:	66 83 b8 4a 02 00 00 	cmpw   $0x0,0x24a(%eax)
43a914:	00
43a915:	74 12                	je     0x43a929
43a917:	8b d8                	mov    %eax,%ebx
43a919:	8b ca                	mov    %edx,%ecx
43a91b:	8b d0                	mov    %eax,%edx
43a91d:	8b 83 4c 02 00 00    	mov    0x24c(%ebx),%eax
43a923:	ff 93 48 02 00 00    	call   *0x248(%ebx)
43a929:	5b                   	pop    %ebx
43a92a:	c3                   	ret
43a92b:	90                   	nop
43a92c:	53                   	push   %ebx
43a92d:	66 83 b8 52 02 00 00 	cmpw   $0x0,0x252(%eax)
43a934:	00
43a935:	74 12                	je     0x43a949
43a937:	8b d8                	mov    %eax,%ebx
43a939:	8b ca                	mov    %edx,%ecx
43a93b:	8b d0                	mov    %eax,%edx
43a93d:	8b 83 54 02 00 00    	mov    0x254(%ebx),%eax
43a943:	ff 93 50 02 00 00    	call   *0x250(%ebx)
43a949:	5b                   	pop    %ebx
43a94a:	c3                   	ret
43a94b:	90                   	nop
43a94c:	55                   	push   %ebp
43a94d:	8b ec                	mov    %esp,%ebp
43a94f:	53                   	push   %ebx
43a950:	66 83 b8 5a 02 00 00 	cmpw   $0x0,0x25a(%eax)
43a957:	00
43a958:	74 17                	je     0x43a971
43a95a:	51                   	push   %ecx
43a95b:	8a 4d 08             	mov    0x8(%ebp),%cl
43a95e:	51                   	push   %ecx
43a95f:	8b d8                	mov    %eax,%ebx
43a961:	8b ca                	mov    %edx,%ecx
43a963:	8b d0                	mov    %eax,%edx
43a965:	8b 83 5c 02 00 00    	mov    0x25c(%ebx),%eax
43a96b:	ff 93 58 02 00 00    	call   *0x258(%ebx)
43a971:	5b                   	pop    %ebx
43a972:	5d                   	pop    %ebp
43a973:	c2 04 00             	ret    $0x4
43a976:	8b c0                	mov    %eax,%eax
43a978:	3a 90 20 02 00 00    	cmp    0x220(%eax),%dl
43a97e:	74 0b                	je     0x43a98b
43a980:	88 90 20 02 00 00    	mov    %dl,0x220(%eax)
43a986:	e8 f1 ff 00 00       	call   0x44a97c
43a98b:	c3                   	ret
43a98c:	3a 90 21 02 00 00    	cmp    0x221(%eax),%dl
43a992:	74 0b                	je     0x43a99f
43a994:	88 90 21 02 00 00    	mov    %dl,0x221(%eax)
43a99a:	e8 dd ff 00 00       	call   0x44a97c
43a99f:	c3                   	ret
43a9a0:	3a 90 2c 02 00 00    	cmp    0x22c(%eax),%dl
43a9a6:	74 0b                	je     0x43a9b3
43a9a8:	88 90 2c 02 00 00    	mov    %dl,0x22c(%eax)
43a9ae:	e8 c9 ff 00 00       	call   0x44a97c
43a9b3:	c3                   	ret
43a9b4:	3a 90 22 02 00 00    	cmp    0x222(%eax),%dl
43a9ba:	74 0b                	je     0x43a9c7
43a9bc:	88 90 22 02 00 00    	mov    %dl,0x222(%eax)
43a9c2:	e8 b5 ff 00 00       	call   0x44a97c
43a9c7:	c3                   	ret
43a9c8:	56                   	push   %esi
43a9c9:	8b f0                	mov    %eax,%esi
43a9cb:	8b 86 08 02 00 00    	mov    0x208(%esi),%eax
43a9d1:	8b 08                	mov    (%eax),%ecx
43a9d3:	ff 51 08             	call   *0x8(%ecx)
43a9d6:	5e                   	pop    %esi
43a9d7:	c3                   	ret
43a9d8:	53                   	push   %ebx
43a9d9:	56                   	push   %esi
43a9da:	57                   	push   %edi
43a9db:	83 c4 d8             	add    $0xffffffd8,%esp
43a9de:	8b fa                	mov    %edx,%edi
43a9e0:	8b f0                	mov    %eax,%esi
43a9e2:	8b d1                	mov    %ecx,%edx
43a9e4:	8b 86 08 02 00 00    	mov    0x208(%esi),%eax
43a9ea:	e8 e5 f8 ff ff       	call   0x43a2d4
43a9ef:	8b d8                	mov    %eax,%ebx
43a9f1:	8d 44 24 01          	lea    0x1(%esp),%eax
43a9f5:	33 c9                	xor    %ecx,%ecx
43a9f7:	ba 24 00 00 00       	mov    $0x24,%edx
43a9fc:	e8 cb 82 fc ff       	call   0x402ccc
43aa01:	c7 44 24 01 07 00 00 	movl   $0x7,0x1(%esp)
43aa08:	00
43aa09:	8b 43 10             	mov    0x10(%ebx),%eax
43aa0c:	89 44 24 05          	mov    %eax,0x5(%esp)
43aa10:	8b 43 0c             	mov    0xc(%ebx),%eax
43aa13:	e8 f8 9a fc ff       	call   0x404510
43aa18:	89 44 24 09          	mov    %eax,0x9(%esp)
43aa1c:	8b 43 0c             	mov    0xc(%ebx),%eax
43aa1f:	e8 ec 98 fc ff       	call   0x404310
43aa24:	89 44 24 11          	mov    %eax,0x11(%esp)
43aa28:	8a 43 1c             	mov    0x1c(%ebx),%al
43aa2b:	88 04 24             	mov    %al,(%esp)
43aa2e:	8b c3                	mov    %ebx,%eax
43aa30:	e8 13 f7 ff ff       	call   0x43a148
43aa35:	84 c0                	test   %al,%al
43aa37:	74 07                	je     0x43aa40
43aa39:	8b c4                	mov    %esp,%eax
43aa3b:	e8 5c 8f 00 00       	call   0x44399c
43aa40:	8a 04 24             	mov    (%esp),%al
43aa43:	2c 01                	sub    $0x1,%al
43aa45:	72 04                	jb     0x43aa4b
43aa47:	74 0a                	je     0x43aa53
43aa49:	eb 12                	jmp    0x43aa5d
43aa4b:	33 c0                	xor    %eax,%eax
43aa4d:	89 44 24 15          	mov    %eax,0x15(%esp)
43aa51:	eb 12                	jmp    0x43aa65
43aa53:	c7 44 24 15 01 00 00 	movl   $0x1,0x15(%esp)
43aa5a:	00
43aa5b:	eb 08                	jmp    0x43aa65
43aa5d:	c7 44 24 15 02 00 00 	movl   $0x2,0x15(%esp)
43aa64:	00
43aa65:	80 7b 1d 01          	cmpb   $0x1,0x1d(%ebx)
43aa69:	75 0a                	jne    0x43aa75
43aa6b:	81 4c 24 15 00 80 00 	orl    $0x8000,0x15(%esp)
43aa72:	00
43aa73:	eb 08                	jmp    0x43aa7d
43aa75:	81 4c 24 15 00 40 00 	orl    $0x4000,0x15(%esp)
43aa7c:	00
43aa7d:	8b c3                	mov    %ebx,%eax
43aa7f:	e8 ac f6 ff ff       	call   0x43a130
43aa84:	84 c0                	test   %al,%al
43aa86:	74 05                	je     0x43aa8d
43aa88:	83 4c 24 15 04       	orl    $0x4,0x15(%esp)
43aa8d:	83 be 28 02 00 00 00 	cmpl   $0x0,0x228(%esi)
43aa94:	74 1a                	je     0x43aab0
43aa96:	83 7b 20 00          	cmpl   $0x0,0x20(%ebx)
43aa9a:	7c 14                	jl     0x43aab0
43aa9c:	83 4c 24 01 20       	orl    $0x20,0x1(%esp)
43aaa1:	81 4c 24 15 00 08 00 	orl    $0x800,0x15(%esp)
43aaa8:	00
43aaa9:	8b 43 20             	mov    0x20(%ebx),%eax
43aaac:	89 44 24 1d          	mov    %eax,0x1d(%esp)
43aab0:	8d 44 24 01          	lea    0x1(%esp),%eax
43aab4:	50                   	push   %eax
43aab5:	8b c3                	mov    %ebx,%eax
43aab7:	e8 c0 e6 fd ff       	call   0x41917c
43aabc:	50                   	push   %eax
43aabd:	57                   	push   %edi
43aabe:	8b c6                	mov    %esi,%eax
43aac0:	e8 17 29 01 00       	call   0x44d3dc
43aac5:	50                   	push   %eax
43aac6:	e8 f1 bf fc ff       	call   0x406abc
43aacb:	83 c4 28             	add    $0x28,%esp
43aace:	5f                   	pop    %edi
43aacf:	5e                   	pop    %esi
43aad0:	5b                   	pop    %ebx
43aad1:	c3                   	ret
43aad2:	8b c0                	mov    %eax,%eax
43aad4:	53                   	push   %ebx
43aad5:	56                   	push   %esi
43aad6:	8b f2                	mov    %edx,%esi
43aad8:	8b d8                	mov    %eax,%ebx
43aada:	8b c3                	mov    %ebx,%eax
43aadc:	e8 ff 2b 01 00       	call   0x44d6e0
43aae1:	84 c0                	test   %al,%al
43aae3:	74 0e                	je     0x43aaf3
43aae5:	8b ce                	mov    %esi,%ecx
43aae7:	ba 04 12 00 00       	mov    $0x1204,%edx
43aaec:	8b c3                	mov    %ebx,%eax
43aaee:	e8 e5 fe ff ff       	call   0x43a9d8
43aaf3:	5e                   	pop    %esi
43aaf4:	5b                   	pop    %ebx
43aaf5:	c3                   	ret
43aaf6:	8b c0                	mov    %eax,%eax
43aaf8:	53                   	push   %ebx
43aaf9:	56                   	push   %esi
43aafa:	57                   	push   %edi
43aafb:	8b f0                	mov    %eax,%esi
43aafd:	8b c6                	mov    %esi,%eax
43aaff:	e8 dc 2b 01 00       	call   0x44d6e0
43ab04:	84 c0                	test   %al,%al
43ab06:	74 67                	je     0x43ab6f
43ab08:	80 be 10 02 00 00 00 	cmpb   $0x0,0x210(%esi)
43ab0f:	75 5e                	jne    0x43ab6f
43ab11:	6a 00                	push   $0x0
43ab13:	6a 00                	push   $0x0
43ab15:	68 00 12 00 00       	push   $0x1200
43ab1a:	8b c6                	mov    %esi,%eax
43ab1c:	e8 bb 28 01 00       	call   0x44d3dc
43ab21:	50                   	push   %eax
43ab22:	e8 95 bf fc ff       	call   0x406abc
43ab27:	8b d8                	mov    %eax,%ebx
43ab29:	4b                   	dec    %ebx
43ab2a:	85 db                	test   %ebx,%ebx
43ab2c:	7c 1a                	jl     0x43ab48
43ab2e:	43                   	inc    %ebx
43ab2f:	6a 00                	push   $0x0
43ab31:	6a 00                	push   $0x0
43ab33:	68 02 12 00 00       	push   $0x1202
43ab38:	8b c6                	mov    %esi,%eax
43ab3a:	e8 9d 28 01 00       	call   0x44d3dc
43ab3f:	50                   	push   %eax
43ab40:	e8 77 bf fc ff       	call   0x406abc
43ab45:	4b                   	dec    %ebx
43ab46:	75 e7                	jne    0x43ab2f
43ab48:	8b 86 08 02 00 00    	mov    0x208(%esi),%eax
43ab4e:	e8 b9 e9 fd ff       	call   0x41950c
43ab53:	8b d8                	mov    %eax,%ebx
43ab55:	4b                   	dec    %ebx
43ab56:	85 db                	test   %ebx,%ebx
43ab58:	7c 15                	jl     0x43ab6f
43ab5a:	43                   	inc    %ebx
43ab5b:	33 ff                	xor    %edi,%edi
43ab5d:	8b cf                	mov    %edi,%ecx
43ab5f:	ba 01 12 00 00       	mov    $0x1201,%edx
43ab64:	8b c6                	mov    %esi,%eax
43ab66:	e8 6d fe ff ff       	call   0x43a9d8
43ab6b:	47                   	inc    %edi
43ab6c:	4b                   	dec    %ebx
43ab6d:	75 ee                	jne    0x43ab5d
43ab6f:	5f                   	pop    %edi
43ab70:	5e                   	pop    %esi
43ab71:	5b                   	pop    %ebx
43ab72:	c3                   	ret
43ab73:	90                   	nop
43ab74:	55                   	push   %ebp
43ab75:	8b ec                	mov    %esp,%ebp
43ab77:	83 c4 f0             	add    $0xfffffff0,%esp
43ab7a:	56                   	push   %esi
43ab7b:	89 55 f8             	mov    %edx,-0x8(%ebp)
43ab7e:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ab81:	8b 45 f8             	mov    -0x8(%ebp),%eax
43ab84:	8b 40 08             	mov    0x8(%eax),%eax
43ab87:	89 45 f0             	mov    %eax,-0x10(%ebp)
43ab8a:	8b 45 f0             	mov    -0x10(%ebp),%eax
43ab8d:	8b 40 18             	mov    0x18(%eax),%eax
43ab90:	50                   	push   %eax
43ab91:	e8 b6 ba fc ff       	call   0x40664c
43ab96:	89 45 f4             	mov    %eax,-0xc(%ebp)
43ab99:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ab9c:	8b 80 14 02 00 00    	mov    0x214(%eax),%eax
43aba2:	e8 81 9e fe ff       	call   0x424a28
43aba7:	33 c0                	xor    %eax,%eax
43aba9:	55                   	push   %ebp
43abaa:	68 75 ac 43 00       	push   $0x43ac75
43abaf:	64 ff 30             	push   %fs:(%eax)
43abb2:	64 89 20             	mov    %esp,%fs:(%eax)
43abb5:	8b 45 f0             	mov    -0x10(%ebp),%eax
43abb8:	8b 50 18             	mov    0x18(%eax),%edx
43abbb:	8b 45 fc             	mov    -0x4(%ebp),%eax
43abbe:	8b 80 14 02 00 00    	mov    0x214(%eax),%eax
43abc4:	e8 d3 a1 fe ff       	call   0x424d9c
43abc9:	8b 45 fc             	mov    -0x4(%ebp),%eax
43abcc:	8b 50 68             	mov    0x68(%eax),%edx
43abcf:	8b 45 fc             	mov    -0x4(%ebp),%eax
43abd2:	8b 80 14 02 00 00    	mov    0x214(%eax),%eax
43abd8:	e8 5f a0 fe ff       	call   0x424c3c
43abdd:	8b 45 fc             	mov    -0x4(%ebp),%eax
43abe0:	8b 80 14 02 00 00    	mov    0x214(%eax),%eax
43abe6:	8b 40 14             	mov    0x14(%eax),%eax
43abe9:	ba 0f 00 00 ff       	mov    $0xff00000f,%edx
43abee:	e8 1d 9a fe ff       	call   0x424610
43abf3:	8b 45 fc             	mov    -0x4(%ebp),%eax
43abf6:	8b 80 14 02 00 00    	mov    0x214(%eax),%eax
43abfc:	8b 40 14             	mov    0x14(%eax),%eax
43abff:	33 d2                	xor    %edx,%edx
43ac01:	e8 26 9b fe ff       	call   0x42472c
43ac06:	8b 45 f0             	mov    -0x10(%ebp),%eax
43ac09:	f6 40 10 01          	testb  $0x1,0x10(%eax)
43ac0d:	0f 95 c0             	setne  %al
43ac10:	50                   	push   %eax
43ac11:	8b 45 f0             	mov    -0x10(%ebp),%eax
43ac14:	8b 50 08             	mov    0x8(%eax),%edx
43ac17:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ac1a:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
43ac20:	e8 af f6 ff ff       	call   0x43a2d4
43ac25:	8b d0                	mov    %eax,%edx
43ac27:	8b 45 f0             	mov    -0x10(%ebp),%eax