437988:	74 1d                	je     0x4379a7
43798a:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
43798e:	72 17                	jb     0x4379a7
437990:	ff 75 18             	push   0x18(%ebp)
437993:	ff 75 14             	push   0x14(%ebp)
437996:	ff 75 10             	push   0x10(%ebp)
437999:	ff 70 14             	push   0x14(%eax)
43799c:	ff 70 10             	push   0x10(%eax)
43799f:	6a 7e                	push   $0x7e
4379a1:	59                   	pop    %ecx
4379a2:	e8 e4 03 00 00       	call   0x437d8b
4379a7:	8b 45 08             	mov    0x8(%ebp),%eax
4379aa:	53                   	push   %ebx
4379ab:	56                   	push   %esi
4379ac:	57                   	push   %edi
4379ad:	8d 78 10             	lea    0x10(%eax),%edi
4379b0:	f0 ff 07             	lock incl (%edi)
4379b3:	83 78 0c 01          	cmpl   $0x1,0xc(%eax)
4379b7:	75 07                	jne    0x4379c0
4379b9:	be 33 10 04 80       	mov    $0x80041033,%esi
4379be:	eb 75                	jmp    0x437a35
4379c0:	83 78 38 00          	cmpl   $0x0,0x38(%eax)
4379c4:	74 6a                	je     0x437a30
4379c6:	8d 58 fc             	lea    -0x4(%eax),%ebx
4379c9:	51                   	push   %ecx
4379ca:	8d 45 f8             	lea    -0x8(%ebp),%eax
4379cd:	8b cb                	mov    %ebx,%ecx
4379cf:	50                   	push   %eax
4379d0:	8d 45 f4             	lea    -0xc(%ebp),%eax
4379d3:	50                   	push   %eax
4379d4:	8d 45 fc             	lea    -0x4(%ebp),%eax
4379d7:	50                   	push   %eax
4379d8:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4379db:	50                   	push   %eax
4379dc:	8d 45 f0             	lea    -0x10(%ebp),%eax
4379df:	50                   	push   %eax
4379e0:	8d 45 ec             	lea    -0x14(%ebp),%eax
4379e3:	50                   	push   %eax
4379e4:	8d 45 e8             	lea    -0x18(%ebp),%eax
4379e7:	50                   	push   %eax
4379e8:	e8 bb c6 ff ff       	call   0x4340a8
4379ed:	8b f0                	mov    %eax,%esi
4379ef:	85 f6                	test   %esi,%esi
4379f1:	78 42                	js     0x437a35
4379f3:	ff 75 1c             	push   0x1c(%ebp)
4379f6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4379f9:	ff 75 18             	push   0x18(%ebp)
4379fc:	ff 75 14             	push   0x14(%ebp)
4379ff:	8b 30                	mov    (%eax),%esi
437a01:	ff 75 10             	push   0x10(%ebp)
437a04:	ff 75 0c             	push   0xc(%ebp)
437a07:	8b 4e 18             	mov    0x18(%esi),%ecx
437a0a:	50                   	push   %eax
437a0b:	ff 15 c4 12 45 00    	call   *0x4512c4
437a11:	ff 56 18             	call   *0x18(%esi)
437a14:	ff 75 f8             	push   -0x8(%ebp)
437a17:	8b f0                	mov    %eax,%esi
437a19:	ff 75 f4             	push   -0xc(%ebp)
437a1c:	51                   	push   %ecx
437a1d:	51                   	push   %ecx
437a1e:	ff 75 f0             	push   -0x10(%ebp)
437a21:	8b cb                	mov    %ebx,%ecx
437a23:	ff 75 ec             	push   -0x14(%ebp)
437a26:	ff 75 e8             	push   -0x18(%ebp)
437a29:	e8 2d db ff ff       	call   0x43555b
437a2e:	eb 05                	jmp    0x437a35
437a30:	be 09 10 04 80       	mov    $0x80041009,%esi
437a35:	f0 ff 0f             	lock decl (%edi)
437a38:	85 f6                	test   %esi,%esi
437a3a:	79 0f                	jns    0x437a4b
437a3c:	56                   	push   %esi
437a3d:	ff 15 a0 12 45 00    	call   *0x4512a0
437a43:	8b c8                	mov    %eax,%ecx
437a45:	ff 15 a4 12 45 00    	call   *0x4512a4
437a4b:	a1 00 f0 44 00       	mov    0x44f000,%eax
437a50:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
437a55:	74 20                	je     0x437a77
437a57:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
437a5b:	74 1a                	je     0x437a77
437a5d:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
437a61:	72 14                	jb     0x437a77
437a63:	56                   	push   %esi
437a64:	ff 70 14             	push   0x14(%eax)
437a67:	ba d4 b1 40 00       	mov    $0x40b1d4,%edx
437a6c:	ff 70 10             	push   0x10(%eax)
437a6f:	6a 7f                	push   $0x7f
437a71:	59                   	pop    %ecx
437a72:	e8 4f 8d ff ff       	call   0x4307c6
437a77:	5f                   	pop    %edi
437a78:	8b c6                	mov    %esi,%eax
437a7a:	5e                   	pop    %esi
437a7b:	5b                   	pop    %ebx
437a7c:	c9                   	leave
437a7d:	c2 18 00             	ret    $0x18
437a80:	83 c1 44             	add    $0x44,%ecx
437a83:	e8 1f b2 ff ff       	call   0x432ca7
437a88:	85 c0                	test   %eax,%eax
437a8a:	75 01                	jne    0x437a8d
437a8c:	c3                   	ret
437a8d:	56                   	push   %esi
437a8e:	be 06 10 04 80       	mov    $0x80041006,%esi
437a93:	56                   	push   %esi
437a94:	ff 15 a0 12 45 00    	call   *0x4512a0
437a9a:	8b c8                	mov    %eax,%ecx
437a9c:	ff 15 a4 12 45 00    	call   *0x4512a4
437aa2:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
437aa8:	81 f9 00 f0 44 00    	cmp    $0x44f000,%ecx
437aae:	74 20                	je     0x437ad0
437ab0:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
437ab4:	74 1a                	je     0x437ad0
437ab6:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
437aba:	72 14                	jb     0x437ad0
437abc:	56                   	push   %esi
437abd:	ff 71 14             	push   0x14(%ecx)
437ac0:	ba d4 b1 40 00       	mov    $0x40b1d4,%edx
437ac5:	ff 71 10             	push   0x10(%ecx)
437ac8:	6a 75                	push   $0x75
437aca:	59                   	pop    %ecx
437acb:	e8 f6 8c ff ff       	call   0x4307c6
437ad0:	8b c6                	mov    %esi,%eax
437ad2:	5e                   	pop    %esi
437ad3:	c3                   	ret
437ad4:	cc                   	int3
437ad5:	cc                   	int3
437ad6:	cc                   	int3
437ad7:	cc                   	int3
437ad8:	cc                   	int3
437ad9:	cc                   	int3
437ada:	cc                   	int3
437adb:	cc                   	int3
437adc:	cc                   	int3
437add:	cc                   	int3
437ade:	cc                   	int3
437adf:	cc                   	int3
437ae0:	8b ff                	mov    %edi,%edi
437ae2:	55                   	push   %ebp
437ae3:	8b ec                	mov    %esp,%ebp
437ae5:	53                   	push   %ebx
437ae6:	57                   	push   %edi
437ae7:	a1 00 f0 44 00       	mov    0x44f000,%eax
437aec:	bf 00 f0 44 00       	mov    $0x44f000,%edi
437af1:	bb d4 b1 40 00       	mov    $0x40b1d4,%ebx
437af6:	3b c7                	cmp    %edi,%eax
437af8:	74 25                	je     0x437b1f
437afa:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
437afe:	74 1f                	je     0x437b1f
437b00:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
437b04:	72 19                	jb     0x437b1f
437b06:	ff 75 14             	push   0x14(%ebp)
437b09:	8b d3                	mov    %ebx,%edx
437b0b:	ff 75 10             	push   0x10(%ebp)
437b0e:	ff 75 0c             	push   0xc(%ebp)
437b11:	ff 70 14             	push   0x14(%eax)
437b14:	ff 70 10             	push   0x10(%eax)
437b17:	6a 37                	push   $0x37
437b19:	59                   	pop    %ecx
437b1a:	e8 48 b3 ff ff       	call   0x432e67
437b1f:	56                   	push   %esi
437b20:	8b 75 08             	mov    0x8(%ebp),%esi
437b23:	f0 ff 46 08          	lock incl 0x8(%esi)
437b27:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
437b2b:	74 14                	je     0x437b41
437b2d:	ff 15 d8 10 45 00    	call   *0x4510d8
437b33:	85 c0                	test   %eax,%eax
437b35:	75 f0                	jne    0x437b27
437b37:	6a 0a                	push   $0xa
437b39:	ff 15 58 11 45 00    	call   *0x451158
437b3f:	eb e6                	jmp    0x437b27
437b41:	a1 00 f0 44 00       	mov    0x44f000,%eax
437b46:	5e                   	pop    %esi
437b47:	3b c7                	cmp    %edi,%eax
437b49:	74 1e                	je     0x437b69
437b4b:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
437b4f:	74 18                	je     0x437b69
437b51:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
437b55:	72 12                	jb     0x437b69
437b57:	6a 00                	push   $0x0
437b59:	ff 70 14             	push   0x14(%eax)
437b5c:	8b d3                	mov    %ebx,%edx
437b5e:	ff 70 10             	push   0x10(%eax)
437b61:	6a 38                	push   $0x38
437b63:	59                   	pop    %ecx
437b64:	e8 5d 8c ff ff       	call   0x4307c6
437b69:	5f                   	pop    %edi
437b6a:	33 c0                	xor    %eax,%eax
437b6c:	5b                   	pop    %ebx
437b6d:	5d                   	pop    %ebp
437b6e:	c2 10 00             	ret    $0x10
437b71:	cc                   	int3
437b72:	cc                   	int3
437b73:	cc                   	int3
437b74:	cc                   	int3
437b75:	cc                   	int3
437b76:	cc                   	int3
437b77:	cc                   	int3
437b78:	cc                   	int3
437b79:	cc                   	int3
437b7a:	cc                   	int3
437b7b:	cc                   	int3
437b7c:	cc                   	int3
437b7d:	cc                   	int3
437b7e:	cc                   	int3
437b7f:	cc                   	int3
437b80:	8b ff                	mov    %edi,%edi
437b82:	55                   	push   %ebp
437b83:	8b ec                	mov    %esp,%ebp
437b85:	53                   	push   %ebx
437b86:	57                   	push   %edi
437b87:	a1 00 f0 44 00       	mov    0x44f000,%eax
437b8c:	bf 00 f0 44 00       	mov    $0x44f000,%edi
437b91:	bb d4 b1 40 00       	mov    $0x40b1d4,%ebx
437b96:	3b c7                	cmp    %edi,%eax
437b98:	74 25                	je     0x437bbf
437b9a:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
437b9e:	74 1f                	je     0x437bbf
437ba0:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
437ba4:	72 19                	jb     0x437bbf
437ba6:	ff 75 14             	push   0x14(%ebp)
437ba9:	8b d3                	mov    %ebx,%edx
437bab:	ff 75 10             	push   0x10(%ebp)
437bae:	ff 75 0c             	push   0xc(%ebp)
437bb1:	ff 70 14             	push   0x14(%eax)
437bb4:	ff 70 10             	push   0x10(%eax)
437bb7:	6a 76                	push   $0x76
437bb9:	59                   	pop    %ecx
437bba:	e8 a8 b2 ff ff       	call   0x432e67
437bbf:	56                   	push   %esi
437bc0:	8b 75 08             	mov    0x8(%ebp),%esi
437bc3:	f0 ff 46 08          	lock incl 0x8(%esi)
437bc7:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
437bcb:	74 14                	je     0x437be1
437bcd:	ff 15 d8 10 45 00    	call   *0x4510d8
437bd3:	85 c0                	test   %eax,%eax
437bd5:	75 f0                	jne    0x437bc7
437bd7:	6a 0a                	push   $0xa
437bd9:	ff 15 58 11 45 00    	call   *0x451158
437bdf:	eb e6                	jmp    0x437bc7
437be1:	a1 00 f0 44 00       	mov    0x44f000,%eax
437be6:	5e                   	pop    %esi
437be7:	3b c7                	cmp    %edi,%eax
437be9:	74 1e                	je     0x437c09
437beb:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
437bef:	74 18                	je     0x437c09
437bf1:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
437bf5:	72 12                	jb     0x437c09
437bf7:	6a 00                	push   $0x0
437bf9:	ff 70 14             	push   0x14(%eax)
437bfc:	8b d3                	mov    %ebx,%edx
437bfe:	ff 70 10             	push   0x10(%eax)
437c01:	6a 77                	push   $0x77
437c03:	59                   	pop    %ecx
437c04:	e8 bd 8b ff ff       	call   0x4307c6
437c09:	5f                   	pop    %edi
437c0a:	33 c0                	xor    %eax,%eax
437c0c:	5b                   	pop    %ebx
437c0d:	5d                   	pop    %ebp
437c0e:	c2 10 00             	ret    $0x10
437c11:	8b ff                	mov    %edi,%edi
437c13:	55                   	push   %ebp
437c14:	8b ec                	mov    %esp,%ebp
437c16:	51                   	push   %ecx
437c17:	51                   	push   %ecx
437c18:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
437c1c:	53                   	push   %ebx
437c1d:	56                   	push   %esi
437c1e:	8b 75 14             	mov    0x14(%ebp),%esi
437c21:	8b d9                	mov    %ecx,%ebx
437c23:	89 5d f8             	mov    %ebx,-0x8(%ebp)
437c26:	57                   	push   %edi
437c27:	6a 0a                	push   $0xa
437c29:	59                   	pop    %ecx
437c2a:	85 f6                	test   %esi,%esi
437c2c:	74 1e                	je     0x437c4c
437c2e:	8b d6                	mov    %esi,%edx
437c30:	8d 7a 02             	lea    0x2(%edx),%edi
437c33:	66 8b 02             	mov    (%edx),%ax
437c36:	83 c2 02             	add    $0x2,%edx
437c39:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
437c3d:	75 f4                	jne    0x437c33
437c3f:	2b d7                	sub    %edi,%edx
437c41:	d1 fa                	sar    $1,%edx
437c43:	8d 3c 55 02 00 00 00 	lea    0x2(,%edx,2),%edi
437c4a:	eb 02                	jmp    0x437c4e
437c4c:	8b f9                	mov    %ecx,%edi
437c4e:	85 f6                	test   %esi,%esi
437c50:	75 05                	jne    0x437c57
437c52:	be 98 aa 40 00       	mov    $0x40aa98,%esi
437c57:	8b 55 10             	mov    0x10(%ebp),%edx
437c5a:	85 d2                	test   %edx,%edx
437c5c:	74 23                	je     0x437c81
437c5e:	8b ca                	mov    %edx,%ecx
437c60:	8d 59 02             	lea    0x2(%ecx),%ebx
437c63:	66 8b 01             	mov    (%ecx),%ax
437c66:	83 c1 02             	add    $0x2,%ecx
437c69:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
437c6d:	75 f4                	jne    0x437c63
437c6f:	2b cb                	sub    %ebx,%ecx
437c71:	8b 5d f8             	mov    -0x8(%ebp),%ebx
437c74:	d1 f9                	sar    $1,%ecx
437c76:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
437c7d:	85 d2                	test   %edx,%edx
437c7f:	75 05                	jne    0x437c86
437c81:	ba 98 aa 40 00       	mov    $0x40aa98,%edx
437c86:	33 c0                	xor    %eax,%eax
437c88:	50                   	push   %eax
437c89:	6a 04                	push   $0x4
437c8b:	8d 45 1c             	lea    0x1c(%ebp),%eax
437c8e:	50                   	push   %eax
437c8f:	6a 04                	push   $0x4
437c91:	8d 45 18             	lea    0x18(%ebp),%eax
437c94:	50                   	push   %eax
437c95:	57                   	push   %edi
437c96:	56                   	push   %esi
437c97:	51                   	push   %ecx
437c98:	52                   	push   %edx
437c99:	53                   	push   %ebx
437c9a:	68 d4 b1 40 00       	push   $0x40b1d4
437c9f:	6a 2b                	push   $0x2b
437ca1:	ff 75 0c             	push   0xc(%ebp)
437ca4:	ff 75 08             	push   0x8(%ebp)
437ca7:	ff 15 94 12 45 00    	call   *0x451294
437cad:	83 c4 38             	add    $0x38,%esp
437cb0:	5f                   	pop    %edi
437cb1:	5e                   	pop    %esi
437cb2:	5b                   	pop    %ebx
437cb3:	c9                   	leave
437cb4:	c2 18 00             	ret    $0x18
437cb7:	8b ff                	mov    %edi,%edi
437cb9:	55                   	push   %ebp
437cba:	8b ec                	mov    %esp,%ebp
437cbc:	53                   	push   %ebx
437cbd:	56                   	push   %esi
437cbe:	8b 75 10             	mov    0x10(%ebp),%esi
437cc1:	33 db                	xor    %ebx,%ebx
437cc3:	85 f6                	test   %esi,%esi
437cc5:	74 1f                	je     0x437ce6
437cc7:	8b d6                	mov    %esi,%edx
437cc9:	57                   	push   %edi
437cca:	8d 7a 02             	lea    0x2(%edx),%edi
437ccd:	66 8b 02             	mov    (%edx),%ax
437cd0:	83 c2 02             	add    $0x2,%edx
437cd3:	66 3b c3             	cmp    %bx,%ax
437cd6:	75 f5                	jne    0x437ccd
437cd8:	2b d7                	sub    %edi,%edx
437cda:	d1 fa                	sar    $1,%edx
437cdc:	5f                   	pop    %edi
437cdd:	8d 14 55 02 00 00 00 	lea    0x2(,%edx,2),%edx
437ce4:	eb 03                	jmp    0x437ce9
437ce6:	6a 0a                	push   $0xa
437ce8:	5a                   	pop    %edx