431c6e:	0f 84 21 02 00 00    	je     0x431e95
431c74:	8b 4b 10             	mov    0x10(%ebx),%ecx
431c77:	6a 10                	push   $0x10
431c79:	6a 00                	push   $0x0
431c7b:	ff 35 00 12 45 00    	push   0x451200
431c81:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
431c87:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
431c8e:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
431c95:	89 4e 0c             	mov    %ecx,0xc(%esi)
431c98:	ff 15 24 21 45 00    	call   *0x452124
431c9e:	8b f8                	mov    %eax,%edi
431ca0:	85 ff                	test   %edi,%edi
431ca2:	0f 84 48 01 00 00    	je     0x431df0
431ca8:	8b 4b 10             	mov    0x10(%ebx),%ecx
431cab:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
431cb0:	89 4f 0c             	mov    %ecx,0xc(%edi)
431cb3:	8b 4d 08             	mov    0x8(%ebp),%ecx
431cb6:	99                   	cltd
431cb7:	f7 f9                	idiv   %ecx
431cb9:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
431cbf:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
431cc6:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
431ccd:	89 4b 14             	mov    %ecx,0x14(%ebx)
431cd0:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
431cd6:	89 4e 04             	mov    %ecx,0x4(%esi)
431cd9:	83 f8 04             	cmp    $0x4,%eax
431cdc:	0f 86 a5 00 00 00    	jbe    0x431d87
431ce2:	8b c1                	mov    %ecx,%eax
431ce4:	83 f9 04             	cmp    $0x4,%ecx
431ce7:	77 05                	ja     0x431cee
431ce9:	b8 04 00 00 00       	mov    $0x4,%eax
431cee:	c1 e1 02             	shl    $0x2,%ecx
431cf1:	3b c8                	cmp    %eax,%ecx
431cf3:	0f 82 8e 00 00 00    	jb     0x431d87
431cf9:	51                   	push   %ecx
431cfa:	6a 00                	push   $0x0
431cfc:	ff 35 00 12 45 00    	push   0x451200
431d02:	ff 15 24 21 45 00    	call   *0x452124
431d08:	85 c0                	test   %eax,%eax
431d0a:	75 28                	jne    0x431d34
431d0c:	89 06                	mov    %eax,(%esi)
431d0e:	e8 dd bf 00 00       	call   0x43dcf0
431d13:	83 c0 10             	add    $0x10,%eax
431d16:	74 11                	je     0x431d29
431d18:	e8 d3 bf 00 00       	call   0x43dcf0
431d1d:	83 c0 14             	add    $0x14,%eax
431d20:	c7 40 04 43 0d 00 00 	movl   $0xd43,0x4(%eax)
431d27:	eb 7b                	jmp    0x431da4
431d29:	33 c0                	xor    %eax,%eax
431d2b:	c7 40 04 43 0d 00 00 	movl   $0xd43,0x4(%eax)
431d32:	eb 70                	jmp    0x431da4
431d34:	8b 4e 04             	mov    0x4(%esi),%ecx
431d37:	89 06                	mov    %eax,(%esi)
431d39:	8b 06                	mov    (%esi),%eax
431d3b:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
431d42:	89 4f 04             	mov    %ecx,0x4(%edi)
431d45:	89 07                	mov    %eax,(%edi)
431d47:	89 4f 08             	mov    %ecx,0x8(%edi)
431d4a:	8d 4b 18             	lea    0x18(%ebx),%ecx
431d4d:	ff 73 14             	push   0x14(%ebx)
431d50:	89 73 1c             	mov    %esi,0x1c(%ebx)
431d53:	89 7b 20             	mov    %edi,0x20(%ebx)
431d56:	e8 e5 30 fe ff       	call   0x414e40
431d5b:	5f                   	pop    %edi
431d5c:	5e                   	pop    %esi
431d5d:	c7 43 24 01 00 00 00 	movl   $0x1,0x24(%ebx)
431d64:	33 c0                	xor    %eax,%eax
431d66:	c7 43 28 00 00 00 00 	movl   $0x0,0x28(%ebx)
431d6d:	c7 43 2c 00 00 00 00 	movl   $0x0,0x2c(%ebx)
431d74:	c7 43 30 00 00 00 00 	movl   $0x0,0x30(%ebx)
431d7b:	c7 43 34 00 00 00 00 	movl   $0x0,0x34(%ebx)
431d82:	5b                   	pop    %ebx
431d83:	5d                   	pop    %ebp
431d84:	c2 04 00             	ret    $0x4
431d87:	e8 64 bf 00 00       	call   0x43dcf0
431d8c:	83 c0 10             	add    $0x10,%eax
431d8f:	74 0a                	je     0x431d9b
431d91:	e8 5a bf 00 00       	call   0x43dcf0
431d96:	83 c0 14             	add    $0x14,%eax
431d99:	eb 02                	jmp    0x431d9d
431d9b:	33 c0                	xor    %eax,%eax
431d9d:	c7 40 04 3c 0d 00 00 	movl   $0xd3c,0x4(%eax)
431da4:	81 3d 30 1a 45 00 0d 	cmpl   $0xfffffc0d,0x451a30
431dab:	fc ff ff
431dae:	c7 40 08 0d fc ff ff 	movl   $0xfffffc0d,0x8(%eax)
431db5:	c7 00 60 19 41 00    	movl   $0x411960,(%eax)
431dbb:	75 06                	jne    0x431dc3
431dbd:	ff 15 58 20 45 00    	call   *0x452058
431dc3:	8b 06                	mov    (%esi),%eax
431dc5:	85 c0                	test   %eax,%eax
431dc7:	0f 84 86 00 00 00    	je     0x431e53
431dcd:	50                   	push   %eax
431dce:	6a 00                	push   $0x0
431dd0:	ff 35 00 12 45 00    	push   0x451200
431dd6:	ff 15 18 21 45 00    	call   *0x452118
431ddc:	85 c0                	test   %eax,%eax
431dde:	75 06                	jne    0x431de6
431de0:	ff 15 6c 20 45 00    	call   *0x45206c
431de6:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
431dec:	33 c0                	xor    %eax,%eax
431dee:	eb 40                	jmp    0x431e30
431df0:	33 ff                	xor    %edi,%edi
431df2:	e8 f9 be 00 00       	call   0x43dcf0
431df7:	83 c0 10             	add    $0x10,%eax
431dfa:	74 0a                	je     0x431e06
431dfc:	e8 ef be 00 00       	call   0x43dcf0
431e01:	83 c0 14             	add    $0x14,%eax
431e04:	eb 02                	jmp    0x431e08
431e06:	33 c0                	xor    %eax,%eax
431e08:	81 3d 30 1a 45 00 0d 	cmpl   $0xfffffc0d,0x451a30
431e0f:	fc ff ff
431e12:	c7 00 60 19 41 00    	movl   $0x411960,(%eax)
431e18:	c7 40 04 8c 10 00 00 	movl   $0x108c,0x4(%eax)
431e1f:	c7 40 08 0d fc ff ff 	movl   $0xfffffc0d,0x8(%eax)
431e26:	75 06                	jne    0x431e2e
431e28:	ff 15 58 20 45 00    	call   *0x452058
431e2e:	8b 06                	mov    (%esi),%eax
431e30:	85 c0                	test   %eax,%eax
431e32:	74 1f                	je     0x431e53
431e34:	50                   	push   %eax
431e35:	6a 00                	push   $0x0
431e37:	ff 35 00 12 45 00    	push   0x451200
431e3d:	ff 15 18 21 45 00    	call   *0x452118
431e43:	85 c0                	test   %eax,%eax
431e45:	75 06                	jne    0x431e4d
431e47:	ff 15 6c 20 45 00    	call   *0x45206c
431e4d:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
431e53:	56                   	push   %esi
431e54:	6a 00                	push   $0x0
431e56:	ff 35 00 12 45 00    	push   0x451200
431e5c:	ff 15 18 21 45 00    	call   *0x452118
431e62:	85 c0                	test   %eax,%eax
431e64:	75 06                	jne    0x431e6c
431e66:	ff 15 6c 20 45 00    	call   *0x45206c
431e6c:	85 ff                	test   %edi,%edi
431e6e:	74 61                	je     0x431ed1
431e70:	57                   	push   %edi
431e71:	6a 00                	push   $0x0
431e73:	ff 35 00 12 45 00    	push   0x451200
431e79:	ff 15 18 21 45 00    	call   *0x452118
431e7f:	85 c0                	test   %eax,%eax
431e81:	75 4e                	jne    0x431ed1
431e83:	ff 15 6c 20 45 00    	call   *0x45206c
431e89:	5f                   	pop    %edi
431e8a:	5e                   	pop    %esi
431e8b:	b8 0d fc ff ff       	mov    $0xfffffc0d,%eax
431e90:	5b                   	pop    %ebx
431e91:	5d                   	pop    %ebp
431e92:	c2 04 00             	ret    $0x4
431e95:	e8 56 be 00 00       	call   0x43dcf0
431e9a:	83 c0 10             	add    $0x10,%eax
431e9d:	74 0a                	je     0x431ea9
431e9f:	e8 4c be 00 00       	call   0x43dcf0
431ea4:	83 c0 14             	add    $0x14,%eax
431ea7:	eb 02                	jmp    0x431eab
431ea9:	33 c0                	xor    %eax,%eax
431eab:	81 3d 30 1a 45 00 0d 	cmpl   $0xfffffc0d,0x451a30
431eb2:	fc ff ff
431eb5:	c7 00 60 19 41 00    	movl   $0x411960,(%eax)
431ebb:	c7 40 04 8a 10 00 00 	movl   $0x108a,0x4(%eax)
431ec2:	c7 40 08 0d fc ff ff 	movl   $0xfffffc0d,0x8(%eax)
431ec9:	75 06                	jne    0x431ed1
431ecb:	ff 15 58 20 45 00    	call   *0x452058
431ed1:	5f                   	pop    %edi
431ed2:	5e                   	pop    %esi
431ed3:	b8 0d fc ff ff       	mov    $0xfffffc0d,%eax
431ed8:	5b                   	pop    %ebx
431ed9:	5d                   	pop    %ebp
431eda:	c2 04 00             	ret    $0x4
431edd:	cc                   	int3
431ede:	cc                   	int3
431edf:	cc                   	int3
431ee0:	8b 41 1c             	mov    0x1c(%ecx),%eax
431ee3:	8b 40 08             	mov    0x8(%eax),%eax
431ee6:	85 c0                	test   %eax,%eax
431ee8:	8b 51 20             	mov    0x20(%ecx),%edx
431eeb:	8b 42 08             	mov    0x8(%edx),%eax
431eee:	75 08                	jne    0x431ef8
431ef0:	3b 42 04             	cmp    0x4(%edx),%eax
431ef3:	75 16                	jne    0x431f0b
431ef5:	33 c0                	xor    %eax,%eax
431ef7:	c3                   	ret
431ef8:	3b 42 04             	cmp    0x4(%edx),%eax
431efb:	75 08                	jne    0x431f05
431efd:	8b 41 1c             	mov    0x1c(%ecx),%eax
431f00:	8b 00                	mov    (%eax),%eax
431f02:	8b 00                	mov    (%eax),%eax
431f04:	c3                   	ret
431f05:	83 79 24 00          	cmpl   $0x0,0x24(%ecx)
431f09:	75 f2                	jne    0x431efd
431f0b:	8b 41 20             	mov    0x20(%ecx),%eax
431f0e:	8b 48 04             	mov    0x4(%eax),%ecx
431f11:	8b 00                	mov    (%eax),%eax
431f13:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
431f17:	c3                   	ret
431f18:	cc                   	int3
431f19:	cc                   	int3
431f1a:	cc                   	int3
431f1b:	cc                   	int3
431f1c:	cc                   	int3
431f1d:	cc                   	int3
431f1e:	cc                   	int3
431f1f:	cc                   	int3
431f20:	8b ff                	mov    %edi,%edi
431f22:	55                   	push   %ebp
431f23:	8b ec                	mov    %esp,%ebp
431f25:	83 ec 14             	sub    $0x14,%esp
431f28:	53                   	push   %ebx
431f29:	56                   	push   %esi
431f2a:	8b 75 08             	mov    0x8(%ebp),%esi
431f2d:	57                   	push   %edi
431f2e:	8b f9                	mov    %ecx,%edi
431f30:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
431f36:	8b 50 20             	mov    0x20(%eax),%edx
431f39:	2b 57 28             	sub    0x28(%edi),%edx
431f3c:	8b 48 24             	mov    0x24(%eax),%ecx
431f3f:	8b c2                	mov    %edx,%eax
431f41:	1b 4f 2c             	sbb    0x2c(%edi),%ecx
431f44:	0b c1                	or     %ecx,%eax
431f46:	75 0c                	jne    0x431f54
431f48:	8b 56 70             	mov    0x70(%esi),%edx
431f4b:	2b 57 30             	sub    0x30(%edi),%edx
431f4e:	8b 4e 74             	mov    0x74(%esi),%ecx
431f51:	1b 4f 34             	sbb    0x34(%edi),%ecx
431f54:	85 c9                	test   %ecx,%ecx
431f56:	7c 0d                	jl     0x431f65
431f58:	7f 04                	jg     0x431f5e
431f5a:	85 d2                	test   %edx,%edx
431f5c:	74 07                	je     0x431f65
431f5e:	bb 01 00 00 00       	mov    $0x1,%ebx
431f63:	eb 02                	jmp    0x431f67
431f65:	33 db                	xor    %ebx,%ebx
431f67:	8b 47 1c             	mov    0x1c(%edi),%eax
431f6a:	8b 40 08             	mov    0x8(%eax),%eax
431f6d:	8b 4f 20             	mov    0x20(%edi),%ecx
431f70:	8b 51 04             	mov    0x4(%ecx),%edx
431f73:	03 d0                	add    %eax,%edx
431f75:	8b 41 08             	mov    0x8(%ecx),%eax
431f78:	2b d0                	sub    %eax,%edx
431f7a:	8d 42 01             	lea    0x1(%edx),%eax
431f7d:	3b 47 14             	cmp    0x14(%edi),%eax
431f80:	7e 16                	jle    0x431f98
431f82:	68 3e 11 00 00       	push   $0x113e
431f87:	68 60 19 41 00       	push   $0x411960
431f8c:	68 30 24 41 00       	push   $0x412430
431f91:	6a 00                	push   $0x0
431f93:	e8 78 66 ff ff       	call   0x428610
431f98:	8b 47 24             	mov    0x24(%edi),%eax
431f9b:	85 db                	test   %ebx,%ebx
431f9d:	0f 84 e3 00 00 00    	je     0x432086
431fa3:	85 c0                	test   %eax,%eax
431fa5:	0f 85 e3 00 00 00    	jne    0x43208e
431fab:	8b 7f 20             	mov    0x20(%edi),%edi
431fae:	89 7d f8             	mov    %edi,-0x8(%ebp)
431fb1:	8b 4f 08             	mov    0x8(%edi),%ecx
431fb4:	8b 5f 04             	mov    0x4(%edi),%ebx
431fb7:	49                   	dec    %ecx
431fb8:	89 4d fc             	mov    %ecx,-0x4(%ebp)
431fbb:	89 4f 08             	mov    %ecx,0x8(%edi)
431fbe:	85 db                	test   %ebx,%ebx
431fc0:	0f 8e ab 01 00 00    	jle    0x432171
431fc6:	eb 08                	jmp    0x431fd0
431fc8:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
431fcf:	90                   	nop
431fd0:	8d 43 ff             	lea    -0x1(%ebx),%eax
431fd3:	3b c8                	cmp    %eax,%ecx
431fd5:	0f 8d 96 01 00 00    	jge    0x432171
431fdb:	8b c3                	mov    %ebx,%eax
431fdd:	2b c1                	sub    %ecx,%eax
431fdf:	83 e8 02             	sub    $0x2,%eax
431fe2:	99                   	cltd
431fe3:	2b c2                	sub    %edx,%eax
431fe5:	d1 f8                	sar    $1,%eax
431fe7:	2b d8                	sub    %eax,%ebx
431fe9:	8b 07                	mov    (%edi),%eax
431feb:	8b 44 98 fc          	mov    -0x4(%eax,%ebx,4),%eax
431fef:	89 45 ec             	mov    %eax,-0x14(%ebp)
431ff2:	8b 80 80 00 00 00    	mov    0x80(%eax),%eax
431ff8:	8b 48 20             	mov    0x20(%eax),%ecx
431ffb:	8b 50 24             	mov    0x24(%eax),%edx
431ffe:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
432004:	8b 58 20             	mov    0x20(%eax),%ebx
432007:	8b 78 24             	mov    0x24(%eax),%edi
43200a:	2b d9                	sub    %ecx,%ebx
43200c:	8b c3                	mov    %ebx,%eax
43200e:	1b fa                	sbb    %edx,%edi
432010:	0b c7                	or     %edi,%eax
432012:	75 0f                	jne    0x432023
432014:	8b 45 ec             	mov    -0x14(%ebp),%eax
432017:	8b 5e 70             	mov    0x70(%esi),%ebx
43201a:	8b 7e 74             	mov    0x74(%esi),%edi
43201d:	2b 58 70             	sub    0x70(%eax),%ebx
432020:	1b 78 74             	sbb    0x74(%eax),%edi
432023:	85 ff                	test   %edi,%edi
432025:	0f 8f 40 01 00 00    	jg     0x43216b
43202b:	7c 08                	jl     0x432035
43202d:	85 db                	test   %ebx,%ebx
43202f:	0f 83 36 01 00 00    	jae    0x43216b
432035:	8b 5d f8             	mov    -0x8(%ebp),%ebx
432038:	8b 7d fc             	mov    -0x4(%ebp),%edi
43203b:	8b 4b 04             	mov    0x4(%ebx),%ecx
43203e:	8b c1                	mov    %ecx,%eax
432040:	2b c7                	sub    %edi,%eax
432042:	83 e8 02             	sub    $0x2,%eax
432045:	99                   	cltd
432046:	2b c2                	sub    %edx,%eax
432048:	d1 f8                	sar    $1,%eax
43204a:	2b c8                	sub    %eax,%ecx
43204c:	8b 03                	mov    (%ebx),%eax
43204e:	8b 4c 88 fc          	mov    -0x4(%eax,%ecx,4),%ecx
432052:	8b 03                	mov    (%ebx),%eax
432054:	89 0c b8             	mov    %ecx,(%eax,%edi,4)
432057:	8b 03                	mov    (%ebx),%eax
432059:	8b 04 b8             	mov    (%eax,%edi,4),%eax
43205c:	89 78 20             	mov    %edi,0x20(%eax)
43205f:	8b 5b 04             	mov    0x4(%ebx),%ebx
432062:	8b c3                	mov    %ebx,%eax
432064:	2b c7                	sub    %edi,%eax
432066:	8b cb                	mov    %ebx,%ecx
432068:	8b 7d f8             	mov    -0x8(%ebp),%edi
43206b:	83 e8 02             	sub    $0x2,%eax
43206e:	99                   	cltd
43206f:	2b c2                	sub    %edx,%eax
432071:	d1 f8                	sar    $1,%eax
432073:	2b c8                	sub    %eax,%ecx
432075:	49                   	dec    %ecx
432076:	89 4d fc             	mov    %ecx,-0x4(%ebp)
432079:	85 db                	test   %ebx,%ebx
43207b:	0f 8f 4f ff ff ff    	jg     0x431fd0
432081:	e9 eb 00 00 00       	jmp    0x432171
432086:	85 c0                	test   %eax,%eax
432088:	0f 85 1d ff ff ff    	jne    0x431fab
43208e:	8b 5f 1c             	mov    0x1c(%edi),%ebx
432091:	89 5d f8             	mov    %ebx,-0x8(%ebp)
432094:	8b 4b 08             	mov    0x8(%ebx),%ecx
432097:	8b 43 08             	mov    0x8(%ebx),%eax
43209a:	40                   	inc    %eax
43209b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
43209e:	89 43 08             	mov    %eax,0x8(%ebx)
4320a1:	85 c9                	test   %ecx,%ecx
4320a3:	0f 8e ab 00 00 00    	jle    0x432154
4320a9:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
4320b0:	8d 41 ff             	lea    -0x1(%ecx),%eax
4320b3:	8b c0                	mov    %eax,%eax
4320b5:	85 c0                	test   %eax,%eax
4320b7:	79 03                	jns    0x4320bc
4320b9:	83 c0 01             	add    $0x1,%eax
4320bc:	d1 f8                	sar    $1,%eax
4320be:	8d 0c 85 00 00 00 00 	lea    0x0(,%eax,4),%ecx
4320c5:	89 45 ec             	mov    %eax,-0x14(%ebp)