41bc1a:	8b f0                	mov    %eax,%esi
41bc1c:	85 c0                	test   %eax,%eax
41bc1e:	74 0b                	je     0x41bc2b
41bc20:	83 f8 ff             	cmp    $0xffffffff,%eax
41bc23:	73 06                	jae    0x41bc2b
41bc25:	8d 70 ff             	lea    -0x1(%eax),%esi
41bc28:	89 77 04             	mov    %esi,0x4(%edi)
41bc2b:	8d 4d fc             	lea    -0x4(%ebp),%ecx
41bc2e:	e8 ca 1f 07 00       	call   0x48dbfd
41bc33:	f7 de                	neg    %esi
41bc35:	1b f6                	sbb    %esi,%esi
41bc37:	f7 d6                	not    %esi
41bc39:	23 f7                	and    %edi,%esi
41bc3b:	5f                   	pop    %edi
41bc3c:	8b c6                	mov    %esi,%eax
41bc3e:	5e                   	pop    %esi
41bc3f:	c9                   	leave
41bc40:	c3                   	ret
41bc41:	cc                   	int3
41bc42:	cc                   	int3
41bc43:	cc                   	int3
41bc44:	cc                   	int3
41bc45:	cc                   	int3
41bc46:	cc                   	int3
41bc47:	cc                   	int3
41bc48:	cc                   	int3
41bc49:	cc                   	int3
41bc4a:	cc                   	int3
41bc4b:	cc                   	int3
41bc4c:	cc                   	int3
41bc4d:	cc                   	int3
41bc4e:	cc                   	int3
41bc4f:	cc                   	int3
41bc50:	8b ff                	mov    %edi,%edi
41bc52:	55                   	push   %ebp
41bc53:	8b ec                	mov    %esp,%ebp
41bc55:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41bc59:	56                   	push   %esi
41bc5a:	8b f1                	mov    %ecx,%esi
41bc5c:	c7 06 7c 11 40 00    	movl   $0x40117c,(%esi)
41bc62:	74 08                	je     0x41bc6c
41bc64:	56                   	push   %esi
41bc65:	ff 15 10 74 4a 00    	call   *0x4a7410
41bc6b:	59                   	pop    %ecx
41bc6c:	8b c6                	mov    %esi,%eax
41bc6e:	5e                   	pop    %esi
41bc6f:	5d                   	pop    %ebp
41bc70:	c2 04 00             	ret    $0x4
41bc73:	8b 09                	mov    (%ecx),%ecx
41bc75:	85 c9                	test   %ecx,%ecx
41bc77:	74 21                	je     0x41bc9a
41bc79:	57                   	push   %edi
41bc7a:	e8 84 ff ff ff       	call   0x41bc03
41bc7f:	8b f8                	mov    %eax,%edi
41bc81:	85 ff                	test   %edi,%edi
41bc83:	74 14                	je     0x41bc99
41bc85:	8b 0f                	mov    (%edi),%ecx
41bc87:	56                   	push   %esi
41bc88:	6a 01                	push   $0x1
41bc8a:	8b 31                	mov    (%ecx),%esi
41bc8c:	8b ce                	mov    %esi,%ecx
41bc8e:	ff 15 2c 81 4a 00    	call   *0x4a812c
41bc94:	8b cf                	mov    %edi,%ecx
41bc96:	ff d6                	call   *%esi
41bc98:	5e                   	pop    %esi
41bc99:	5f                   	pop    %edi
41bc9a:	c3                   	ret
41bc9b:	8b ff                	mov    %edi,%edi
41bc9d:	56                   	push   %esi
41bc9e:	57                   	push   %edi
41bc9f:	8b f9                	mov    %ecx,%edi
41bca1:	8b 77 38             	mov    0x38(%edi),%esi
41bca4:	c7 07 44 11 40 00    	movl   $0x401144,(%edi)
41bcaa:	85 f6                	test   %esi,%esi
41bcac:	74 0f                	je     0x41bcbd
41bcae:	8b ce                	mov    %esi,%ecx
41bcb0:	e8 be ff ff ff       	call   0x41bc73
41bcb5:	56                   	push   %esi
41bcb6:	ff 15 10 74 4a 00    	call   *0x4a7410
41bcbc:	59                   	pop    %ecx
41bcbd:	8d 4f 04             	lea    0x4(%edi),%ecx
41bcc0:	5f                   	pop    %edi
41bcc1:	5e                   	pop    %esi
41bcc2:	e9 60 1f 07 00       	jmp    0x48dc27
41bcc7:	cc                   	int3
41bcc8:	cc                   	int3
41bcc9:	cc                   	int3
41bcca:	cc                   	int3
41bccb:	cc                   	int3
41bccc:	cc                   	int3
41bccd:	cc                   	int3
41bcce:	cc                   	int3
41bccf:	cc                   	int3
41bcd0:	8b ff                	mov    %edi,%edi
41bcd2:	55                   	push   %ebp
41bcd3:	8b ec                	mov    %esp,%ebp
41bcd5:	6a ff                	push   $0xffffffff
41bcd7:	68 34 11 49 00       	push   $0x491134
41bcdc:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41bce2:	50                   	push   %eax
41bce3:	56                   	push   %esi
41bce4:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41bce9:	33 c5                	xor    %ebp,%eax
41bceb:	50                   	push   %eax
41bcec:	8d 45 f4             	lea    -0xc(%ebp),%eax
41bcef:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41bcf5:	8d 71 f8             	lea    -0x8(%ecx),%esi
41bcf8:	8b 06                	mov    (%esi),%eax
41bcfa:	8b 40 04             	mov    0x4(%eax),%eax
41bcfd:	c7 44 08 f8 bc 11 40 	movl   $0x4011bc,-0x8(%eax,%ecx,1)
41bd04:	00
41bd05:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41bd09:	51                   	push   %ecx
41bd0a:	c7 01 04 12 40 00    	movl   $0x401204,(%ecx)
41bd10:	e8 e4 1d 07 00       	call   0x48daf9
41bd15:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41bd19:	59                   	pop    %ecx
41bd1a:	74 08                	je     0x41bd24
41bd1c:	56                   	push   %esi
41bd1d:	ff 15 10 74 4a 00    	call   *0x4a7410
41bd23:	59                   	pop    %ecx
41bd24:	8b c6                	mov    %esi,%eax
41bd26:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41bd29:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41bd30:	59                   	pop    %ecx
41bd31:	5e                   	pop    %esi
41bd32:	c9                   	leave
41bd33:	c2 04 00             	ret    $0x4
41bd36:	8b 41 f8             	mov    -0x8(%ecx),%eax
41bd39:	8b 40 04             	mov    0x4(%eax),%eax
41bd3c:	c7 44 08 f8 bc 11 40 	movl   $0x4011bc,-0x8(%eax,%ecx,1)
41bd43:	00
41bd44:	c3                   	ret
41bd45:	cc                   	int3
41bd46:	cc                   	int3
41bd47:	cc                   	int3
41bd48:	cc                   	int3
41bd49:	cc                   	int3
41bd4a:	cc                   	int3
41bd4b:	cc                   	int3
41bd4c:	cc                   	int3
41bd4d:	cc                   	int3
41bd4e:	cc                   	int3
41bd4f:	cc                   	int3
41bd50:	8b ff                	mov    %edi,%edi
41bd52:	55                   	push   %ebp
41bd53:	8b ec                	mov    %esp,%ebp
41bd55:	6a ff                	push   $0xffffffff
41bd57:	68 34 11 49 00       	push   $0x491134
41bd5c:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41bd62:	50                   	push   %eax
41bd63:	56                   	push   %esi
41bd64:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41bd69:	33 c5                	xor    %ebp,%eax
41bd6b:	50                   	push   %eax
41bd6c:	8d 45 f4             	lea    -0xc(%ebp),%eax
41bd6f:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41bd75:	8d 71 fc             	lea    -0x4(%ecx),%esi
41bd78:	8b 06                	mov    (%esi),%eax
41bd7a:	8b 40 04             	mov    0x4(%eax),%eax
41bd7d:	c7 44 08 fc cc 11 40 	movl   $0x4011cc,-0x4(%eax,%ecx,1)
41bd84:	00
41bd85:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41bd89:	51                   	push   %ecx
41bd8a:	c7 01 04 12 40 00    	movl   $0x401204,(%ecx)
41bd90:	e8 64 1d 07 00       	call   0x48daf9
41bd95:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41bd99:	59                   	pop    %ecx
41bd9a:	74 08                	je     0x41bda4
41bd9c:	56                   	push   %esi
41bd9d:	ff 15 10 74 4a 00    	call   *0x4a7410
41bda3:	59                   	pop    %ecx
41bda4:	8b c6                	mov    %esi,%eax
41bda6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41bda9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41bdb0:	59                   	pop    %ecx
41bdb1:	5e                   	pop    %esi
41bdb2:	c9                   	leave
41bdb3:	c2 04 00             	ret    $0x4
41bdb6:	8b 41 fc             	mov    -0x4(%ecx),%eax
41bdb9:	8b 40 04             	mov    0x4(%eax),%eax
41bdbc:	c7 44 08 fc cc 11 40 	movl   $0x4011cc,-0x4(%eax,%ecx,1)
41bdc3:	00
41bdc4:	c3                   	ret
41bdc5:	8b ff                	mov    %edi,%edi
41bdc7:	55                   	push   %ebp
41bdc8:	8b ec                	mov    %esp,%ebp
41bdca:	83 79 18 10          	cmpl   $0x10,0x18(%ecx)
41bdce:	8d 51 04             	lea    0x4(%ecx),%edx
41bdd1:	72 04                	jb     0x41bdd7
41bdd3:	8b 02                	mov    (%edx),%eax
41bdd5:	eb 02                	jmp    0x41bdd9
41bdd7:	8b c2                	mov    %edx,%eax
41bdd9:	39 45 08             	cmp    %eax,0x8(%ebp)
41bddc:	72 16                	jb     0x41bdf4
41bdde:	83 79 18 10          	cmpl   $0x10,0x18(%ecx)
41bde2:	72 02                	jb     0x41bde6
41bde4:	8b 12                	mov    (%edx),%edx
41bde6:	8b 41 14             	mov    0x14(%ecx),%eax
41bde9:	03 c2                	add    %edx,%eax
41bdeb:	3b 45 08             	cmp    0x8(%ebp),%eax
41bdee:	76 04                	jbe    0x41bdf4
41bdf0:	b0 01                	mov    $0x1,%al
41bdf2:	eb 02                	jmp    0x41bdf6
41bdf4:	32 c0                	xor    %al,%al
41bdf6:	5d                   	pop    %ebp
41bdf7:	c2 04 00             	ret    $0x4
41bdfa:	8b ff                	mov    %edi,%edi
41bdfc:	55                   	push   %ebp
41bdfd:	8b ec                	mov    %esp,%ebp
41bdff:	56                   	push   %esi
41be00:	57                   	push   %edi
41be01:	8b 7d 08             	mov    0x8(%ebp),%edi
41be04:	8b f1                	mov    %ecx,%esi
41be06:	57                   	push   %edi
41be07:	e8 b9 ff ff ff       	call   0x41bdc5
41be0c:	84 c0                	test   %al,%al
41be0e:	74 1b                	je     0x41be2b
41be10:	83 7e 18 10          	cmpl   $0x10,0x18(%esi)
41be14:	8d 46 04             	lea    0x4(%esi),%eax
41be17:	72 02                	jb     0x41be1b
41be19:	8b 00                	mov    (%eax),%eax
41be1b:	ff 75 0c             	push   0xc(%ebp)
41be1e:	2b f8                	sub    %eax,%edi
41be20:	8b ce                	mov    %esi,%ecx
41be22:	57                   	push   %edi
41be23:	56                   	push   %esi
41be24:	e8 b7 03 00 00       	call   0x41c1e0
41be29:	eb 38                	jmp    0x41be63
41be2b:	6a 00                	push   $0x0
41be2d:	ff 75 0c             	push   0xc(%ebp)
41be30:	8b ce                	mov    %esi,%ecx
41be32:	e8 40 03 00 00       	call   0x41c177
41be37:	84 c0                	test   %al,%al
41be39:	74 26                	je     0x41be61
41be3b:	83 7e 18 10          	cmpl   $0x10,0x18(%esi)
41be3f:	8d 46 04             	lea    0x4(%esi),%eax
41be42:	72 02                	jb     0x41be46
41be44:	8b 00                	mov    (%eax),%eax
41be46:	ff 75 0c             	push   0xc(%ebp)
41be49:	57                   	push   %edi
41be4a:	ff 76 18             	push   0x18(%esi)
41be4d:	50                   	push   %eax
41be4e:	ff 15 f0 80 4a 00    	call   *0x4a80f0
41be54:	83 c4 10             	add    $0x10,%esp
41be57:	8b ce                	mov    %esi,%ecx
41be59:	ff 75 0c             	push   0xc(%ebp)
41be5c:	e8 3a 04 00 00       	call   0x41c29b
41be61:	8b c6                	mov    %esi,%eax
41be63:	5f                   	pop    %edi
41be64:	5e                   	pop    %esi
41be65:	5d                   	pop    %ebp
41be66:	c2 08 00             	ret    $0x8
41be69:	8b ff                	mov    %edi,%edi
41be6b:	55                   	push   %ebp
41be6c:	8b ec                	mov    %esp,%ebp
41be6e:	8b 55 08             	mov    0x8(%ebp),%edx
41be71:	56                   	push   %esi
41be72:	8d 72 01             	lea    0x1(%edx),%esi
41be75:	8a 02                	mov    (%edx),%al
41be77:	42                   	inc    %edx
41be78:	84 c0                	test   %al,%al
41be7a:	75 f9                	jne    0x41be75
41be7c:	2b d6                	sub    %esi,%edx
41be7e:	52                   	push   %edx
41be7f:	ff 75 08             	push   0x8(%ebp)
41be82:	e8 73 ff ff ff       	call   0x41bdfa
41be87:	5e                   	pop    %esi
41be88:	5d                   	pop    %ebp
41be89:	c2 04 00             	ret    $0x4
41be8c:	8b ff                	mov    %edi,%edi
41be8e:	55                   	push   %ebp
41be8f:	8b ec                	mov    %esp,%ebp
41be91:	56                   	push   %esi
41be92:	ff 75 08             	push   0x8(%ebp)
41be95:	8b f1                	mov    %ecx,%esi
41be97:	83 66 14 00          	andl   $0x0,0x14(%esi)
41be9b:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
41bea2:	c6 46 04 00          	movb   $0x0,0x4(%esi)
41bea6:	e8 be ff ff ff       	call   0x41be69
41beab:	8b c6                	mov    %esi,%eax
41bead:	5e                   	pop    %esi
41beae:	5d                   	pop    %ebp
41beaf:	c2 04 00             	ret    $0x4
41beb2:	6a 04                	push   $0x4
41beb4:	b8 00 14 49 00       	mov    $0x491400,%eax
41beb9:	e8 15 46 07 00       	call   0x4904d3
41bebe:	8b f1                	mov    %ecx,%esi
41bec0:	89 75 f0             	mov    %esi,-0x10(%ebp)
41bec3:	ff 15 e8 80 4a 00    	call   *0x4a80e8
41bec9:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41becd:	8d 4e 0c             	lea    0xc(%esi),%ecx
41bed0:	ff 75 08             	push   0x8(%ebp)
41bed3:	c7 06 dc 11 40 00    	movl   $0x4011dc,(%esi)
41bed9:	e8 94 03 00 00       	call   0x41c272
41bede:	8b c6                	mov    %esi,%eax
41bee0:	e8 bc 45 07 00       	call   0x4904a1
41bee5:	c2 04 00             	ret    $0x4
41bee8:	cc                   	int3
41bee9:	cc                   	int3
41beea:	cc                   	int3
41beeb:	cc                   	int3
41beec:	cc                   	int3
41beed:	cc                   	int3
41beee:	cc                   	int3
41beef:	cc                   	int3
41bef0:	8b ff                	mov    %edi,%edi
41bef2:	55                   	push   %ebp
41bef3:	8b ec                	mov    %esp,%ebp
41bef5:	56                   	push   %esi
41bef6:	8b f1                	mov    %ecx,%esi
41bef8:	c7 06 ec 11 40 00    	movl   $0x4011ec,(%esi)
41befe:	e8 8d 00 00 00       	call   0x41bf90
41bf03:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41bf07:	74 08                	je     0x41bf11
41bf09:	56                   	push   %esi
41bf0a:	ff 15 10 74 4a 00    	call   *0x4a7410
41bf10:	59                   	pop    %ecx
41bf11:	8b c6                	mov    %esi,%eax
41bf13:	5e                   	pop    %esi
41bf14:	5d                   	pop    %ebp
41bf15:	c2 04 00             	ret    $0x4
41bf18:	cc                   	int3
41bf19:	cc                   	int3
41bf1a:	cc                   	int3
41bf1b:	cc                   	int3
41bf1c:	cc                   	int3
41bf1d:	cc                   	int3
41bf1e:	cc                   	int3
41bf1f:	cc                   	int3
41bf20:	c7 01 ec 11 40 00    	movl   $0x4011ec,(%ecx)
41bf26:	e9 65 00 00 00       	jmp    0x41bf90
41bf2b:	cc                   	int3
41bf2c:	cc                   	int3
41bf2d:	cc                   	int3
41bf2e:	cc                   	int3
41bf2f:	cc                   	int3
41bf30:	8b ff                	mov    %edi,%edi
41bf32:	55                   	push   %ebp
41bf33:	8b ec                	mov    %esp,%ebp
41bf35:	51                   	push   %ecx
41bf36:	56                   	push   %esi
41bf37:	ff 75 08             	push   0x8(%ebp)
41bf3a:	8b f1                	mov    %ecx,%esi
41bf3c:	89 75 fc             	mov    %esi,-0x4(%ebp)
41bf3f:	e8 dc 03 00 00       	call   0x41c320
41bf44:	c7 06 ec 11 40 00    	movl   $0x4011ec,(%esi)
41bf4a:	8b c6                	mov    %esi,%eax
41bf4c:	5e                   	pop    %esi
41bf4d:	c9                   	leave