43f7d4:	89 0c 16             	mov    %ecx,(%esi,%edx,1)
43f7d7:	83 07 04             	addl   $0x4,(%edi)
43f7da:	5f                   	pop    %edi
43f7db:	5e                   	pop    %esi
43f7dc:	5d                   	pop    %ebp
43f7dd:	c2 0c 00             	ret    $0xc
43f7e0:	55                   	push   %ebp
43f7e1:	8b ec                	mov    %esp,%ebp
43f7e3:	51                   	push   %ecx
43f7e4:	53                   	push   %ebx
43f7e5:	56                   	push   %esi
43f7e6:	57                   	push   %edi
43f7e7:	ff 75 10             	push   0x10(%ebp)
43f7ea:	ff 15 f8 b0 44 00    	call   *0x44b0f8
43f7f0:	8b 75 0c             	mov    0xc(%ebp),%esi
43f7f3:	89 45 fc             	mov    %eax,-0x4(%ebp)
43f7f6:	8d 3c 00             	lea    (%eax,%eax,1),%edi
43f7f9:	8b 0e                	mov    (%esi),%ecx
43f7fb:	83 c1 04             	add    $0x4,%ecx
43f7fe:	03 cf                	add    %edi,%ecx
43f800:	51                   	push   %ecx
43f801:	ff 75 08             	push   0x8(%ebp)
43f804:	e8 59 fc ff ff       	call   0x43f462
43f809:	8b d8                	mov    %eax,%ebx
43f80b:	85 db                	test   %ebx,%ebx
43f80d:	78 27                	js     0x43f836
43f80f:	8b 45 08             	mov    0x8(%ebp),%eax
43f812:	8b 0e                	mov    (%esi),%ecx
43f814:	57                   	push   %edi
43f815:	ff 75 10             	push   0x10(%ebp)
43f818:	8b 10                	mov    (%eax),%edx
43f81a:	8b 45 fc             	mov    -0x4(%ebp),%eax
43f81d:	57                   	push   %edi
43f81e:	89 04 0a             	mov    %eax,(%edx,%ecx,1)
43f821:	8b 45 08             	mov    0x8(%ebp),%eax
43f824:	83 06 04             	addl   $0x4,(%esi)
43f827:	8b 00                	mov    (%eax),%eax
43f829:	03 06                	add    (%esi),%eax
43f82b:	50                   	push   %eax
43f82c:	e8 33 1e fe ff       	call   0x421664
43f831:	83 c4 10             	add    $0x10,%esp
43f834:	01 3e                	add    %edi,(%esi)
43f836:	5f                   	pop    %edi
43f837:	5e                   	pop    %esi
43f838:	8b c3                	mov    %ebx,%eax
43f83a:	5b                   	pop    %ebx
43f83b:	8b e5                	mov    %ebp,%esp
43f83d:	5d                   	pop    %ebp
43f83e:	c2 0c 00             	ret    $0xc
43f841:	55                   	push   %ebp
43f842:	8b ec                	mov    %esp,%ebp
43f844:	53                   	push   %ebx
43f845:	56                   	push   %esi
43f846:	57                   	push   %edi
43f847:	ff 75 10             	push   0x10(%ebp)
43f84a:	ff 15 f4 b0 44 00    	call   *0x44b0f4
43f850:	8b 75 0c             	mov    0xc(%ebp),%esi
43f853:	8b f8                	mov    %eax,%edi
43f855:	8b 0e                	mov    (%esi),%ecx
43f857:	83 c1 04             	add    $0x4,%ecx
43f85a:	03 cf                	add    %edi,%ecx
43f85c:	51                   	push   %ecx
43f85d:	ff 75 08             	push   0x8(%ebp)
43f860:	e8 fd fb ff ff       	call   0x43f462
43f865:	8b d8                	mov    %eax,%ebx
43f867:	85 db                	test   %ebx,%ebx
43f869:	78 21                	js     0x43f88c
43f86b:	8b 45 08             	mov    0x8(%ebp),%eax
43f86e:	8b 0e                	mov    (%esi),%ecx
43f870:	57                   	push   %edi
43f871:	ff 75 10             	push   0x10(%ebp)
43f874:	8b 10                	mov    (%eax),%edx
43f876:	57                   	push   %edi
43f877:	89 3c 0a             	mov    %edi,(%edx,%ecx,1)
43f87a:	83 06 04             	addl   $0x4,(%esi)
43f87d:	8b 00                	mov    (%eax),%eax
43f87f:	03 06                	add    (%esi),%eax
43f881:	50                   	push   %eax
43f882:	e8 dd 1d fe ff       	call   0x421664
43f887:	83 c4 10             	add    $0x10,%esp
43f88a:	01 3e                	add    %edi,(%esi)
43f88c:	5f                   	pop    %edi
43f88d:	5e                   	pop    %esi
43f88e:	8b c3                	mov    %ebx,%eax
43f890:	5b                   	pop    %ebx
43f891:	5d                   	pop    %ebp
43f892:	c2 0c 00             	ret    $0xc
43f895:	55                   	push   %ebp
43f896:	8b ec                	mov    %esp,%ebp
43f898:	f7 45 0c 0f 00 00 00 	testl  $0xf,0xc(%ebp)
43f89f:	b9 05 40 00 80       	mov    $0x80004005,%ecx
43f8a4:	74 07                	je     0x43f8ad
43f8a6:	b9 57 00 07 80       	mov    $0x80070057,%ecx
43f8ab:	eb 48                	jmp    0x43f8f5
43f8ad:	a1 f4 b5 46 00       	mov    0x46b5f4,%eax
43f8b2:	85 c0                	test   %eax,%eax
43f8b4:	74 0f                	je     0x43f8c5
43f8b6:	ff 75 10             	push   0x10(%ebp)
43f8b9:	ff 75 0c             	push   0xc(%ebp)
43f8bc:	ff 75 08             	push   0x8(%ebp)
43f8bf:	ff d0                	call   *%eax
43f8c1:	8b c8                	mov    %eax,%ecx
43f8c3:	eb 30                	jmp    0x43f8f5
43f8c5:	a1 fc b5 46 00       	mov    0x46b5fc,%eax
43f8ca:	85 c0                	test   %eax,%eax
43f8cc:	74 27                	je     0x43f8f5
43f8ce:	ff 75 10             	push   0x10(%ebp)
43f8d1:	ff 75 0c             	push   0xc(%ebp)
43f8d4:	ff 75 08             	push   0x8(%ebp)
43f8d7:	ff d0                	call   *%eax
43f8d9:	85 c0                	test   %eax,%eax
43f8db:	74 04                	je     0x43f8e1
43f8dd:	33 c9                	xor    %ecx,%ecx
43f8df:	eb 14                	jmp    0x43f8f5
43f8e1:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43f8e7:	0f b7 c8             	movzwl %ax,%ecx
43f8ea:	81 c9 00 00 07 80    	or     $0x80070000,%ecx
43f8f0:	85 c0                	test   %eax,%eax
43f8f2:	0f 4e c8             	cmovle %eax,%ecx
43f8f5:	8b c1                	mov    %ecx,%eax
43f8f7:	5d                   	pop    %ebp
43f8f8:	c2 0c 00             	ret    $0xc
43f8fb:	55                   	push   %ebp
43f8fc:	8b ec                	mov    %esp,%ebp
43f8fe:	f7 45 0c 0f 00 00 00 	testl  $0xf,0xc(%ebp)
43f905:	b9 05 40 00 80       	mov    $0x80004005,%ecx
43f90a:	74 07                	je     0x43f913
43f90c:	b9 57 00 07 80       	mov    $0x80070057,%ecx
43f911:	eb 48                	jmp    0x43f95b
43f913:	a1 f0 b5 46 00       	mov    0x46b5f0,%eax
43f918:	85 c0                	test   %eax,%eax
43f91a:	74 0f                	je     0x43f92b
43f91c:	ff 75 10             	push   0x10(%ebp)
43f91f:	ff 75 0c             	push   0xc(%ebp)
43f922:	ff 75 08             	push   0x8(%ebp)
43f925:	ff d0                	call   *%eax
43f927:	8b c8                	mov    %eax,%ecx
43f929:	eb 30                	jmp    0x43f95b
43f92b:	a1 f8 b5 46 00       	mov    0x46b5f8,%eax
43f930:	85 c0                	test   %eax,%eax
43f932:	74 27                	je     0x43f95b
43f934:	ff 75 10             	push   0x10(%ebp)
43f937:	ff 75 0c             	push   0xc(%ebp)
43f93a:	ff 75 08             	push   0x8(%ebp)
43f93d:	ff d0                	call   *%eax
43f93f:	85 c0                	test   %eax,%eax
43f941:	74 04                	je     0x43f947
43f943:	33 c9                	xor    %ecx,%ecx
43f945:	eb 14                	jmp    0x43f95b
43f947:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43f94d:	0f b7 c8             	movzwl %ax,%ecx
43f950:	81 c9 00 00 07 80    	or     $0x80070000,%ecx
43f956:	85 c0                	test   %eax,%eax
43f958:	0f 4e c8             	cmovle %eax,%ecx
43f95b:	8b c1                	mov    %ecx,%eax
43f95d:	5d                   	pop    %ebp
43f95e:	c2 0c 00             	ret    $0xc
43f961:	55                   	push   %ebp
43f962:	8b ec                	mov    %esp,%ebp
43f964:	b8 14 10 00 00       	mov    $0x1014,%eax
43f969:	e8 92 a5 00 00       	call   0x449f00
43f96e:	a1 08 a0 46 00       	mov    0x46a008,%eax
43f973:	33 c5                	xor    %ebp,%eax
43f975:	89 45 fc             	mov    %eax,-0x4(%ebp)
43f978:	8b 45 14             	mov    0x14(%ebp),%eax
43f97b:	53                   	push   %ebx
43f97c:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
43f97f:	56                   	push   %esi
43f980:	57                   	push   %edi
43f981:	8b 7d 08             	mov    0x8(%ebp),%edi
43f984:	89 85 ec ef ff ff    	mov    %eax,-0x1014(%ebp)
43f98a:	33 c0                	xor    %eax,%eax
43f98c:	68 00 10 00 00       	push   $0x1000
43f991:	50                   	push   %eax
43f992:	8b f0                	mov    %eax,%esi
43f994:	89 85 f0 ef ff ff    	mov    %eax,-0x1010(%ebp)
43f99a:	89 85 f8 ef ff ff    	mov    %eax,-0x1008(%ebp)
43f9a0:	89 85 f4 ef ff ff    	mov    %eax,-0x100c(%ebp)
43f9a6:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
43f9ac:	50                   	push   %eax
43f9ad:	e8 be fc fe ff       	call   0x42f670
43f9b2:	83 c4 0c             	add    $0xc,%esp
43f9b5:	8d 85 f0 ef ff ff    	lea    -0x1010(%ebp),%eax
43f9bb:	68 40 00 00 f0       	push   $0xf0000040
43f9c0:	ff 75 0c             	push   0xc(%ebp)
43f9c3:	56                   	push   %esi
43f9c4:	56                   	push   %esi
43f9c5:	50                   	push   %eax
43f9c6:	ff 15 a0 b0 44 00    	call   *0x44b0a0
43f9cc:	85 c0                	test   %eax,%eax
43f9ce:	75 29                	jne    0x43f9f9
43f9d0:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43f9d6:	0f b7 f0             	movzwl %ax,%esi
43f9d9:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43f9df:	85 c0                	test   %eax,%eax
43f9e1:	0f 4e f0             	cmovle %eax,%esi
43f9e4:	b8 05 40 00 80       	mov    $0x80004005,%eax
43f9e9:	85 f6                	test   %esi,%esi
43f9eb:	0f 49 f0             	cmovns %eax,%esi
43f9ee:	56                   	push   %esi
43f9ef:	68 d3 00 00 00       	push   $0xd3
43f9f4:	e9 b7 00 00 00       	jmp    0x43fab0
43f9f9:	8d 85 f8 ef ff ff    	lea    -0x1008(%ebp),%eax
43f9ff:	50                   	push   %eax
43fa00:	6a 00                	push   $0x0
43fa02:	6a 00                	push   $0x0
43fa04:	ff 75 10             	push   0x10(%ebp)
43fa07:	ff b5 f0 ef ff ff    	push   -0x1010(%ebp)
43fa0d:	ff 15 94 b0 44 00    	call   *0x44b094
43fa13:	85 c0                	test   %eax,%eax
43fa15:	75 55                	jne    0x43fa6c
43fa17:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fa1d:	0f b7 f0             	movzwl %ax,%esi
43fa20:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fa26:	85 c0                	test   %eax,%eax
43fa28:	0f 4e f0             	cmovle %eax,%esi
43fa2b:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fa30:	85 f6                	test   %esi,%esi
43fa32:	0f 49 f0             	cmovns %eax,%esi
43fa35:	56                   	push   %esi
43fa36:	68 d9 00 00 00       	push   $0xd9
43fa3b:	eb 73                	jmp    0x43fab0
43fa3d:	6a 00                	push   $0x0
43fa3f:	39 b5 f4 ef ff ff    	cmp    %esi,-0x100c(%ebp)
43fa45:	0f 84 d6 00 00 00    	je     0x43fb21
43fa4b:	ff b5 f4 ef ff ff    	push   -0x100c(%ebp)
43fa51:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
43fa57:	50                   	push   %eax
43fa58:	ff b5 f8 ef ff ff    	push   -0x1008(%ebp)
43fa5e:	ff 15 90 b0 44 00    	call   *0x44b090
43fa64:	85 c0                	test   %eax,%eax
43fa66:	0f 84 8f 00 00 00    	je     0x43fafb
43fa6c:	6a 00                	push   $0x0
43fa6e:	8d 85 f4 ef ff ff    	lea    -0x100c(%ebp),%eax
43fa74:	50                   	push   %eax
43fa75:	68 00 10 00 00       	push   $0x1000
43fa7a:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
43fa80:	50                   	push   %eax
43fa81:	57                   	push   %edi
43fa82:	ff 15 ec b1 44 00    	call   *0x44b1ec
43fa88:	85 c0                	test   %eax,%eax
43fa8a:	75 b1                	jne    0x43fa3d
43fa8c:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fa92:	0f b7 f0             	movzwl %ax,%esi
43fa95:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fa9b:	85 c0                	test   %eax,%eax
43fa9d:	0f 4e f0             	cmovle %eax,%esi
43faa0:	b8 05 40 00 80       	mov    $0x80004005,%eax
43faa5:	85 f6                	test   %esi,%esi
43faa7:	0f 49 f0             	cmovns %eax,%esi
43faaa:	56                   	push   %esi
43faab:	68 e1 00 00 00       	push   $0xe1
43fab0:	68 10 62 46 00       	push   $0x466210
43fab5:	e8 19 3d fc ff       	call   0x4037d3
43faba:	83 bd f8 ef ff ff 00 	cmpl   $0x0,-0x1008(%ebp)
43fac1:	74 0c                	je     0x43facf
43fac3:	ff b5 f8 ef ff ff    	push   -0x1008(%ebp)
43fac9:	ff 15 8c b0 44 00    	call   *0x44b08c
43facf:	83 bd f0 ef ff ff 00 	cmpl   $0x0,-0x1010(%ebp)
43fad6:	74 0e                	je     0x43fae6
43fad8:	6a 00                	push   $0x0
43fada:	ff b5 f0 ef ff ff    	push   -0x1010(%ebp)
43fae0:	ff 15 9c b0 44 00    	call   *0x44b09c
43fae6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43fae9:	8b c6                	mov    %esi,%eax
43faeb:	5f                   	pop    %edi
43faec:	5e                   	pop    %esi
43faed:	33 cd                	xor    %ebp,%ecx
43faef:	5b                   	pop    %ebx
43faf0:	e8 41 e3 fe ff       	call   0x42de36
43faf5:	8b e5                	mov    %ebp,%esp
43faf7:	5d                   	pop    %ebp
43faf8:	c2 18 00             	ret    $0x18
43fafb:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fb01:	0f b7 f0             	movzwl %ax,%esi
43fb04:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fb0a:	85 c0                	test   %eax,%eax
43fb0c:	0f 4e f0             	cmovle %eax,%esi
43fb0f:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fb14:	85 f6                	test   %esi,%esi
43fb16:	0f 49 f0             	cmovns %eax,%esi
43fb19:	56                   	push   %esi
43fb1a:	68 ec 00 00 00       	push   $0xec
43fb1f:	eb 8f                	jmp    0x43fab0
43fb21:	8d 45 18             	lea    0x18(%ebp),%eax
43fb24:	50                   	push   %eax
43fb25:	ff b5 ec ef ff ff    	push   -0x1014(%ebp)
43fb2b:	6a 02                	push   $0x2
43fb2d:	ff b5 f8 ef ff ff    	push   -0x1008(%ebp)
43fb33:	ff 15 98 b0 44 00    	call   *0x44b098
43fb39:	85 c0                	test   %eax,%eax
43fb3b:	75 29                	jne    0x43fb66
43fb3d:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fb43:	0f b7 f0             	movzwl %ax,%esi
43fb46:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fb4c:	85 c0                	test   %eax,%eax
43fb4e:	0f 4e f0             	cmovle %eax,%esi
43fb51:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fb56:	85 f6                	test   %esi,%esi
43fb58:	0f 49 f0             	cmovns %eax,%esi
43fb5b:	56                   	push   %esi
43fb5c:	68 f3 00 00 00       	push   $0xf3
43fb61:	e9 4a ff ff ff       	jmp    0x43fab0
43fb66:	85 db                	test   %ebx,%ebx
43fb68:	0f 84 4c ff ff ff    	je     0x43faba
43fb6e:	6a 01                	push   $0x1
43fb70:	53                   	push   %ebx
43fb71:	6a 00                	push   $0x0
43fb73:	6a 00                	push   $0x0
43fb75:	57                   	push   %edi
43fb76:	ff 15 f0 b1 44 00    	call   *0x44b1f0
43fb7c:	85 c0                	test   %eax,%eax
43fb7e:	0f 85 36 ff ff ff    	jne    0x43faba
43fb84:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fb8a:	0f b7 f0             	movzwl %ax,%esi
43fb8d:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fb93:	85 c0                	test   %eax,%eax
43fb95:	0f 4e f0             	cmovle %eax,%esi
43fb98:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fb9d:	85 f6                	test   %esi,%esi
43fb9f:	0f 49 f0             	cmovns %eax,%esi
43fba2:	56                   	push   %esi
43fba3:	68 fa 00 00 00       	push   $0xfa
43fba8:	e9 03 ff ff ff       	jmp    0x43fab0
43fbad:	56                   	push   %esi
43fbae:	57                   	push   %edi
43fbaf:	68 e8 b5 46 00       	push   $0x46b5e8
43fbb4:	68 a0 61 46 00       	push   $0x4661a0
43fbb9:	e8 18 3c fc ff       	call   0x4037d6
43fbbe:	8b 3d dc b0 44 00    	mov    0x44b0dc,%edi
43fbc4:	8b f0                	mov    %eax,%esi
43fbc6:	85 f6                	test   %esi,%esi
43fbc8:	78 26                	js     0x43fbf0
43fbca:	68 bc 61 46 00       	push   $0x4661bc
43fbcf:	ff 35 e8 b5 46 00    	push   0x46b5e8
43fbd5:	ff d7                	call   *%edi
43fbd7:	68 d0 61 46 00       	push   $0x4661d0
43fbdc:	ff 35 e8 b5 46 00    	push   0x46b5e8
43fbe2:	a3 f0 b5 46 00       	mov    %eax,0x46b5f0
43fbe7:	ff d7                	call   *%edi
43fbe9:	a3 f4 b5 46 00       	mov    %eax,0x46b5f4
43fbee:	eb 05                	jmp    0x43fbf5
43fbf0:	a1 f4 b5 46 00       	mov    0x46b5f4,%eax
43fbf5:	83 3d f0 b5 46 00 00 	cmpl   $0x0,0x46b5f0
43fbfc:	74 08                	je     0x43fc06
43fbfe:	85 c0                	test   %eax,%eax
43fc00:	0f 85 a7 00 00 00    	jne    0x43fcad
43fc06:	68 ec b5 46 00       	push   $0x46b5ec
43fc0b:	68 e4 61 46 00       	push   $0x4661e4
43fc10:	e8 c1 3b fc ff       	call   0x4037d6