4336ea:	ff 43 38             	incl   0x38(%ebx)
4336ed:	83 e0 f4             	and    $0xfffffff4,%eax
4336f0:	83 c8 04             	or     $0x4,%eax
4336f3:	50                   	push   %eax
4336f4:	ff 74 24 24          	push   0x24(%esp)
4336f8:	ff 74 24 2c          	push   0x2c(%esp)
4336fc:	ff 74 24 20          	push   0x20(%esp)
433700:	57                   	push   %edi
433701:	e8 9a f8 ff ff       	call   0x432fa0
433706:	8b 4b 10             	mov    0x10(%ebx),%ecx
433709:	6a 01                	push   $0x1
43370b:	e8 30 17 fe ff       	call   0x414e40
433710:	5f                   	pop    %edi
433711:	5e                   	pop    %esi
433712:	5b                   	pop    %ebx
433713:	8b e5                	mov    %ebp,%esp
433715:	5d                   	pop    %ebp
433716:	c2 04 00             	ret    $0x4
433719:	cc                   	int3
43371a:	cc                   	int3
43371b:	cc                   	int3
43371c:	cc                   	int3
43371d:	cc                   	int3
43371e:	cc                   	int3
43371f:	cc                   	int3
433720:	8b ff                	mov    %edi,%edi
433722:	55                   	push   %ebp
433723:	8b ec                	mov    %esp,%ebp
433725:	83 ec 74             	sub    $0x74,%esp
433728:	53                   	push   %ebx
433729:	56                   	push   %esi
43372a:	57                   	push   %edi
43372b:	8b f9                	mov    %ecx,%edi
43372d:	e8 5e 9e ff ff       	call   0x42d590
433732:	8b 4f 10             	mov    0x10(%edi),%ecx
433735:	33 f6                	xor    %esi,%esi
433737:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43373a:	89 55 e8             	mov    %edx,-0x18(%ebp)
43373d:	89 75 fc             	mov    %esi,-0x4(%ebp)
433740:	e8 4b 10 ff ff       	call   0x424790
433745:	85 c0                	test   %eax,%eax
433747:	75 1f                	jne    0x433768
433749:	8b 77 10             	mov    0x10(%edi),%esi
43374c:	8b ce                	mov    %esi,%ecx
43374e:	e8 3d 10 ff ff       	call   0x424790
433753:	85 c0                	test   %eax,%eax
433755:	75 09                	jne    0x433760
433757:	6a ff                	push   $0xffffffff
433759:	8b ce                	mov    %esi,%ecx
43375b:	e8 80 13 ff ff       	call   0x424ae0
433760:	be 10 00 00 00       	mov    $0x10,%esi
433765:	89 75 fc             	mov    %esi,-0x4(%ebp)
433768:	83 7f 38 00          	cmpl   $0x0,0x38(%edi)
43376c:	0f 85 9f 04 00 00    	jne    0x433c11
433772:	83 7f 3c 00          	cmpl   $0x0,0x3c(%edi)
433776:	0f 85 95 04 00 00    	jne    0x433c11
43377c:	8b 47 1c             	mov    0x1c(%edi),%eax
43377f:	8b 5d 0c             	mov    0xc(%ebp),%ebx
433782:	8b 40 08             	mov    0x8(%eax),%eax
433785:	85 c0                	test   %eax,%eax
433787:	8b 4f 20             	mov    0x20(%edi),%ecx
43378a:	8b 41 08             	mov    0x8(%ecx),%eax
43378d:	0f 85 c1 00 00 00    	jne    0x433854
433793:	3b 41 04             	cmp    0x4(%ecx),%eax
433796:	74 32                	je     0x4337ca
433798:	8b 47 20             	mov    0x20(%edi),%eax
43379b:	8b 48 04             	mov    0x4(%eax),%ecx
43379e:	8b 00                	mov    (%eax),%eax
4337a0:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
4337a4:	85 c0                	test   %eax,%eax
4337a6:	74 22                	je     0x4337ca
4337a8:	8d 4f 40             	lea    0x40(%edi),%ecx
4337ab:	e8 e0 e3 ff ff       	call   0x431b90
4337b0:	85 c0                	test   %eax,%eax
4337b2:	75 16                	jne    0x4337ca
4337b4:	8b 4d 08             	mov    0x8(%ebp),%ecx
4337b7:	e8 84 14 00 00       	call   0x434c40
4337bc:	85 c0                	test   %eax,%eax
4337be:	7f 0a                	jg     0x4337ca
4337c0:	83 7f 58 00          	cmpl   $0x0,0x58(%edi)
4337c4:	0f 8e 81 02 00 00    	jle    0x433a4b
4337ca:	51                   	push   %ecx
4337cb:	8d 4d a0             	lea    -0x60(%ebp),%ecx
4337ce:	51                   	push   %ecx
4337cf:	8d 4f 40             	lea    0x40(%edi),%ecx
4337d2:	e8 39 df ff ff       	call   0x431710
4337d7:	8b 08                	mov    (%eax),%ecx
4337d9:	23 48 04             	and    0x4(%eax),%ecx
4337dc:	83 f9 ff             	cmp    $0xffffffff,%ecx
4337df:	75 3c                	jne    0x43381d
4337e1:	8b 48 08             	mov    0x8(%eax),%ecx
4337e4:	23 48 0c             	and    0xc(%eax),%ecx
4337e7:	83 f9 ff             	cmp    $0xffffffff,%ecx
4337ea:	75 31                	jne    0x43381d
4337ec:	51                   	push   %ecx
4337ed:	8d 4d 90             	lea    -0x70(%ebp),%ecx
4337f0:	51                   	push   %ecx
4337f1:	8d 4f 58             	lea    0x58(%edi),%ecx
4337f4:	e8 17 df ff ff       	call   0x431710
4337f9:	8b 08                	mov    (%eax),%ecx
4337fb:	23 48 04             	and    0x4(%eax),%ecx
4337fe:	83 f9 ff             	cmp    $0xffffffff,%ecx
433801:	75 1a                	jne    0x43381d
433803:	8b 50 08             	mov    0x8(%eax),%edx
433806:	23 50 0c             	and    0xc(%eax),%edx
433809:	3b d1                	cmp    %ecx,%edx
43380b:	75 10                	jne    0x43381d
43380d:	8d 4f 40             	lea    0x40(%edi),%ecx
433810:	e8 6b df ff ff       	call   0x431780
433815:	8d 4f 58             	lea    0x58(%edi),%ecx
433818:	e8 63 df ff ff       	call   0x431780
43381d:	51                   	push   %ecx
43381e:	8d 45 b0             	lea    -0x50(%ebp),%eax
433821:	50                   	push   %eax
433822:	8d 4f 40             	lea    0x40(%edi),%ecx
433825:	e8 e6 de ff ff       	call   0x431710
43382a:	51                   	push   %ecx
43382b:	8d 4d c0             	lea    -0x40(%ebp),%ecx
43382e:	51                   	push   %ecx
43382f:	8d 4f 58             	lea    0x58(%edi),%ecx
433832:	e8 d9 de ff ff       	call   0x431710
433837:	8b 45 b0             	mov    -0x50(%ebp),%eax
43383a:	23 45 b4             	and    -0x4c(%ebp),%eax
43383d:	83 f8 ff             	cmp    $0xffffffff,%eax
433840:	75 39                	jne    0x43387b
433842:	8b 45 b8             	mov    -0x48(%ebp),%eax
433845:	23 45 bc             	and    -0x44(%ebp),%eax
433848:	83 f8 ff             	cmp    $0xffffffff,%eax
43384b:	75 2e                	jne    0x43387b
43384d:	b9 01 00 00 00       	mov    $0x1,%ecx
433852:	eb 29                	jmp    0x43387d
433854:	3b 41 04             	cmp    0x4(%ecx),%eax
433857:	75 0c                	jne    0x433865
433859:	8b 47 1c             	mov    0x1c(%edi),%eax
43385c:	8b 00                	mov    (%eax),%eax
43385e:	8b 00                	mov    (%eax),%eax
433860:	e9 3f ff ff ff       	jmp    0x4337a4
433865:	83 7f 24 00          	cmpl   $0x0,0x24(%edi)
433869:	0f 84 29 ff ff ff    	je     0x433798
43386f:	8b 47 1c             	mov    0x1c(%edi),%eax
433872:	8b 00                	mov    (%eax),%eax
433874:	8b 00                	mov    (%eax),%eax
433876:	e9 29 ff ff ff       	jmp    0x4337a4
43387b:	33 c9                	xor    %ecx,%ecx
43387d:	8b 45 c0             	mov    -0x40(%ebp),%eax
433880:	23 45 c4             	and    -0x3c(%ebp),%eax
433883:	83 f8 ff             	cmp    $0xffffffff,%eax
433886:	75 12                	jne    0x43389a
433888:	8b 45 c8             	mov    -0x38(%ebp),%eax
43388b:	23 45 cc             	and    -0x34(%ebp),%eax
43388e:	83 f8 ff             	cmp    $0xffffffff,%eax
433891:	75 07                	jne    0x43389a
433893:	b8 01 00 00 00       	mov    $0x1,%eax
433898:	eb 02                	jmp    0x43389c
43389a:	33 c0                	xor    %eax,%eax
43389c:	85 c9                	test   %ecx,%ecx
43389e:	75 2a                	jne    0x4338ca
4338a0:	85 c0                	test   %eax,%eax
4338a2:	75 1d                	jne    0x4338c1
4338a4:	8d 45 c0             	lea    -0x40(%ebp),%eax
4338a7:	50                   	push   %eax
4338a8:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4338ab:	e8 30 4a 00 00       	call   0x4382e0
4338b0:	84 c0                	test   %al,%al
4338b2:	75 0d                	jne    0x4338c1
4338b4:	8d 45 c0             	lea    -0x40(%ebp),%eax
4338b7:	50                   	push   %eax
4338b8:	e8 83 4b 00 00       	call   0x438440
4338bd:	84 c0                	test   %al,%al
4338bf:	74 09                	je     0x4338ca
4338c1:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
4338c8:	eb 07                	jmp    0x4338d1
4338ca:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
4338d1:	8b 47 48             	mov    0x48(%edi),%eax
4338d4:	0b 47 4c             	or     0x4c(%edi),%eax
4338d7:	74 1f                	je     0x4338f8
4338d9:	e8 b2 9c ff ff       	call   0x42d590
4338de:	2b 47 48             	sub    0x48(%edi),%eax
4338e1:	1b 57 4c             	sbb    0x4c(%edi),%edx
4338e4:	52                   	push   %edx
4338e5:	50                   	push   %eax
4338e6:	e8 35 4e 00 00       	call   0x438720
4338eb:	85 d2                	test   %edx,%edx
4338ed:	77 1c                	ja     0x43390b
4338ef:	72 07                	jb     0x4338f8
4338f1:	3d b8 0b 00 00       	cmp    $0xbb8,%eax
4338f6:	77 13                	ja     0x43390b
4338f8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4338fb:	e8 40 13 00 00       	call   0x434c40
433900:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
433907:	85 c0                	test   %eax,%eax
433909:	7e 07                	jle    0x433912
43390b:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
433912:	8b 47 48             	mov    0x48(%edi),%eax
433915:	0b 47 4c             	or     0x4c(%edi),%eax
433918:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
43391f:	74 1f                	je     0x433940
433921:	e8 6a 9c ff ff       	call   0x42d590
433926:	2b 47 48             	sub    0x48(%edi),%eax
433929:	1b 57 4c             	sbb    0x4c(%edi),%edx
43392c:	52                   	push   %edx
43392d:	50                   	push   %eax
43392e:	e8 ed 4d 00 00       	call   0x438720
433933:	85 d2                	test   %edx,%edx
433935:	77 3d                	ja     0x433974
433937:	72 07                	jb     0x433940
433939:	3d b8 0b 00 00       	cmp    $0xbb8,%eax
43393e:	77 34                	ja     0x433974
433940:	8b 4d 08             	mov    0x8(%ebp),%ecx
433943:	e8 f8 12 00 00       	call   0x434c40
433948:	85 c0                	test   %eax,%eax
43394a:	7f 28                	jg     0x433974
43394c:	83 7f 58 00          	cmpl   $0x0,0x58(%edi)
433950:	7f 22                	jg     0x433974
433952:	8b cf                	mov    %edi,%ecx
433954:	e8 87 e5 ff ff       	call   0x431ee0
433959:	85 c0                	test   %eax,%eax
43395b:	0f 85 ea 00 00 00    	jne    0x433a4b
433961:	8b 4f 10             	mov    0x10(%edi),%ecx
433964:	6a 01                	push   $0x1
433966:	e8 d5 14 fe ff       	call   0x414e40
43396b:	5f                   	pop    %edi
43396c:	5e                   	pop    %esi
43396d:	5b                   	pop    %ebx
43396e:	8b e5                	mov    %ebp,%esp
433970:	5d                   	pop    %ebp
433971:	c2 08 00             	ret    $0x8
433974:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
433978:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
43397f:	74 35                	je     0x4339b6
433981:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
433985:	74 2f                	je     0x4339b6
433987:	8d 45 f0             	lea    -0x10(%ebp),%eax
43398a:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
433991:	50                   	push   %eax
433992:	8d 45 ec             	lea    -0x14(%ebp),%eax
433995:	81 ce 00 01 00 00    	or     $0x100,%esi
43399b:	50                   	push   %eax
43399c:	53                   	push   %ebx
43399d:	8d 4f 40             	lea    0x40(%edi),%ecx
4339a0:	89 75 fc             	mov    %esi,-0x4(%ebp)
4339a3:	e8 88 de ff ff       	call   0x431830
4339a8:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
4339ac:	74 08                	je     0x4339b6
4339ae:	8d 4f 58             	lea    0x58(%edi),%ecx
4339b1:	e8 ca dd ff ff       	call   0x431780
4339b6:	8b 03                	mov    (%ebx),%eax
4339b8:	8b c8                	mov    %eax,%ecx
4339ba:	83 e9 00             	sub    $0x0,%ecx
4339bd:	74 20                	je     0x4339df
4339bf:	83 e9 01             	sub    $0x1,%ecx
4339c2:	74 12                	je     0x4339d6
4339c4:	83 e9 01             	sub    $0x1,%ecx
4339c7:	74 04                	je     0x4339cd
4339c9:	32 c9                	xor    %cl,%cl
4339cb:	eb 14                	jmp    0x4339e1
4339cd:	83 7b 10 00          	cmpl   $0x0,0x10(%ebx)
4339d1:	0f 94 c1             	sete   %cl
4339d4:	eb 0b                	jmp    0x4339e1
4339d6:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
4339da:	0f 94 c1             	sete   %cl
4339dd:	eb 02                	jmp    0x4339e1
4339df:	b1 01                	mov    $0x1,%cl
4339e1:	84 c9                	test   %cl,%cl
4339e3:	74 1a                	je     0x4339ff
4339e5:	8d 45 dc             	lea    -0x24(%ebp),%eax
4339e8:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
4339ef:	50                   	push   %eax
4339f0:	8d 45 ec             	lea    -0x14(%ebp),%eax
4339f3:	50                   	push   %eax
4339f4:	53                   	push   %ebx
4339f5:	8d 4f 58             	lea    0x58(%edi),%ecx
4339f8:	e8 33 de ff ff       	call   0x431830
4339fd:	8b 03                	mov    (%ebx),%eax
4339ff:	83 e8 00             	sub    $0x0,%eax
433a02:	74 38                	je     0x433a3c
433a04:	83 e8 01             	sub    $0x1,%eax
433a07:	74 0a                	je     0x433a13
433a09:	83 e8 01             	sub    $0x1,%eax
433a0c:	75 10                	jne    0x433a1e
433a0e:	39 43 10             	cmp    %eax,0x10(%ebx)
433a11:	eb 04                	jmp    0x433a17
433a13:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
433a17:	0f 94 c0             	sete   %al
433a1a:	84 c0                	test   %al,%al
433a1c:	75 1e                	jne    0x433a3c
433a1e:	8b cb                	mov    %ebx,%ecx
433a20:	e8 db f1 ff ff       	call   0x432c00
433a25:	8b 45 ec             	mov    -0x14(%ebp),%eax
433a28:	83 ce 08             	or     $0x8,%esi
433a2b:	50                   	push   %eax
433a2c:	6a 01                	push   $0x1
433a2e:	56                   	push   %esi
433a2f:	ff 75 e8             	push   -0x18(%ebp)
433a32:	ff 75 e4             	push   -0x1c(%ebp)
433a35:	51                   	push   %ecx
433a36:	50                   	push   %eax
433a37:	e9 16 02 00 00       	jmp    0x433c52
433a3c:	8b cf                	mov    %edi,%ecx
433a3e:	e8 9d e4 ff ff       	call   0x431ee0
433a43:	85 c0                	test   %eax,%eax
433a45:	0f 84 79 03 00 00    	je     0x433dc4
433a4b:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
433a52:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
433a59:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
433a60:	8b 47 1c             	mov    0x1c(%edi),%eax
433a63:	8b 40 08             	mov    0x8(%eax),%eax
433a66:	85 c0                	test   %eax,%eax
433a68:	8b 4f 20             	mov    0x20(%edi),%ecx
433a6b:	8b 41 08             	mov    0x8(%ecx),%eax
433a6e:	75 6f                	jne    0x433adf
433a70:	3b 41 04             	cmp    0x4(%ecx),%eax
433a73:	0f 84 e0 01 00 00    	je     0x433c59
433a79:	8b 47 20             	mov    0x20(%edi),%eax
433a7c:	8b 48 04             	mov    0x4(%eax),%ecx
433a7f:	8b 00                	mov    (%eax),%eax
433a81:	8b 74 88 fc          	mov    -0x4(%eax,%ecx,4),%esi
433a85:	85 f6                	test   %esi,%esi
433a87:	0f 84 cc 01 00 00    	je     0x433c59
433a8d:	8b cb                	mov    %ebx,%ecx
433a8f:	e8 3c f1 ff ff       	call   0x432bd0
433a94:	84 c0                	test   %al,%al
433a96:	74 03                	je     0x433a9b
433a98:	89 75 e0             	mov    %esi,-0x20(%ebp)
433a9b:	56                   	push   %esi
433a9c:	8b cb                	mov    %ebx,%ecx
433a9e:	e8 cd f1 ff ff       	call   0x432c70
433aa3:	84 c0                	test   %al,%al
433aa5:	0f 84 ae 01 00 00    	je     0x433c59
433aab:	8b 47 1c             	mov    0x1c(%edi),%eax
433aae:	33 d2                	xor    %edx,%edx
433ab0:	8b 40 08             	mov    0x8(%eax),%eax
433ab3:	8b 4e 20             	mov    0x20(%esi),%ecx
433ab6:	3b c8                	cmp    %eax,%ecx
433ab8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
433abb:	0f 9c c2             	setl   %dl
433abe:	89 55 d4             	mov    %edx,-0x2c(%ebp)
433ac1:	7d 72                	jge    0x433b35
433ac3:	8b 57 1c             	mov    0x1c(%edi),%edx
433ac6:	8b 42 08             	mov    0x8(%edx),%eax
433ac9:	48                   	dec    %eax
433aca:	3b c8                	cmp    %eax,%ecx
433acc:	75 2e                	jne    0x433afc
433ace:	8b 42 08             	mov    0x8(%edx),%eax
433ad1:	48                   	dec    %eax
433ad2:	89 42 08             	mov    %eax,0x8(%edx)
433ad5:	b8 01 00 00 00       	mov    $0x1,%eax
433ada:	e9 9d 00 00 00       	jmp    0x433b7c
433adf:	3b 41 04             	cmp    0x4(%ecx),%eax
433ae2:	75 09                	jne    0x433aed