43ccab:	75 25                	jne    0x43ccd2
43ccad:	8b df                	mov    %edi,%ebx
43ccaf:	c1 e3 02             	shl    $0x2,%ebx
43ccb2:	53                   	push   %ebx
43ccb3:	e8 9d 33 00 00       	call   0x440055
43ccb8:	53                   	push   %ebx
43ccb9:	6a 00                	push   $0x0
43ccbb:	50                   	push   %eax
43ccbc:	89 46 04             	mov    %eax,0x4(%esi)
43ccbf:	e8 7c b5 fd ff       	call   0x418240
43ccc4:	83 c4 10             	add    $0x10,%esp
43ccc7:	89 7e 0c             	mov    %edi,0xc(%esi)
43ccca:	89 7e 08             	mov    %edi,0x8(%esi)
43cccd:	e9 b0 00 00 00       	jmp    0x43cd82
43ccd2:	8b 5e 0c             	mov    0xc(%esi),%ebx
43ccd5:	3b fb                	cmp    %ebx,%edi
43ccd7:	7f 1f                	jg     0x43ccf8
43ccd9:	8b 46 08             	mov    0x8(%esi),%eax
43ccdc:	3b f8                	cmp    %eax,%edi
43ccde:	7e ea                	jle    0x43ccca
43cce0:	8b d7                	mov    %edi,%edx
43cce2:	2b d0                	sub    %eax,%edx
43cce4:	c1 e2 02             	shl    $0x2,%edx
43cce7:	52                   	push   %edx
43cce8:	8d 04 81             	lea    (%ecx,%eax,4),%eax
43cceb:	6a 00                	push   $0x0
43cced:	50                   	push   %eax
43ccee:	e8 4d b5 fd ff       	call   0x418240
43ccf3:	83 c4 0c             	add    $0xc,%esp
43ccf6:	eb d2                	jmp    0x43ccca
43ccf8:	8b 46 10             	mov    0x10(%esi),%eax
43ccfb:	85 c0                	test   %eax,%eax
43ccfd:	75 23                	jne    0x43cd22
43ccff:	8b 46 08             	mov    0x8(%esi),%eax
43cd02:	6a 08                	push   $0x8
43cd04:	99                   	cltd
43cd05:	59                   	pop    %ecx
43cd06:	f7 f9                	idiv   %ecx
43cd08:	83 f8 04             	cmp    $0x4,%eax
43cd0b:	7c 12                	jl     0x43cd1f
43cd0d:	b9 00 04 00 00       	mov    $0x400,%ecx
43cd12:	3b c1                	cmp    %ecx,%eax
43cd14:	7e 04                	jle    0x43cd1a
43cd16:	8b c1                	mov    %ecx,%eax
43cd18:	eb 08                	jmp    0x43cd22
43cd1a:	83 f8 04             	cmp    $0x4,%eax
43cd1d:	7d 03                	jge    0x43cd22
43cd1f:	6a 04                	push   $0x4
43cd21:	58                   	pop    %eax
43cd22:	03 c3                	add    %ebx,%eax
43cd24:	3b f8                	cmp    %eax,%edi
43cd26:	89 45 08             	mov    %eax,0x8(%ebp)
43cd29:	7c 03                	jl     0x43cd2e
43cd2b:	89 7d 08             	mov    %edi,0x8(%ebp)
43cd2e:	8b 45 08             	mov    0x8(%ebp),%eax
43cd31:	3b c3                	cmp    %ebx,%eax
43cd33:	7d 05                	jge    0x43cd3a
43cd35:	e8 11 87 ff ff       	call   0x43544b
43cd3a:	c1 e0 02             	shl    $0x2,%eax
43cd3d:	50                   	push   %eax
43cd3e:	e8 12 33 00 00       	call   0x440055
43cd43:	8b d8                	mov    %eax,%ebx
43cd45:	8b 46 08             	mov    0x8(%esi),%eax
43cd48:	c1 e0 02             	shl    $0x2,%eax
43cd4b:	50                   	push   %eax
43cd4c:	ff 76 04             	push   0x4(%esi)
43cd4f:	53                   	push   %ebx
43cd50:	e8 1b ab fd ff       	call   0x417870
43cd55:	8b 46 08             	mov    0x8(%esi),%eax
43cd58:	8b cf                	mov    %edi,%ecx
43cd5a:	2b c8                	sub    %eax,%ecx
43cd5c:	c1 e1 02             	shl    $0x2,%ecx
43cd5f:	51                   	push   %ecx
43cd60:	8d 04 83             	lea    (%ebx,%eax,4),%eax
43cd63:	6a 00                	push   $0x0
43cd65:	50                   	push   %eax
43cd66:	e8 d5 b4 fd ff       	call   0x418240
43cd6b:	ff 76 04             	push   0x4(%esi)
43cd6e:	e8 0d 33 00 00       	call   0x440080
43cd73:	8b 45 08             	mov    0x8(%ebp),%eax
43cd76:	83 c4 20             	add    $0x20,%esp
43cd79:	89 7e 08             	mov    %edi,0x8(%esi)
43cd7c:	89 46 0c             	mov    %eax,0xc(%esi)
43cd7f:	89 5e 04             	mov    %ebx,0x4(%esi)
43cd82:	5f                   	pop    %edi
43cd83:	5e                   	pop    %esi
43cd84:	5b                   	pop    %ebx
43cd85:	5d                   	pop    %ebp
43cd86:	c2 08 00             	ret    $0x8
43cd89:	56                   	push   %esi
43cd8a:	8b 74 24 08          	mov    0x8(%esp),%esi
43cd8e:	57                   	push   %edi
43cd8f:	8b f9                	mov    %ecx,%edi
43cd91:	3b fe                	cmp    %esi,%edi
43cd93:	75 05                	jne    0x43cd9a
43cd95:	e8 b1 86 ff ff       	call   0x43544b
43cd9a:	8b 46 08             	mov    0x8(%esi),%eax
43cd9d:	53                   	push   %ebx
43cd9e:	8b 5f 08             	mov    0x8(%edi),%ebx
43cda1:	6a ff                	push   $0xffffffff
43cda3:	03 c3                	add    %ebx,%eax
43cda5:	50                   	push   %eax
43cda6:	8b cf                	mov    %edi,%ecx
43cda8:	e8 c2 fe ff ff       	call   0x43cc6f
43cdad:	8b 46 08             	mov    0x8(%esi),%eax
43cdb0:	c1 e0 02             	shl    $0x2,%eax
43cdb3:	50                   	push   %eax
43cdb4:	8b 47 04             	mov    0x4(%edi),%eax
43cdb7:	ff 76 04             	push   0x4(%esi)
43cdba:	8d 04 98             	lea    (%eax,%ebx,4),%eax
43cdbd:	50                   	push   %eax
43cdbe:	e8 ad aa fd ff       	call   0x417870
43cdc3:	83 c4 0c             	add    $0xc,%esp
43cdc6:	8b c3                	mov    %ebx,%eax
43cdc8:	5b                   	pop    %ebx
43cdc9:	5f                   	pop    %edi
43cdca:	5e                   	pop    %esi
43cdcb:	c2 04 00             	ret    $0x4
43cdce:	56                   	push   %esi
43cdcf:	8b 74 24 08          	mov    0x8(%esp),%esi
43cdd3:	57                   	push   %edi
43cdd4:	8b f9                	mov    %ecx,%edi
43cdd6:	3b fe                	cmp    %esi,%edi
43cdd8:	74 1f                	je     0x43cdf9
43cdda:	6a ff                	push   $0xffffffff
43cddc:	ff 76 08             	push   0x8(%esi)
43cddf:	e8 8b fe ff ff       	call   0x43cc6f
43cde4:	8b 46 08             	mov    0x8(%esi),%eax
43cde7:	c1 e0 02             	shl    $0x2,%eax
43cdea:	50                   	push   %eax
43cdeb:	ff 76 04             	push   0x4(%esi)
43cdee:	ff 77 04             	push   0x4(%edi)
43cdf1:	e8 7a aa fd ff       	call   0x417870
43cdf6:	83 c4 0c             	add    $0xc,%esp
43cdf9:	5f                   	pop    %edi
43cdfa:	5e                   	pop    %esi
43cdfb:	c2 04 00             	ret    $0x4
43cdfe:	56                   	push   %esi
43cdff:	8b f1                	mov    %ecx,%esi
43ce01:	8b 46 08             	mov    0x8(%esi),%eax
43ce04:	3b 46 0c             	cmp    0xc(%esi),%eax
43ce07:	74 38                	je     0x43ce41
43ce09:	57                   	push   %edi
43ce0a:	33 ff                	xor    %edi,%edi
43ce0c:	85 c0                	test   %eax,%eax
43ce0e:	74 1e                	je     0x43ce2e
43ce10:	c1 e0 02             	shl    $0x2,%eax
43ce13:	50                   	push   %eax
43ce14:	e8 3c 32 00 00       	call   0x440055
43ce19:	8b f8                	mov    %eax,%edi
43ce1b:	8b 46 08             	mov    0x8(%esi),%eax
43ce1e:	c1 e0 02             	shl    $0x2,%eax
43ce21:	50                   	push   %eax
43ce22:	ff 76 04             	push   0x4(%esi)
43ce25:	57                   	push   %edi
43ce26:	e8 45 aa fd ff       	call   0x417870
43ce2b:	83 c4 10             	add    $0x10,%esp
43ce2e:	ff 76 04             	push   0x4(%esi)
43ce31:	e8 4a 32 00 00       	call   0x440080
43ce36:	8b 46 08             	mov    0x8(%esi),%eax
43ce39:	59                   	pop    %ecx
43ce3a:	89 7e 04             	mov    %edi,0x4(%esi)
43ce3d:	89 46 0c             	mov    %eax,0xc(%esi)
43ce40:	5f                   	pop    %edi
43ce41:	5e                   	pop    %esi
43ce42:	c3                   	ret
43ce43:	56                   	push   %esi
43ce44:	8b 74 24 08          	mov    0x8(%esp),%esi
43ce48:	85 f6                	test   %esi,%esi
43ce4a:	57                   	push   %edi
43ce4b:	8b f9                	mov    %ecx,%edi
43ce4d:	7d 05                	jge    0x43ce54
43ce4f:	e8 f7 85 ff ff       	call   0x43544b
43ce54:	3b 77 08             	cmp    0x8(%edi),%esi
43ce57:	7c 0d                	jl     0x43ce66
43ce59:	6a ff                	push   $0xffffffff
43ce5b:	8d 46 01             	lea    0x1(%esi),%eax
43ce5e:	50                   	push   %eax
43ce5f:	8b cf                	mov    %edi,%ecx
43ce61:	e8 09 fe ff ff       	call   0x43cc6f
43ce66:	8b 47 04             	mov    0x4(%edi),%eax
43ce69:	8b 4c 24 10          	mov    0x10(%esp),%ecx
43ce6d:	5f                   	pop    %edi
43ce6e:	89 0c b0             	mov    %ecx,(%eax,%esi,4)
43ce71:	5e                   	pop    %esi
43ce72:	c2 08 00             	ret    $0x8
43ce75:	55                   	push   %ebp
43ce76:	8b ec                	mov    %esp,%ebp
43ce78:	53                   	push   %ebx
43ce79:	8b 5d 08             	mov    0x8(%ebp),%ebx
43ce7c:	85 db                	test   %ebx,%ebx
43ce7e:	57                   	push   %edi
43ce7f:	8b f9                	mov    %ecx,%edi
43ce81:	7c 7c                	jl     0x43ceff
43ce83:	8b 45 10             	mov    0x10(%ebp),%eax
43ce86:	85 c0                	test   %eax,%eax
43ce88:	7e 75                	jle    0x43ceff
43ce8a:	3b 5f 08             	cmp    0x8(%edi),%ebx
43ce8d:	7c 0c                	jl     0x43ce9b
43ce8f:	6a ff                	push   $0xffffffff
43ce91:	03 c3                	add    %ebx,%eax
43ce93:	50                   	push   %eax
43ce94:	e8 d6 fd ff ff       	call   0x43cc6f
43ce99:	eb 49                	jmp    0x43cee4
43ce9b:	8b 45 10             	mov    0x10(%ebp),%eax
43ce9e:	56                   	push   %esi
43ce9f:	8b 77 08             	mov    0x8(%edi),%esi
43cea2:	6a ff                	push   $0xffffffff
43cea4:	03 c6                	add    %esi,%eax
43cea6:	50                   	push   %eax
43cea7:	e8 c3 fd ff ff       	call   0x43cc6f
43ceac:	8b 47 04             	mov    0x4(%edi),%eax
43ceaf:	2b f3                	sub    %ebx,%esi
43ceb1:	c1 e6 02             	shl    $0x2,%esi
43ceb4:	8d 0c 98             	lea    (%eax,%ebx,4),%ecx
43ceb7:	56                   	push   %esi
43ceb8:	8b 75 10             	mov    0x10(%ebp),%esi
43cebb:	51                   	push   %ecx
43cebc:	8d 0c 33             	lea    (%ebx,%esi,1),%ecx
43cebf:	8d 04 88             	lea    (%eax,%ecx,4),%eax
43cec2:	50                   	push   %eax
43cec3:	e8 58 a1 fd ff       	call   0x417020
43cec8:	8b 4f 04             	mov    0x4(%edi),%ecx
43cecb:	8b c6                	mov    %esi,%eax
43cecd:	c1 e0 02             	shl    $0x2,%eax
43ced0:	50                   	push   %eax
43ced1:	8b c3                	mov    %ebx,%eax
43ced3:	c1 e0 02             	shl    $0x2,%eax
43ced6:	03 c8                	add    %eax,%ecx
43ced8:	6a 00                	push   $0x0
43ceda:	51                   	push   %ecx
43cedb:	e8 60 b3 fd ff       	call   0x418240
43cee0:	83 c4 18             	add    $0x18,%esp
43cee3:	5e                   	pop    %esi
43cee4:	8b 45 10             	mov    0x10(%ebp),%eax
43cee7:	c1 e3 02             	shl    $0x2,%ebx
43ceea:	8b 4f 04             	mov    0x4(%edi),%ecx
43ceed:	8b 55 0c             	mov    0xc(%ebp),%edx
43cef0:	89 14 0b             	mov    %edx,(%ebx,%ecx,1)
43cef3:	83 c3 04             	add    $0x4,%ebx
43cef6:	48                   	dec    %eax
43cef7:	75 f1                	jne    0x43ceea
43cef9:	5f                   	pop    %edi
43cefa:	5b                   	pop    %ebx
43cefb:	5d                   	pop    %ebp
43cefc:	c2 0c 00             	ret    $0xc
43ceff:	e8 47 85 ff ff       	call   0x43544b
43cf04:	cc                   	int3
43cf05:	8b 54 24 04          	mov    0x4(%esp),%edx
43cf09:	85 d2                	test   %edx,%edx
43cf0b:	53                   	push   %ebx
43cf0c:	56                   	push   %esi
43cf0d:	57                   	push   %edi
43cf0e:	8b f1                	mov    %ecx,%esi
43cf10:	7c 38                	jl     0x43cf4a
43cf12:	8b 5c 24 14          	mov    0x14(%esp),%ebx
43cf16:	85 db                	test   %ebx,%ebx
43cf18:	7c 30                	jl     0x43cf4a
43cf1a:	8b 46 08             	mov    0x8(%esi),%eax
43cf1d:	8d 3c 1a             	lea    (%edx,%ebx,1),%edi
43cf20:	3b f8                	cmp    %eax,%edi
43cf22:	7f 26                	jg     0x43cf4a
43cf24:	2b c2                	sub    %edx,%eax
43cf26:	2b c3                	sub    %ebx,%eax
43cf28:	74 17                	je     0x43cf41
43cf2a:	8b 4e 04             	mov    0x4(%esi),%ecx
43cf2d:	c1 e0 02             	shl    $0x2,%eax
43cf30:	50                   	push   %eax
43cf31:	8d 04 b9             	lea    (%ecx,%edi,4),%eax
43cf34:	50                   	push   %eax
43cf35:	8d 04 91             	lea    (%ecx,%edx,4),%eax
43cf38:	50                   	push   %eax
43cf39:	e8 e2 a0 fd ff       	call   0x417020
43cf3e:	83 c4 0c             	add    $0xc,%esp
43cf41:	29 5e 08             	sub    %ebx,0x8(%esi)
43cf44:	5f                   	pop    %edi
43cf45:	5e                   	pop    %esi
43cf46:	5b                   	pop    %ebx
43cf47:	c2 08 00             	ret    $0x8
43cf4a:	e8 fc 84 ff ff       	call   0x43544b
43cf4f:	cc                   	int3
43cf50:	8b c1                	mov    %ecx,%eax
43cf52:	33 c9                	xor    %ecx,%ecx
43cf54:	c7 00 6c f3 48 00    	movl   $0x48f36c,(%eax)
43cf5a:	89 48 04             	mov    %ecx,0x4(%eax)
43cf5d:	89 48 10             	mov    %ecx,0x10(%eax)
43cf60:	89 48 0c             	mov    %ecx,0xc(%eax)
43cf63:	89 48 08             	mov    %ecx,0x8(%eax)
43cf66:	c3                   	ret
43cf67:	ff 71 04             	push   0x4(%ecx)
43cf6a:	c7 01 6c f3 48 00    	movl   $0x48f36c,(%ecx)
43cf70:	e8 0b 31 00 00       	call   0x440080
43cf75:	59                   	pop    %ecx
43cf76:	c3                   	ret
43cf77:	55                   	push   %ebp
43cf78:	8b ec                	mov    %esp,%ebp
43cf7a:	51                   	push   %ecx
43cf7b:	53                   	push   %ebx
43cf7c:	56                   	push   %esi
43cf7d:	8b 75 0c             	mov    0xc(%ebp),%esi
43cf80:	57                   	push   %edi
43cf81:	33 ff                	xor    %edi,%edi
43cf83:	3b f7                	cmp    %edi,%esi
43cf85:	89 4d fc             	mov    %ecx,-0x4(%ebp)
43cf88:	74 46                	je     0x43cfd0
43cf8a:	8b 5d 08             	mov    0x8(%ebp),%ebx
43cf8d:	3b df                	cmp    %edi,%ebx
43cf8f:	7c 3f                	jl     0x43cfd0
43cf91:	39 7e 08             	cmp    %edi,0x8(%esi)
43cf94:	7e 33                	jle    0x43cfc9
43cf96:	8b 46 08             	mov    0x8(%esi),%eax
43cf99:	3b c7                	cmp    %edi,%eax
43cf9b:	7e 33                	jle    0x43cfd0
43cf9d:	50                   	push   %eax
43cf9e:	8b 46 04             	mov    0x4(%esi),%eax
43cfa1:	ff 30                	push   (%eax)
43cfa3:	53                   	push   %ebx
43cfa4:	e8 cc fe ff ff       	call   0x43ce75
43cfa9:	39 7e 08             	cmp    %edi,0x8(%esi)
43cfac:	7e 1b                	jle    0x43cfc9
43cfae:	57                   	push   %edi
43cfaf:	8b ce                	mov    %esi,%ecx
43cfb1:	e8 40 83 fd ff       	call   0x4152f6
43cfb6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43cfb9:	50                   	push   %eax
43cfba:	8d 04 1f             	lea    (%edi,%ebx,1),%eax
43cfbd:	50                   	push   %eax
43cfbe:	e8 4f 83 fd ff       	call   0x415312
43cfc3:	47                   	inc    %edi
43cfc4:	3b 7e 08             	cmp    0x8(%esi),%edi
43cfc7:	7c e5                	jl     0x43cfae
43cfc9:	5f                   	pop    %edi
43cfca:	5e                   	pop    %esi
43cfcb:	5b                   	pop    %ebx
43cfcc:	c9                   	leave
43cfcd:	c2 08 00             	ret    $0x8
43cfd0:	e8 76 84 ff ff       	call   0x43544b
43cfd5:	cc                   	int3
43cfd6:	56                   	push   %esi
43cfd7:	8b f1                	mov    %ecx,%esi
43cfd9:	e8 89 ff ff ff       	call   0x43cf67
43cfde:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
43cfe3:	74 07                	je     0x43cfec
43cfe5:	56                   	push   %esi
43cfe6:	e8 95 30 00 00       	call   0x440080
43cfeb:	59                   	pop    %ecx
43cfec:	8b c6                	mov    %esi,%eax
43cfee:	5e                   	pop    %esi
43cfef:	c2 04 00             	ret    $0x4
43cff2:	55                   	push   %ebp